merge branch release/dyn-1068_filter-types-leasing
This commit is contained in:
parent
24c5514dee
commit
90be89dd50
@ -1562,18 +1562,52 @@ const reactionEffects: IReactionEffect[] = [
|
||||
},
|
||||
}),
|
||||
|
||||
/**
|
||||
*
|
||||
* @description
|
||||
#1
|
||||
* DYN-190 При выборе значения в поле selectSubsidy необходимо добавить
|
||||
* фильтрацию в полях при условии что selectSubsidy не равно null:
|
||||
|
||||
Тип предмета лизинга selectLeaseObjectType
|
||||
если с записью Субсидия нет связанных Типов предмета лизинга,
|
||||
то указываются все записи согласно текущей фильтрации,
|
||||
иначе указываются те записи, которые связаны с Субсидией, указанной в поле selectSubsidy
|
||||
|
||||
#2
|
||||
* На изменение поля Продукт selectProduct добавляем фильтрацию списков:
|
||||
в поле Тип предмета лизинга selectLeaseObjectType - указываются те, которые связаны с продуктом.
|
||||
Если с Продуктом нет связанных Типов предмета лизинга,
|
||||
то указывается весь список. Это надо добавить в текущие условия фильтрации данного поля
|
||||
*/
|
||||
calculationStore => ({
|
||||
expression: () => {
|
||||
return calculationStore.getOption('selectSubsidy');
|
||||
return {
|
||||
product: calculationStore.getOption('selectProduct'),
|
||||
subsidy: calculationStore.getOption('selectSubsidy'),
|
||||
};
|
||||
},
|
||||
effect: subsidy => {
|
||||
effect: ({ product, subsidy }) => {
|
||||
calculationStore.setFilter('selectLeaseObjectType', types =>
|
||||
types.filter(
|
||||
type =>
|
||||
!subsidy?.evo_leasingobject_types?.length ||
|
||||
subsidy.evo_leasingobject_types.filter(
|
||||
x => x.evo_leasingobject_typeid === type.evo_leasingobject_typeid,
|
||||
)?.length,
|
||||
pipe(
|
||||
type =>
|
||||
(!product?.evo_leasingobject_types?.length ||
|
||||
product.evo_leasingobject_types.filter(
|
||||
x =>
|
||||
x.evo_leasingobject_typeid ===
|
||||
type?.evo_leasingobject_typeid,
|
||||
)?.length) &&
|
||||
type,
|
||||
type =>
|
||||
type &&
|
||||
(!subsidy?.evo_leasingobject_types?.length ||
|
||||
subsidy.evo_leasingobject_types.filter(
|
||||
x =>
|
||||
x.evo_leasingobject_typeid ===
|
||||
type.evo_leasingobject_typeid,
|
||||
)?.length),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user