3. Внести изменение в текущую реакцию (не нашла по таблице).
На изменение Типа ПЛ и в момент загрузки КП (но не при Пересчете без пересмотра) Если Тип предмета лизинга leaseObjectType = Мотоцикл (evo_id=11), то RquirementTelematic = COMFORT: 100000002 И selectTracker - обнуляется И selectTelematics = evo_addproduct_type, у которого evo_product_type = 100000004 и evo_controls_program = COMFORT 100 000 002 и evo_name содержит Delta Если Тип предмета лизинга leaseObjectType = Прицеп (evo_id=8), то в поле RquirementTelematic фильтруем список и оставляем значения START: 100000000 и START+: 100000001 иначе текущая логика
This commit is contained in:
parent
8dc2e86b2d
commit
4a70a2c774
@ -231,8 +231,18 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
|
||||
variables: { leaseObjectTypeId },
|
||||
});
|
||||
|
||||
if (evo_leasingobject_type?.evo_id === '8') {
|
||||
$calculation
|
||||
.element('selectRequirementTelematic')
|
||||
.setOptions(
|
||||
selectRequirementTelematic.filter((x) =>
|
||||
[100_000_000, 100_000_001].includes(x.value)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
if (evo_leasingobject_type?.evo_id === '11') {
|
||||
$calculation.element('selectRequirementTelematic').setValue(100_000_000).block();
|
||||
$calculation.element('selectRequirementTelematic').setValue(100_000_002).block();
|
||||
} else {
|
||||
$calculation.element('selectRequirementTelematic').unblock();
|
||||
}
|
||||
@ -247,8 +257,13 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
|
||||
);
|
||||
|
||||
reaction(
|
||||
() => $calculation.$values.getValues(['requirementTelematic', 'recalcWithRevision']),
|
||||
async ({ requirementTelematic, recalcWithRevision }) => {
|
||||
() =>
|
||||
$calculation.$values.getValues([
|
||||
'requirementTelematic',
|
||||
'recalcWithRevision',
|
||||
'leaseObjectType',
|
||||
]),
|
||||
async ({ requirementTelematic, recalcWithRevision, leaseObjectType: leaseObjectTypeId }) => {
|
||||
const currentDate = dayjs().utc(false).toISOString();
|
||||
const {
|
||||
data: { evo_addproduct_types: trackerTypes },
|
||||
@ -279,6 +294,24 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
|
||||
);
|
||||
}
|
||||
|
||||
if (leaseObjectTypeId) {
|
||||
const {
|
||||
data: { evo_leasingobject_type },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetLeaseObjectTypeDocument,
|
||||
variables: { leaseObjectTypeId },
|
||||
});
|
||||
|
||||
if (evo_leasingobject_type?.evo_id === '11') {
|
||||
filteredTelematicTypes = telematicTypes?.filter(
|
||||
(x) =>
|
||||
x?.evo_controls_program?.includes(100_000_002) &&
|
||||
x.label?.toLowerCase().includes('delta') &&
|
||||
!x.label?.toLowerCase().includes('pro')
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
$calculation.element('selectTracker').setOptions(normalizeOptions(filteredTrackerTypes));
|
||||
$calculation.element('selectTelematic').setOptions(normalizeOptions(filteredTelematicTypes));
|
||||
},
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user