Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Е-Контракт #41

Open
wants to merge 37 commits into
base: master
Choose a base branch
from

Conversation

VDigitall
Copy link
Member

Концепція підписання договору у системі ProZorro

Workflow

  1. Реєстрація чернетки contractProforma з ідентифікатором шаблону для використання
  2. trBot витягує шаблон, схему і рекомендовану форму з реєстру шаблонів Е-Контрактинг і завантажує як contractTemplate, contractSchema i contractForm документи, зв'язуючи з чернеткою contractProforma
  3. Майданчики Замовника завантажують інформацію про замовника документом з documentType: contractData зв'язуючи його з документом contractProforma
  4. rBot генерує contractProforma у форматі PDF на основі contractTemplate та даних з contractData, та завантажує як нову версію документа contractProforma
  5. Майданчики Постачальників витягують contractSchema та contractForm, валідують і отримують дані, та рендерять для відображення постачальникам
  6. Майданчики Постачальників завантажують contractData(яка містить інформацію про постачальника) зв’язану з чернеткою contractProforma при подачі пропозиції
  7. Також Майданчики Замовника можуть завантажити contractData (яка містить виправлену інформацію про замовника та/чи постачальника) документ до award'y, коли це дозволено процесом.
  8. rBot генерує фінальний документ контракту contract з повним набором даних contractData заповнених в шаблоні contractTemplate

Зміни

Додано нові типи документів

"contractTemplate",
"contractSchema",
"contractForm",
"contractData",
"contractProforma",
"contract",

Додано полe templateId, яке можна заповнювати лише для документа contractProforma і новий тип documentOf для пов'язування документів

class Document(BaseDocument):
format = StringType(regex="^[-\w]+/[-\.\w\+]+$")
url = StringType()
documentOf = StringType(required=True, choices=[
"tender", "item", "lot", "document"], default="tender")

Додано групи та дозволи для ботів завантажувати документи до тендеру та контракту

[renderer_bots]
rendererBot = rBot
[template_registry_bots]
template_registryBot = trBot

(Allow, "g:template_registry_bots", "upload_tender_documents"),
(Allow, "g:renderer_bots", "upload_tender_documents"),
(Allow, "g:renderer_bots", "upload_contract_documents"),

Додано/оновлено валідації для взаємодії з контрактами

  • validate_patch_document_contract_proforma унеможливлює безпосереднє оновлення документа contractProforma
  • validate_contract_supplier_role_for_contract_document_uploading перевіряє тип і формат документів, які завантажує постачальник
  • validate_relatedItem_for_contract_document_uploading перевіряє відповідність relatedItem до одного з документів

Перевизначено тип документа для Контракта в процедурі CFASelectionUA

Anna Manko and others added 30 commits October 30, 2020 09:04
Allow only one document with documentType (contractProforma,
contractForm, contractScheme) per tender or lot.
* Add tests for validation, allow only one document per documentType
* Add tests for lots
* Allow with role bots upload contract documents
* Validate relatedItem for documents uploaded by bots with document
types `contract` and `contractData`
* Field `templateId` is allowed only for document with documentType
`contractProforma`
* Field `url` is not required for document with documentType
`contractProforma`
* Field `format` is not required for document with documentType
`contracProforma`
* Deny patch document with documentType `contractProforma`, allowed
append new version of document instead.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants