process: disable 1c request when load-kp
This commit is contained in:
parent
c26dec1d63
commit
17c8787668
@ -109,52 +109,45 @@ export function common({ store, apolloClient, queryClient }: ProcessContext) {
|
||||
() => $process.has('LoadKP')
|
||||
);
|
||||
|
||||
makeDisposable(
|
||||
reaction(
|
||||
() =>
|
||||
reaction(
|
||||
() =>
|
||||
$calculation.$values.getValues([
|
||||
'leaseObjectType',
|
||||
'leaseObjectCategory',
|
||||
'typePTS',
|
||||
'objectRegistration',
|
||||
]),
|
||||
async ({
|
||||
leaseObjectType: leaseObjectTypeId,
|
||||
leaseObjectCategory,
|
||||
typePTS,
|
||||
objectRegistration,
|
||||
}) => {
|
||||
if (objectRegistration === 100_000_001 && typePTS === 100_000_001) {
|
||||
$calculation.element('selectObjectCategoryTax').unblock();
|
||||
if (leaseObjectTypeId) {
|
||||
const {
|
||||
data: { evo_leasingobject_type },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetLeaseObjectTypeDocument,
|
||||
variables: { leaseObjectTypeId },
|
||||
});
|
||||
if (
|
||||
leaseObjectCategory &&
|
||||
leaseObjectCategory === evo_leasingobject_type?.evo_category
|
||||
) {
|
||||
$calculation
|
||||
.element('selectObjectCategoryTax')
|
||||
.setOptions(
|
||||
selectObjectCategoryTax.filter((option) =>
|
||||
evo_leasingobject_type?.evo_category_tr?.includes(option.value)
|
||||
)
|
||||
);
|
||||
} else {
|
||||
$calculation.element('selectObjectCategoryTax').resetOptions();
|
||||
}
|
||||
}
|
||||
$calculation.$values.getValues([
|
||||
'leaseObjectType',
|
||||
'leaseObjectCategory',
|
||||
'typePTS',
|
||||
'objectRegistration',
|
||||
]),
|
||||
async ({
|
||||
leaseObjectType: leaseObjectTypeId,
|
||||
leaseObjectCategory,
|
||||
typePTS,
|
||||
objectRegistration,
|
||||
}) => {
|
||||
if (objectRegistration === 100_000_001 && typePTS === 100_000_001) {
|
||||
$calculation.element('selectObjectCategoryTax').unblock();
|
||||
if (leaseObjectTypeId) {
|
||||
const {
|
||||
data: { evo_leasingobject_type },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetLeaseObjectTypeDocument,
|
||||
variables: { leaseObjectTypeId },
|
||||
});
|
||||
if (leaseObjectCategory && leaseObjectCategory === evo_leasingobject_type?.evo_category) {
|
||||
$calculation
|
||||
.element('selectObjectCategoryTax')
|
||||
.setOptions(
|
||||
selectObjectCategoryTax.filter((option) =>
|
||||
evo_leasingobject_type?.evo_category_tr?.includes(option.value)
|
||||
)
|
||||
);
|
||||
} else {
|
||||
$calculation.element('selectObjectCategoryTax').resetValue().block();
|
||||
$calculation.element('selectObjectCategoryTax').resetOptions();
|
||||
}
|
||||
}
|
||||
),
|
||||
() => $process.has('LoadKP')
|
||||
} else {
|
||||
$calculation.element('selectObjectCategoryTax').resetValue().block();
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
reaction(
|
||||
@ -182,74 +175,78 @@ export function common({ store, apolloClient, queryClient }: ProcessContext) {
|
||||
return mapObjectTypeTaxToCategory[objectTypeTax as keyof typeof mapObjectTypeTaxToCategory];
|
||||
}
|
||||
|
||||
reaction(
|
||||
makeDisposable(
|
||||
() =>
|
||||
$calculation.$values.getValues([
|
||||
'objectRegistration',
|
||||
'objectTypeTax',
|
||||
'regionRegistration',
|
||||
'leaseObjectYear',
|
||||
'leaseObjectMotorPower',
|
||||
]),
|
||||
async ({
|
||||
objectRegistration,
|
||||
objectTypeTax,
|
||||
regionRegistration,
|
||||
leaseObjectYear,
|
||||
leaseObjectMotorPower,
|
||||
}) => {
|
||||
if (
|
||||
objectRegistration === null ||
|
||||
objectRegistration !== 100_000_001 ||
|
||||
objectTypeTax === null ||
|
||||
regionRegistration === null ||
|
||||
leaseObjectYear === 0 ||
|
||||
leaseObjectMotorPower === 0
|
||||
) {
|
||||
$calculation.element('tbxVehicleTaxInYear').resetValue();
|
||||
reaction(
|
||||
() =>
|
||||
$calculation.$values.getValues([
|
||||
'objectRegistration',
|
||||
'objectTypeTax',
|
||||
'regionRegistration',
|
||||
'leaseObjectYear',
|
||||
'leaseObjectMotorPower',
|
||||
]),
|
||||
async ({
|
||||
objectRegistration,
|
||||
objectTypeTax,
|
||||
regionRegistration,
|
||||
leaseObjectYear,
|
||||
leaseObjectMotorPower,
|
||||
}) => {
|
||||
if (
|
||||
objectRegistration === null ||
|
||||
objectRegistration !== 100_000_001 ||
|
||||
objectTypeTax === null ||
|
||||
regionRegistration === null ||
|
||||
leaseObjectYear === 0 ||
|
||||
leaseObjectMotorPower === 0
|
||||
) {
|
||||
$calculation.element('tbxVehicleTaxInYear').resetValue();
|
||||
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
const {
|
||||
data: { evo_region },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetRegionDocument,
|
||||
variables: {
|
||||
regionId: regionRegistration,
|
||||
},
|
||||
});
|
||||
|
||||
const OKTMO = evo_region?.evo_oktmo;
|
||||
const carCategory = getCarCategory(objectTypeTax);
|
||||
|
||||
if (OKTMO) {
|
||||
const currentDate = dayjs().utc(false).toDate();
|
||||
|
||||
const request = (context: QueryFunctionContext) =>
|
||||
getTransTax(
|
||||
{
|
||||
OKTMO,
|
||||
calcDate: currentDate,
|
||||
carCategory,
|
||||
power: leaseObjectMotorPower,
|
||||
year: leaseObjectYear,
|
||||
const {
|
||||
data: { evo_region },
|
||||
} = await apolloClient.query({
|
||||
query: CRMTypes.GetRegionDocument,
|
||||
variables: {
|
||||
regionId: regionRegistration,
|
||||
},
|
||||
context
|
||||
);
|
||||
const { tax, error } = await queryClient.fetchQuery(['1c', 'trans-tax'], request, {
|
||||
staleTime: STALE_TIME,
|
||||
});
|
||||
});
|
||||
|
||||
if (!error && tax) {
|
||||
$calculation.element('tbxVehicleTaxInYear').setValue(tax);
|
||||
} else {
|
||||
$calculation.element('tbxVehicleTaxInYear').resetValue();
|
||||
const OKTMO = evo_region?.evo_oktmo;
|
||||
const carCategory = getCarCategory(objectTypeTax);
|
||||
|
||||
if (OKTMO) {
|
||||
const currentDate = dayjs().utc(false).toDate();
|
||||
|
||||
const request = (context: QueryFunctionContext) =>
|
||||
getTransTax(
|
||||
{
|
||||
OKTMO,
|
||||
calcDate: currentDate,
|
||||
carCategory,
|
||||
power: leaseObjectMotorPower,
|
||||
year: leaseObjectYear,
|
||||
},
|
||||
context
|
||||
);
|
||||
const { tax, error } = await queryClient.fetchQuery(['1c', 'trans-tax'], request, {
|
||||
staleTime: STALE_TIME,
|
||||
});
|
||||
|
||||
if (!error && tax) {
|
||||
$calculation.element('tbxVehicleTaxInYear').setValue(tax);
|
||||
} else {
|
||||
$calculation.element('tbxVehicleTaxInYear').resetValue();
|
||||
}
|
||||
} else {
|
||||
$calculation.element('tbxVehicleTaxInYear').resetValue();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$calculation.element('tbxVehicleTaxInYear').resetValue();
|
||||
}
|
||||
}
|
||||
),
|
||||
() => $process.has('LoadKP')
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user