Реакция на изменения полей Последний платеж, % tbxLastPaymentPerc или Последний платеж, руб. tbxLastPaymentRub (работает при загрузке КП)
ЕСЛИ Пересчет без пересмотра (recalcWthtRevision) = true, ТО Если tbxLastPaymentPerc > quote.evo_last_payment_perc из selectQuote И tbxLastPaymentPerc > 1 , то поля tbxLastPaymentPerc и tbxLastPaymentRub обводить красной рамкой и выводить сообщение "При пересчете без пересмотра последний платеж можно уменьшать или увеличивать до 1%" иначе с полей bxLastPaymentPerc и tbxLastPaymentRub убирать красную рамку ИНАЧЕ ничего не делаем
This commit is contained in:
parent
f39ae19e77
commit
7125ca8288
@ -21,4 +21,5 @@ link
|
||||
evo_req_telematic
|
||||
evo_req_telematic_accept
|
||||
evo_one_year_insurance
|
||||
evo_last_payment_perc
|
||||
`;
|
||||
|
||||
@ -655,42 +655,6 @@ const reactionEffects: IReactionEffect[] = [
|
||||
},
|
||||
}),
|
||||
|
||||
calculationStore => ({
|
||||
expression: () => {
|
||||
const { lastPaymentPerc, balanceHolder } = calculationStore.values;
|
||||
return {
|
||||
lastPaymentPerc,
|
||||
balanceHolder,
|
||||
};
|
||||
},
|
||||
effect: ({ lastPaymentPerc, balanceHolder }) => {
|
||||
if (balanceHolder && balanceHolder === 100000001) {
|
||||
if (!lastPaymentPerc || parseFloat(lastPaymentPerc) < 1) {
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', false);
|
||||
openNotification({
|
||||
type: 'error',
|
||||
title: 'Ошибка',
|
||||
description:
|
||||
'При балансе лизингодатель последний платеж не может быть меньше 1%! Увеличьте значение.',
|
||||
})();
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
if (parseFloat(lastPaymentPerc) === 0) {
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', false);
|
||||
openNotification({
|
||||
type: 'error',
|
||||
title: 'Ошибка',
|
||||
description:
|
||||
'Последний платеж не может быть равен 0. Увеличьте значение',
|
||||
})();
|
||||
return;
|
||||
}
|
||||
}
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', true);
|
||||
},
|
||||
}),
|
||||
|
||||
calculationStore => ({
|
||||
expression: () => {
|
||||
const {
|
||||
|
||||
@ -460,6 +460,66 @@ const reactionEffects: IReactionEffect[] = [
|
||||
fireImmediately: true,
|
||||
},
|
||||
}),
|
||||
|
||||
calculationStore => ({
|
||||
expression: () => calculationStore.getValues(['lastPaymentPerc']),
|
||||
effect: ({ lastPaymentPerc }) => {
|
||||
if (!calculationStore.getValue('recalcWithRevision')) {
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', undefined);
|
||||
return;
|
||||
}
|
||||
|
||||
const quote = calculationStore.getOption('selectQuote');
|
||||
if (
|
||||
quote &&
|
||||
quote.evo_last_payment_perc &&
|
||||
lastPaymentPerc > 1 &&
|
||||
lastPaymentPerc > quote.evo_last_payment_perc
|
||||
) {
|
||||
openNotification({
|
||||
type: 'error',
|
||||
title: 'Ошибка',
|
||||
description:
|
||||
'При пересчете без пересмотра последний платеж можно уменьшать или увеличивать до 1%',
|
||||
})();
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', false);
|
||||
} else {
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', undefined);
|
||||
}
|
||||
},
|
||||
}),
|
||||
|
||||
calculationStore => ({
|
||||
expression: () =>
|
||||
calculationStore.getValues(['lastPaymentPerc', 'balanceHolder']),
|
||||
effect: ({ lastPaymentPerc, balanceHolder }) => {
|
||||
if (balanceHolder && balanceHolder === 100000001) {
|
||||
if (!lastPaymentPerc || parseFloat(lastPaymentPerc) < 1) {
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', false);
|
||||
openNotification({
|
||||
type: 'error',
|
||||
title: 'Ошибка',
|
||||
description:
|
||||
'При балансе лизингодатель последний платеж не может быть меньше 1%! Увеличьте значение.',
|
||||
})();
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
if (parseFloat(lastPaymentPerc) === 0) {
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', false);
|
||||
openNotification({
|
||||
type: 'error',
|
||||
title: 'Ошибка',
|
||||
description:
|
||||
'Последний платеж не может быть равен 0. Увеличьте значение',
|
||||
})();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (!calculationStore.getValue('recalcWithRevision'))
|
||||
calculationStore.setValidation('tbxLastPaymentPerc', true);
|
||||
},
|
||||
}),
|
||||
];
|
||||
|
||||
const map_add_product_types_to_values = {
|
||||
|
||||
Reference in New Issue
Block a user