Compare commits
2 Commits
dev
...
release/dy
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
267c669975 | ||
|
|
5291e9ff2e |
@ -1,3 +1,4 @@
|
||||
/* eslint-disable sonarjs/cognitive-complexity */
|
||||
import { createValidationReaction } from '../tools';
|
||||
import type { ProcessContext } from '../types';
|
||||
import { createValidationSchema } from './validation';
|
||||
@ -212,8 +213,8 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
|
||||
);
|
||||
|
||||
reaction(
|
||||
() => $calculation.$values.getValues(['recalcWithRevision', 'leaseObjectType']),
|
||||
async ({ recalcWithRevision, leaseObjectType: leaseObjectTypeId }) => {
|
||||
() => $calculation.$values.getValues(['recalcWithRevision', 'leaseObjectType', 'engineType']),
|
||||
async ({ recalcWithRevision, leaseObjectType: leaseObjectTypeId, engineType }) => {
|
||||
if (recalcWithRevision === false) {
|
||||
$calculation
|
||||
.element('selectRequirementTelematic')
|
||||
@ -223,28 +224,34 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
|
||||
)
|
||||
);
|
||||
|
||||
if (leaseObjectTypeId) {
|
||||
const {
|
||||
data: { evo_leasingobject_type },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetLeaseObjectTypeDocument,
|
||||
variables: { leaseObjectTypeId },
|
||||
});
|
||||
if (engineType === 100_000_003) {
|
||||
$calculation.element('selectRequirementTelematic').setValue(100_000_003).block();
|
||||
} else {
|
||||
$calculation.element('selectRequirementTelematic').unblock();
|
||||
|
||||
if (evo_leasingobject_type?.evo_id === '8') {
|
||||
$calculation
|
||||
.element('selectRequirementTelematic')
|
||||
.setOptions(
|
||||
selectRequirementTelematic.filter((x) =>
|
||||
[100_000_000, 100_000_001].includes(x.value)
|
||||
)
|
||||
);
|
||||
}
|
||||
if (leaseObjectTypeId) {
|
||||
const {
|
||||
data: { evo_leasingobject_type },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetLeaseObjectTypeDocument,
|
||||
variables: { leaseObjectTypeId },
|
||||
});
|
||||
|
||||
if (evo_leasingobject_type?.evo_id === '11') {
|
||||
$calculation.element('selectRequirementTelematic').setValue(100_000_002).block();
|
||||
} else {
|
||||
$calculation.element('selectRequirementTelematic').unblock();
|
||||
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_002).block();
|
||||
} else {
|
||||
$calculation.element('selectRequirementTelematic').unblock();
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@ -262,8 +269,14 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
|
||||
'requirementTelematic',
|
||||
'recalcWithRevision',
|
||||
'leaseObjectType',
|
||||
'engineType',
|
||||
]),
|
||||
async ({ requirementTelematic, recalcWithRevision, leaseObjectType: leaseObjectTypeId }) => {
|
||||
async ({
|
||||
requirementTelematic,
|
||||
recalcWithRevision,
|
||||
leaseObjectType: leaseObjectTypeId,
|
||||
engineType,
|
||||
}) => {
|
||||
const currentDate = dayjs().utc(false).toISOString();
|
||||
const {
|
||||
data: { evo_addproduct_types: trackerTypes },
|
||||
@ -294,21 +307,36 @@ export default function reactions({ store, apolloClient }: ProcessContext) {
|
||||
);
|
||||
}
|
||||
|
||||
if (leaseObjectTypeId) {
|
||||
const {
|
||||
data: { evo_leasingobject_type },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetLeaseObjectTypeDocument,
|
||||
variables: { leaseObjectTypeId },
|
||||
});
|
||||
if (engineType === 100_000_003) {
|
||||
filteredTelematicTypes = telematicTypes?.filter(
|
||||
(x) =>
|
||||
x?.evo_controls_program?.includes(100_000_003) &&
|
||||
x.label?.toLowerCase().includes('аво') &&
|
||||
!x.label?.toLowerCase().includes('pro')
|
||||
);
|
||||
|
||||
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').resetValue().block();
|
||||
$calculation.element('selectTelematic').block();
|
||||
} else {
|
||||
$calculation.element('selectTracker').unblock();
|
||||
$calculation.element('selectTelematic').unblock();
|
||||
|
||||
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')
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user