From d9eb74ff170bf63afc161b4648c8b73b0c8abcb9 Mon Sep 17 00:00:00 2001 From: Chika Date: Wed, 1 Jun 2022 15:01:16 +0300 Subject: [PATCH] =?UTF-8?q?1.=20CalcType=20=D0=BF=D0=BE=20=D1=83=D0=BC?= =?UTF-8?q?=D0=BE=D0=BB=D1=87=D0=B0=D0=BD=D0=B8=D1=8E=20=D1=83=D0=BA=D0=B0?= =?UTF-8?q?=D0=B7=D1=8B=D0=B2=D0=B0=D1=82=D1=8C=20=D0=BF=D1=80=D0=B8=20?= =?UTF-8?q?=D1=84=D0=B8=D0=BB=D1=8C=D1=82=D1=80=D0=B0=D1=86=D0=B8=D0=B8=20?= =?UTF-8?q?=D1=81=D0=BF=D0=B8=D1=81=D0=BA=D0=B0=202.=20=D0=9F=D0=BE=D1=87?= =?UTF-8?q?=D0=B5=D0=BC=D1=83=20=D1=81=D0=B1=D1=80=D0=B0=D1=81=D1=8B=D0=B2?= =?UTF-8?q?=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20=D0=9F=D1=80=D0=BE=D0=B4=D1=83?= =?UTF-8?q?=D0=BA=D1=82=20=D0=BF=D0=BE=D1=81=D0=BB=D0=B5=20=D1=81=D0=BE?= =?UTF-8?q?=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=9A=D0=9F=3F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../process/configurator/reactions/filters.ts | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/client/process/configurator/reactions/filters.ts b/src/client/process/configurator/reactions/filters.ts index d950ee2..e325209 100644 --- a/src/client/process/configurator/reactions/filters.ts +++ b/src/client/process/configurator/reactions/filters.ts @@ -178,8 +178,11 @@ export default function ($calculation: ICalculationStore) { * в поле "Доступные Методы расчета в калькуляторе" evo_calculation_method в selectProduct */ reaction( - () => $calculation.getOption('selectProduct'), - product => { + () => $calculation.values.product, + productId => { + const product = $calculation.getOption('selectProduct', { + evo_id: productId, + }); if (product?.evo_calculation_method) { $calculation.setFilter('radioCalcType', calcType => calcType.filter(x => @@ -187,7 +190,14 @@ export default function ($calculation: ICalculationStore) { ), ); } else { - $calculation.setFilter('radioCalcType', () => []); + /** + * Это фильтр по-умолчанию + * TODO: Добавить его в дефолтные фильтры + */ + $calculation.setFilter('radioCalcType', calcType => + calcType.filter(x => [100_000_000, 100_000_001].includes(x.value)), + ); + $calculation.setValue('calcType', 100_000_000); } }, { fireImmediately: true }, @@ -201,9 +211,10 @@ export default function ($calculation: ICalculationStore) { * связанный с оquote.evo_baseproductid из поля Предложение selectQuote по связи evo_evo_baseproduct_evo_baseproduct */ reaction( - () => $calculation.getOption('selectQuote'), - quote => { + () => $calculation.values.quote, + quoteid => { if ($calculation.getValue('recalcWithRevision')) { + const quote = $calculation.getOption('selectQuote', { quoteid }); const quote_product = $calculation.getOption('selectProduct', { evo_baseproductid: quote?.evo_baseproductid, });