Задача: відображення фактичної дати завершення періоду при збереженні початкової дати дедлайну, відображення інформації про порушення термінів дедлайну у явному вигляді
Один з варіантів вирішення - введення структури milestones https://standard.open-contracting.org/latest/en/schema/reference/#milestone
Плюси - частково відповідає стандарту. Мінуси - потенційно надлишкова структура даних.
"awards": [ { "status": "pending", "verificationPeriod": { "startDate": "2019-11-01T14:56:43.138787+02:00", "endDate": "2019-11-15T18:00:00.138787+02:00" }, "signingPeriod": { "startDate": "2019-11-01T14:56:43.138787+02:00", "endDate": "2019-11-22T18:00:00.138787+02:00" }, "milestones": [ { "status": "met", "dateModified": "2019-11-01T15:56:43.138787+02:00", "id": "b6a88803c02f4ce989fae7e0839cc789", "dateMet": "2019-11-01T15:56:43.138787+02:00", "type": "verification", "dueDate": "2019-11-15T18:00:00+02:00" }, { "status": "processing", "dateModified": "2019-04-23T13:44:17.119411+03:00", "id": "8ed161764c1f4d039c348998ba4f6bb6", "type": "signing", "dueDate": "2019-11-22T18:00:00+02:00" } ], "suppliers": [ ... "date": "2019-11-01T14:56:43.138787+02:00", "id": "b716b301dfb740fea8d34397242dcca1" }, |
type:
status:
Розширити структуру періодів, додати інформацію про статус та фактичну дату завершення періоду
В поточній логіці роботи ЦБД endDate перезаписується при завершенні періоду (наприклад, при підтвердженні протоколу та переході до роботи з договором verificationPeriod.endDate змінюється на дату зміни статусу)
"verificationPeriod": { "startDate": "2017-05-18T10:56:31.593993+03:00", "endDate": "2017-06-08T20:00:00+03:00" "status": "dateMet": } |