# Для процедур які були створені з 2023-01-30 дати підвищується відсоток винагороди оператора з 1,5% до 2,5% від ціни продажу лота,
# якщо ціна продажу лота понад 64 млн. Для розрахунку в старих процедурах буде використовуватися 1,5%

procedures:
  commercialSell:
    - fromDate: 2023-01-30
      variables:
        saleValueSum:
          rules:
            switch:
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: true
                values:
                  value: procedure.winnerBid.amount * 1.2
                  valueAddedTaxIncluded: true
                  description: Ціна реалізації лота (+ ПДВ)
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: false
                values:
                  value: procedure.winnerBid.amount
                  valueAddedTaxIncluded: false
                  description: Ціна реалізації лота (+ ПДВ)
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: true
                values:
                  value: procedure.winnerBid.amount
                  valueAddedTaxIncluded: true
                  description: Ціна реалізації лота (+ ПДВ)
        saleValue:
          rules:
            switch:
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: true
                values:
                  value: procedure.winnerBid.amount
                  valueAddedTaxIncluded: true
                  description: Якщо value.valueAddedTaxIncluded = false і valueAddedTaxCharged = true, тоді saleValue = winnerBid.amount * 1.2
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: false
                values:
                  value: procedure.winnerBid.amount
                  valueAddedTaxIncluded: false
                  description: Якщо value.valueAddedTaxIncluded = false і valueAddedTaxCharged = false, тоді saleValue = winnerBid.amount
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: true
                values:
                  value: procedure.winnerBid.amount / 1.2
                  valueAddedTaxIncluded: true
                  description: Якщо value.valueAddedTaxIncluded = true, тоді saleValue = winnerBid.amount / 1.2
            default:
              value: procedure.winnerBid.amount
              valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
              description: Кінцева сума, яка підлягає сплаті переможцем електронного аукціону
        saleValueTaxAmount:
          rules:
            switch:
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: false
                values:
                  value: 0
                  valueAddedTaxIncluded: false
                  description: ПДВ на ціну реалізації лота
            default:
              value: saleValueSum / 6
              valueAddedTaxIncluded: true
              description: ПДВ на ціну реалізації лота
        operatorFeeSum:
          rules:
            switch:
              - period:
                  fromField: procedure.winnerBid.amountWithTax
                  between:
                    - bottom: 0
                      top: 4000000.01
                      values:
                        value: saleValueSum * 0.05
                        valueAddedTaxIncluded: true
                        description: Якщо ціна продажу лота до 4000000 - 5% від ціни продажу лота
                    - bottom: 4000000.01
                      top: 64000000.01
                      values:
                        value: saleValueSum * 0.03
                        valueAddedTaxIncluded: true
                        description: Якщо ціна продажу лота від 4000000 до 64000000 - 3% від ціни продажу лота
                    - bottom: 64000000.01
                      values:
                        value: saleValueSum * 0.025
                        valueAddedTaxIncluded: true
                        description: Якщо ціна продажу лота понад 64000000 - 2,5% від ціни продажу лота
        operatorFee:
          rules:
            switch:
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: false
                values:
                  value: operatorFeeSum
                  valueAddedTaxIncluded: false
                  description: Винагорода оператора без ПДВ
            default:
              value: operatorFeeSum / 1.2
              valueAddedTaxIncluded: true
              description: Винагорода оператора без ПДВ
        operatorFeeTaxAmount:
          rules:
            switch:
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: false
                values:
                  value: 0
                  valueAddedTaxIncluded: false
                  description: ПДВ на винагороду оператора
            default:
              value: operatorFeeSum / 6
              valueAddedTaxIncluded: true
              description: ПДВ на винагороду оператора
        administratorFee:
          value: operatorFeeSum * 0.3
          description: 30% від винагороди оператора
          valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
        feeSharingWinnerOperator:
          value: operatorFeeNet * 0.5
          description: 50% від винагороди оператора після вирахунку винагороди адміністратора
        feeSharingOrganizerOperatorSum:
          value: operatorFeeNet * 0.5
          description: Винагорода оператора через електронний майданчик якого переможець аукціону подав цінову пропозицію (+ ПДВ)
          valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
        feeSharingOrganizerOperator:
          rules:
            switch:
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: false
                values:
                  value: feeSharingOrganizerOperatorSum
                  valueAddedTaxIncluded: false
                  description: Винагорода оператора без ПДВ
            default:
              value: feeSharingOrganizerOperatorSum / 1.2
              valueAddedTaxIncluded: true
              description: Винагорода оператора без ПДВ
        feeSharingOrganizerOperatorTaxAmount:
          rules:
            switch:
              - rule:
                  - fromField: procedure.value.valueAddedTaxIncluded
                    value: false
                  - fromField: procedure.valueAddedTaxCharged
                    value: false
                values:
                  value: 0
                  valueAddedTaxIncluded: false
                  description: ПДВ на винагороду оператора
            default:
              value: feeSharingOrganizerOperatorSum / 6
              valueAddedTaxIncluded: true
              description: ПДВ на винагороду оператора
        operatorDisqPenalty:
          rules:
            switch:
              - rule:
                  - fromField: procedure.disqualifiedAwardExists
                    value: true
                  - fromField: procedure.datePublished
                    bottom: "2023-09-28"
                values:
                  value: guaranteeFee * 0.5
                  valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
                  description: Частина штрафу, що перераховується оператору (майданчику дискваліфікованого переможця) за дискваліфікованого учасника
              - rule:
                  - fromField: procedure.disqualifiedAwardExists
                    value: false
                  - fromField: procedure.datePublished
                    bottom: "2023-09-28"
                values:
                  value: None
                  valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
                  description: Частина штрафу, що перераховується оператору (майданчику дискваліфікованого переможця) за дискваліфікованого учасника
            default:
              value: None
              valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
              description: Частина штрафу, що перераховується оператору (майданчику дискваліфікованого переможця) за дискваліфікованого учасника (Для процедур створених до 2023-09-28 значення не розраховується)
        administratorDisqPenalty:
          rules:
            switch:
              - rule:
                  - fromField: procedure.disqualifiedAwardExists
                    value: true
                  - fromField: procedure.datePublished
                    bottom: "2023-09-28"
                values:
                  value: operatorDisqPenalty * 0.7
                  valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
                  description: Частина штрафу, що перераховується адміністратору за дискваліфікованого учасника
              - rule:
                  - fromField: procedure.disqualifiedAwardExists
                    value: false
                  - fromField: procedure.datePublished
                    bottom: "2023-09-28"
                values:
                  value: None
                  valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
                  description: Частина штрафу, що перераховується адміністратору за дискваліфікованого учасника
            default:
              value: None
              valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
              description: Частина штрафу, що перераховується адміністратору за дискваліфікованого учасника (Для процедур створених до 2023-09-28 значення не розраховується)
        organizatorDisqPenalty:
          rules:
            switch:
              - rule:
                  - fromField: procedure.disqualifiedAwardExists
                    value: true
                  - fromField: procedure.datePublished
                    bottom: "2023-09-28"
                values:
                  value: guaranteeFee - operatorDisqPenalty
                  valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
                  description: Частина штрафу, що перераховується організатору за дискваліфікованого учасника
              - rule:
                  - fromField: procedure.disqualifiedAwardExists
                    value: false
                  - fromField: procedure.datePublished
                    bottom: "2023-09-28"
                values:
                  value: None
                  valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
                  description: Частина штрафу, що перераховується організатору за дискваліфікованого учасника
            default:
              value: None
              valueAddedTaxIncluded: procedure.value.valueAddedTaxIncluded
              description: Частина штрафу, що перераховується організатору за дискваліфікованого учасника (Для процедур створених до 2023-09-28 значення не розраховується)
