From aaf614688689ec1ff1c51a35732968ab574ccea7 Mon Sep 17 00:00:00 2001 From: vchikalkin Date: Mon, 10 Apr 2023 17:59:10 +0300 Subject: [PATCH] recalc: fix tbxLeaseObjectPrice validation --- apps/web/process/recalc/reactions.ts | 16 ++++++++-------- apps/web/process/recalc/validation.ts | 15 +++++++++------ 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/apps/web/process/recalc/reactions.ts b/apps/web/process/recalc/reactions.ts index d122d51..c913785 100644 --- a/apps/web/process/recalc/reactions.ts +++ b/apps/web/process/recalc/reactions.ts @@ -26,24 +26,24 @@ export function common({ store, apolloClient }: ProcessContext) { reaction( () => $calculation.$values.getValues([ - 'supplierDiscountRub', + 'discountRub', 'addEquipmentPrice', 'importProgramSum', 'plPriceRub', ]), - ({ supplierDiscountRub, importProgramSum, addEquipmentPrice, plPriceRub }) => { + ({ discountRub, importProgramSum, addEquipmentPrice, plPriceRub }) => { const price = plPriceRub + addEquipmentPrice - importProgramSum; const maxPriceChange = - price - supplierDiscountRub < 800_000 - ? price - supplierDiscountRub + 50_000 - : (price - supplierDiscountRub) * 1.05; + price - discountRub < 800_000 + ? price - discountRub + 50_000 + : (price - discountRub) * 1.05; $calculation.element('tbxMaxPriceChange').setValue(maxPriceChange); const minPriceChange = - price - supplierDiscountRub < 800_000 - ? price - supplierDiscountRub - 50_000 - : (price - supplierDiscountRub) * 0.95; + price - discountRub < 800_000 + ? price - discountRub - 50_000 + : (price - discountRub) * 0.95; $calculation.element('tbxMinPriceChange').setValue(minPriceChange); } diff --git a/apps/web/process/recalc/validation.ts b/apps/web/process/recalc/validation.ts index 64ce8e8..97a6cd6 100644 --- a/apps/web/process/recalc/validation.ts +++ b/apps/web/process/recalc/validation.ts @@ -12,6 +12,7 @@ export function createValidationSchema({ apolloClient }: ValidationContext) { balanceHolder: true, countSeats: true, dealerPerson: true, + discountRub: true, firstPaymentPerc: true, importProgramSum: true, lastPaymentPerc: true, @@ -25,7 +26,6 @@ export function createValidationSchema({ apolloClient }: ValidationContext) { product: true, quote: true, recalcWithRevision: true, - supplierDiscountRub: true, }).superRefine( async ( { @@ -37,7 +37,7 @@ export function createValidationSchema({ apolloClient }: ValidationContext) { product: productId, quote: quoteId, recalcWithRevision, - supplierDiscountRub, + discountRub, plPriceRub, firstPaymentPerc, leaseObjectCount, @@ -81,8 +81,9 @@ export function createValidationSchema({ apolloClient }: ValidationContext) { dealerPerson?.evo_supplier_type !== 100_000_001 && !evo_baseproduct?.evo_sale_without_nds && Boolean( - quote?.evo_max_price_change && - plPriceRub - supplierDiscountRub + addEquipmentPrice - importProgramSum > + plPriceRub && + quote?.evo_max_price_change && + plPriceRub - discountRub + addEquipmentPrice - importProgramSum > quote.evo_max_price_change ); @@ -104,7 +105,8 @@ export function createValidationSchema({ apolloClient }: ValidationContext) { quote.evo_discount_supplier_currency && quote.evo_equip_price && quote.evo_program_import_subsidy_sum && - plPriceRub - supplierDiscountRub + addEquipmentPrice - importProgramSum > + plPriceRub && + plPriceRub - discountRub + addEquipmentPrice - importProgramSum > quote?.evo_supplier_currency_price - quote.evo_discount_supplier_currency + quote.evo_equip_price - @@ -115,7 +117,8 @@ export function createValidationSchema({ apolloClient }: ValidationContext) { !evo_baseproduct?.evo_sale_without_nds && Boolean( quote?.evo_min_change_price && - plPriceRub - supplierDiscountRub + addEquipmentPrice - importProgramSum < + plPriceRub && + plPriceRub - discountRub + addEquipmentPrice - importProgramSum < quote.evo_min_change_price );