From 5291e9ff2e549a2a625a95d96cc87bc8f0bd491a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9E=D0=BB=D1=8C=D0=B3=D0=B0=20=D0=91=D0=B0=D1=80=D1=8B?= =?UTF-8?q?=D0=BA=D0=B8=D0=BD=D0=B0?= Date: Tue, 6 Feb 2024 16:45:43 +0300 Subject: [PATCH] dyn-3965 --- apps/web/process/add-product/reactions.ts | 25 ++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/apps/web/process/add-product/reactions.ts b/apps/web/process/add-product/reactions.ts index 7af6f15..7d26923 100644 --- a/apps/web/process/add-product/reactions.ts +++ b/apps/web/process/add-product/reactions.ts @@ -212,8 +212,8 @@ export default function reactions({ store, apolloClient }: ProcessContext) { ); reaction( - () => $calculation.$values.getValues(['recalcWithRevision', 'leaseObjectType']), - async ({ recalcWithRevision, leaseObjectType: leaseObjectTypeId }) => { + () => $calculation.$values.getValues(['recalcWithRevision', 'leaseObjectType', 'engineType']), + async ({ recalcWithRevision, leaseObjectType: leaseObjectTypeId, engineType }) => { if (recalcWithRevision === false) { $calculation .element('selectRequirementTelematic') @@ -223,6 +223,12 @@ export default function reactions({ store, apolloClient }: ProcessContext) { ) ); + if (engineType === 100_000_003) { + $calculation.element('selectRequirementTelematic').setValue(100_000_003).block(); + } else { + $calculation.element('selectRequirementTelematic').unblock(); + } + if (leaseObjectTypeId) { const { data: { evo_leasingobject_type }, @@ -262,8 +268,14 @@ export default function reactions({ store, apolloClient }: ProcessContext) { 'requirementTelematic', 'recalcWithRevision', 'leaseObjectType', + 'engineType', ]), - async ({ requirementTelematic, recalcWithRevision, leaseObjectType: leaseObjectTypeId }) => { + async ({ + requirementTelematic, + recalcWithRevision, + leaseObjectType: leaseObjectTypeId, + engineType, + }) => { const currentDate = dayjs().utc(false).toISOString(); const { data: { evo_addproduct_types: trackerTypes }, @@ -294,6 +306,13 @@ export default function reactions({ store, apolloClient }: ProcessContext) { ); } + if (engineType === 100_000_003) { + filteredTelematicTypes = telematicTypes?.filter( + (x) => + x?.evo_controls_program?.includes(100_000_003) && x.label?.toLowerCase().includes('аво') + ); + } + if (leaseObjectTypeId) { const { data: { evo_leasingobject_type },