From 70d26e472fa85d54fa5643eb08f34a082a70ad62 Mon Sep 17 00:00:00 2001 From: vchikalkin Date: Thu, 4 Jul 2024 17:26:39 +0300 Subject: [PATCH] fix [2] --- apps/web/process/insurance/reactions.ts | 27 +++++++++++-------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/apps/web/process/insurance/reactions.ts b/apps/web/process/insurance/reactions.ts index 6c412c4..07455b8 100644 --- a/apps/web/process/insurance/reactions.ts +++ b/apps/web/process/insurance/reactions.ts @@ -6,7 +6,7 @@ import { selectLeaseObjectUseFor } from '@/config/default-options'; import * as CRMTypes from '@/graphql/crm.types'; import { normalizeOptions } from '@/utils/entity'; import { debouncedReaction, disposableReaction } from '@/utils/mobx'; -import { comparer, reaction } from 'mobx'; +import { reaction } from 'mobx'; export function common({ store, apolloClient }: ProcessContext) { const { $calculation, $tables, $process } = store; @@ -304,16 +304,13 @@ export function common({ store, apolloClient }: ProcessContext) { } ); - debouncedReaction( - () => { - const values = $calculation.$values.getValues(['leaseObjectType', 'maxMass']); - const osago = $tables.insurance.row('osago').getValues(); - - return { ...values, osago }; - }, - async ({ leaseObjectType: leaseObjectTypeId, maxMass, osago }) => { + reaction( + () => $calculation.$values.getValues(['leaseObjectType', 'maxMass']), + async ({ leaseObjectType: leaseObjectTypeId, maxMass }) => { if (!leaseObjectTypeId) { $tables.insurance.row('osago').column('insuranceCompany').unblock(); + $tables.insurance.row('osago').column('insured').unblock(); + $tables.insurance.row('osago').column('insCost').unblock(); return; } @@ -333,7 +330,7 @@ export function common({ store, apolloClient }: ProcessContext) { query: CRMTypes.GetInsuranceCompaniesDocument, }); - if (evo_leasingobject_type?.evo_id === '9' && maxMass < 20 && osago.insured === 100_000_000) { + if (evo_leasingobject_type?.evo_id === '9' && maxMass < 20) { const otherInsuranceCompany = accounts?.find( (x) => x?.evo_type_ins_policy === null && x.label?.includes('ПРОЧИЕ') ); @@ -346,14 +343,14 @@ export function common({ store, apolloClient }: ProcessContext) { .setValue(otherInsuranceCompany.value) .block(); } + + $tables.insurance.row('osago').column('insured').setValue(100_000_000).block(); + $tables.insurance.row('osago').column('insCost').setValue(0).block(); } else { $tables.insurance.row('osago').column('insuranceCompany').unblock(); + $tables.insurance.row('osago').column('insured').unblock(); + $tables.insurance.row('osago').column('insCost').unblock(); } - }, - { - delay: 1, - equals: comparer.structural, - wait: 100, } ); }