This repository has been archived on 2025-05-09. You can view files and clone it, but cannot push or open issues or pull requests.
2022-01-12 15:35:19 +03:00

55 lines
1.8 KiB
TypeScript

import { ICalculationStore } from 'core/types/Calculation/Store';
import { Process } from 'core/types/Calculation/Store/process';
import initialOptions from '../config/initialOptions';
import initialValues from '../config/initialValues';
import { composeRequests } from './requests';
export default async function (this: ICalculationStore) {
const { calculationProcess } = this.stores;
calculationProcess.addProcess(Process.Init);
const {
ownerOptionsRequest,
mainOptionsRequest,
staticDataRequest,
systemUserRequest,
insuranceRequest,
} = composeRequests();
const ownerOptions = await ownerOptionsRequest;
const mainOptions = await mainOptionsRequest;
this.applyOptions(Object.assign(initialOptions, ownerOptions, mainOptions));
const systemuser = await systemUserRequest;
const staticEntities = await staticDataRequest;
this.applyStaticData(Object.assign({ systemuser }, staticEntities));
const insuranceData = await insuranceRequest;
this.setTableColumns('tableInsurance')({
options: insuranceData,
});
this.setValues(initialValues, true);
const supplierCurrency = this.options.selectSupplierCurrency?.find(
x => x.isocurrencycode === 'RUB',
);
this.setValue('supplierCurrency', supplierCurrency?.transactioncurrencyid);
const evo_sot_coefficient_type = staticEntities?.evo_sot_coefficient_type?.find(
x => x.evo_id === 'BONUS_LEASING',
);
const evo_coefficient_bonus = staticEntities?.evo_coefficient?.find(
x =>
x.evo_job_titleid === systemuser[0]?.evo_job_titleid &&
x.evo_sot_coefficient_typeid ===
evo_sot_coefficient_type?.evo_sot_coefficient_typeid,
);
if (evo_coefficient_bonus?.evo_sot_coefficient)
this.setValue('saleBonus', evo_coefficient_bonus.evo_sot_coefficient * 100);
calculationProcess.deleteProcess(Process.Init);
}