| field name | type | name | comment |
|---|
| periodName | string | x-legalNameUa: Назва періода x-legalNameEn: Period name | enum: - auctionPeriod
- tenderPeriod
|
| startDate | string($date-time)
| x-legalNameUa: Дата та час початку x-legalNameEn: Start date |
|
| endDate | string($date-time)
| x-legalNameUa: Дата та час завершення x-legalNameEn: End date |
|
| duration | base.Duration | x-legalNameUa: Тривалість періоду x-legalNameEn: Period duration | | name | type | comment |
|---|
| unit | string | Enum:- b_day
- c_day
- hour
- minute
- second
| | quantity | integer($int64)
| minimum: 1
|
|
При публікації "ланцюжка", ЦБД очікує, що в extraSpecs обовʼязково буде передано обʼєкт для кожної процедури.
Тобто, всього три обʼєкта в extraSpecs, бо процедур в ланцюжку три.
Валідації
На рівні ЦБД необхідно встановити валідації для pipelineMethod: sanctionedAuctionChain:
Для першої процедури приймається значення: extraSpecs.[0].periods.periodName=="auctionPeriod" extraSpecs.[0].periods.startDate == if value.amount < 250 000 000 (двісті п'ятдесят мільйонів) then ЦБД має приймати тільки значення для extraSpecs.[0].periods[0].startDate в діапазоні currentDate+25 c_day <= startDate <= currentDate+35 c_day ЦБД повинна відхилити запит, якщо знчення extraSpecs.[0].periods[0].startDate, яке передають в запиті на публікацію JSC знаходиться поза цим діапазоном. else if value.amount >= 250 000 000 (двісті п'ятдесят мільйонів) then ЦБД має приймати тільки значення для auctionPeriod.startDate в діапазоні currentDate+60 c_day <= startDate <= currentDate+90 c_day ЦБД повинна відхилити запит, якщо знчення extraSpecs.[0].periods[0].startDate, яке передають в запиті на публікацію JSC знаходиться поза цим діапазоном. При цьому дата початку аукціону не може припадати на святковий чи вихідний день! |
Для другої процедури приймається значення: extraSpecs.[1].periods.periodName=="tenderPeriod" extraSpecs.[1].periods.duration == if value.amount < 250 000 000 (двісті п'ятдесят мільйонів) then ЦБД має приймати тільки значення для extraSpecs.[1].periods[0].duration в діапазоні 20 c_day <= duration <= 35 c_day ЦБД повинна відхилити запит, якщо знчення duration, яке передають в запиті на публікацію JSC знаходиться поза цим діапазоном. else if value.amount >= 250 000 000 (двісті п'ятдесят мільйонів) then ЦБД має приймати тільки значення для extraSpecs.[1].periods[0].duration в діапазоні 30 c_day <= duration <= 90 c_day ЦБД повинна відхилити запит, якщо знчення duration, яке передають в запиті на публікацію JSC знаходиться поза цим діапазоном. При цьому дата початку аукціону не може припадати на святковий чи вихідний день! |
Для третьої процедури приймається значення: extraSpecs.[2].periods.periodName=="tenderPeriod" extraSpecs.[2].periods.duration == if value.amount < 250 000 000 (двісті п'ятдесят мільйонів) then ЦБД має приймати тільки значення для extraSpecs.[2].periods[0].duration в діапазоні 20 c_day <= duration <= 35 c_day ЦБД повинна відхилити запит, якщо знчення duration, яке передають в запиті на публікацію JSC знаходиться поза цим діапазоном. else if value.amount >= 250 000 000 (двісті п'ятдесят мільйонів) then ЦБД має приймати тільки значення для extraSpecs.[2].periods[0].duration в діапазоні 30 c_day <= duration <= 90 c_day ЦБД повинна відхилити запит, якщо знчення duration, яке передають в запиті на публікацію JSC знаходиться поза цим діапазоном. При цьому дата початку аукціону не може припадати на святковий чи вихідний день! |
Приклад для value.amount < 250 000 000 (двісті п'ятдесят мільйонів):
| Code Block |
|---|
"extraSpecs": [
{
"periods": [
{
"periodName": "auctionPeriod",
"startDate": "2026-03-20T10:00:00.000000Z"
}
]
},
{
"periods": [
{
"periodName": "tenderPeriod",
"duration": [
{
"unit": "c_day",
"quantity": 25
}
]
}
]
},
{
"periods": [
{
"periodName": "tenderPeriod",
"duration": [
{
"unit": "c_day",
"quantity": 35
}
]
}
],
"dutchStep": {
"dutchStepQuantity": 99
}
}
] |