From 12f8e93fc26f4cd1a78f4e1657444eed5f6ef9f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D1=81=D0=BB=D0=B0=D0=B2=20?= =?UTF-8?q?=D0=A7=D0=B8=D0=BA=D0=B0=D0=BB=D0=BA=D0=B8=D0=BD?= Date: Fri, 25 Sep 2020 13:31:31 +0300 Subject: [PATCH] new similar effects --- .../CalculationStore/Effects/reaction.ts | 61 +++++++++++++++++++ src/core/fakeData/entityFakes.ts | 8 +-- 2 files changed, 65 insertions(+), 4 deletions(-) diff --git a/src/client/stores/CalculationStore/Effects/reaction.ts b/src/client/stores/CalculationStore/Effects/reaction.ts index 1ca15d0..514dd84 100644 --- a/src/client/stores/CalculationStore/Effects/reaction.ts +++ b/src/client/stores/CalculationStore/Effects/reaction.ts @@ -503,6 +503,67 @@ const reactionEffects: IReactionEffect[] = [ }, }), + calculationStore => ({ + expression: () => { + const { calcBrokerRewardCondition } = calculationStore.values; + return calcBrokerRewardCondition; + }, + effect: calcBrokerRewardConditionId => { + if (!calcBrokerRewardConditionId) { + calculationStore.setValue('calcBrokerRewardSum', null); + calculationStore.setStatus('tbxCalcBrokerRewardSum', Status.Disabled); + } else { + const calcBrokerRewardCondition = calculationStore.options.selectCalcBrokerRewardCondition?.find( + x => x.evo_reward_conditionid === calcBrokerRewardConditionId, + ); + if (calcBrokerRewardCondition) { + if (calcBrokerRewardCondition.evo_reward_summ) { + calculationStore.setValue( + 'calcBrokerRewardSum', + calcBrokerRewardCondition.evo_reward_summ, + ); + calculationStore.setStatus( + 'tbxCalcBrokerRewardSum', + Status.Default, + ); + } + } + } + }, + }), + + calculationStore => ({ + expression: () => { + const { finDepartmentRewardCondtion } = calculationStore.values; + return finDepartmentRewardCondtion; + }, + effect: finDepartmentRewardCondtionId => { + if (!finDepartmentRewardCondtionId) { + calculationStore.setValue('finDepartmentRewardSumm', null); + calculationStore.setStatus( + 'tbxFinDepartmentRewardSumm', + Status.Disabled, + ); + } else { + const finDepartmentRewardCondtion = calculationStore.options.selectFinDepartmentRewardCondtion?.find( + x => x.evo_reward_conditionid === finDepartmentRewardCondtionId, + ); + if (finDepartmentRewardCondtion) { + if (finDepartmentRewardCondtion.evo_reward_summ) { + calculationStore.setValue( + 'finDepartmentRewardSumm', + finDepartmentRewardCondtion.evo_reward_summ, + ); + calculationStore.setStatus( + 'tbxFinDepartmentRewardSumm', + Status.Default, + ); + } + } + } + }, + }), + calculationStore => ({ expression: () => { const { channel } = calculationStore.values; diff --git a/src/core/fakeData/entityFakes.ts b/src/core/fakeData/entityFakes.ts index 39670ee..3fcd28e 100644 --- a/src/core/fakeData/entityFakes.ts +++ b/src/core/fakeData/entityFakes.ts @@ -386,15 +386,15 @@ const entityFakeData: { statecode: 0, evo_agent_accountid: ACCOUNT_4_ID, evo_reward_conditionid: REWARD_CONDITION_7_ID, - evo_name: 'Не более 15%', - evo_reward_summ: 15, + evo_name: 'Не более 30%', + evo_reward_summ: 30, }, { statecode: 0, evo_agent_accountid: ACCOUNT_4_ID, evo_reward_conditionid: REWARD_CONDITION_8_ID, - evo_name: 'Не более 20%', - evo_reward_summ: 20, + evo_name: 'Не более 40%', + evo_reward_summ: 40, }, ], };