import CrmService from 'client/services/CrmService'; import CalculationStore from 'client/stores/CalculationStore'; import { getUser } from 'client/tools/user'; import initialOwnerQuery from './queries/ownerQuery'; import insuranceQuery from './queries/insuranceQuery'; import optionsQuery from './queries/optionsQuery'; import staticDataQuery from './queries/staticDataQuery'; import systemUserQuery from './queries/systemUserQuery'; export default () => new Promise((resolve, reject) => { getUser() .then(({ UserName, DomainName, FullName }) => { Promise.all([ CrmService.crmgqlquery({ ...initialOwnerQuery, variables: { statecode: 0, fullName: FullName, }, }), CrmService.crmgqlquery(optionsQuery), CrmService.crmgqlquery(staticDataQuery), CrmService.crmgqlquery({ ...systemUserQuery, variables: { username: `${DomainName}\\${UserName}` }, }), CrmService.crmgqlquery(insuranceQuery), ]) .then( ([ { entities: ownerOptions }, { entities: initialOptions }, { entities: staticEntities }, { entities: { systemuser }, }, { entities: insuranceCompanies }, ]) => { CalculationStore.applyOptions(ownerOptions); CalculationStore.applyOptions(initialOptions); CalculationStore.applyStaticData(staticEntities); CalculationStore.applyStaticData({ systemuser: [systemuser] }); CalculationStore.setTableColumns('tableInsurance')({ options: { ...insuranceCompanies }, }); var supplierCurrency = CalculationStore.options.selectSupplierCurrency?.find( x => x.isocurrencycode === 'RUB', ); if (supplierCurrency) CalculationStore.setValue( 'supplierCurrency', supplierCurrency.transactioncurrencyid, ); resolve(); }, ) .catch(err => { reject(err); throw err; }); }) .catch(err => { reject(err); throw err; }); });