Внести изменения в фильтрацию списка в Модели model (розовым) :

При выборе Марки brand в поле Модель model указываются те значения, у которых в поле Тип ТС evo_vehicle_type = значению, которое содержится в поле Тип ТС evo_vehicle_type выбранного Типа ПЛ leaseObjectType
И evo_leasingobject_type.evo_trailer равно evo_model.evo_trailer_sign ИЛИ (evo_leasingobject_type.evo_trailer != True и evo_model.evo_trailer_sign != True
И evo_leasingobject_type.evo_vehicle_body_type_option = Учитывать то, что указано 100 000 000 и evo_model.evo_vehicle_body_typeid содержит значение из evo_leasingobject_type.evo_vehicle_body_type [] ИЛИ evo_leasingobject_type.evo_vehicle_body_type_option = Учитывать все, кроме того, что указано 100 000 001 и evo_model.evo_vehicle_body_typeid НЕ содержит значение из evo_leasingobject_type.evo_vehicle_body_type [] ИЛИ evo_leasingobject_type.evo_vehicle_body_type_option = Не учитывать 100 000 002
Если Тип ПЛ leaseObjectType не содержит данные, то поле Марка brand закрывается для редактирование и становится равным null, иначе открыто для редактирования
This commit is contained in:
vchikalkin 2024-04-01 10:31:01 +03:00
parent 4e1d63b6ee
commit d8e599dc20

View File

@ -52,20 +52,19 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
if (
model?.evo_vehicle_type &&
evo_leasingobject_type?.evo_vehicle_type?.includes(model.evo_vehicle_type) &&
(evo_leasingobject_type?.evo_trailer === model.evo_trailer_sign ||
(evo_leasingobject_type?.evo_trailer === false &&
model.evo_trailer_sign === false)) &&
((evo_leasingobject_type?.evo_vehicle_body_type_option === 100_000_000 &&
model?.evo_vehicle_body_typeid &&
evo_leasingobject_type?.evo_vehicle_body_types?.some(
(type) => type?.evo_vehicle_body_typeid === model?.evo_vehicle_body_typeid
(evo_leasingobject_type?.evo_trailer === model?.evo_trailer_sign ||
(!evo_leasingobject_type.evo_trailer && !model?.evo_trailer_sign)) &&
((evo_leasingobject_type.evo_vehicle_body_type_option === 100_000_000 &&
evo_leasingobject_type.evo_vehicle_body_types?.some(
(evo_vehicle_body_type) =>
evo_vehicle_body_type?.evo_vehicle_body_typeid === model.evo_vehicle_body_typeid
)) ||
(evo_leasingobject_type?.evo_vehicle_body_type_option !== 100_000_001 &&
model?.evo_vehicle_body_typeid &&
evo_leasingobject_type?.evo_vehicle_body_types?.some(
(type) => type?.evo_vehicle_body_typeid === model?.evo_vehicle_body_typeid
(evo_leasingobject_type.evo_vehicle_body_type_option === 100_000_001 &&
!evo_leasingobject_type.evo_vehicle_body_types?.some(
(evo_vehicle_body_type) =>
evo_vehicle_body_type?.evo_vehicle_body_typeid === model.evo_vehicle_body_typeid
)) ||
evo_leasingobject_type?.evo_vehicle_body_type_option !== 100_000_002)
evo_leasingobject_type.evo_vehicle_body_type_option === 100_000_002)
) {
return model;
}