Merge branch 'development'

This commit is contained in:
Chika 2022-11-02 16:06:28 +03:00
commit fbf20b0d9c
20 changed files with 455 additions and 23 deletions

View File

@ -109,6 +109,19 @@ export const conditions: Partial<Record<ElementsNames, ValidationCondition>> = {
isValid: true, isValid: true,
}; };
}, },
selectLeasingWithoutKasko: calculationStore => {
if (calculationStore.getValue('leasingWithoutKasko')) {
return {
isValid: false,
message:
'Вы осуществляете расчет с Лизинг без КАСКО, расчет ЭЛТ в данном случае не требуется',
};
}
return {
isValid: true,
};
},
}; };
export const resetFields: ElementsNames[] = [ export const resetFields: ElementsNames[] = [
@ -119,6 +132,7 @@ export const resetFields: ElementsNames[] = [
'selectLegalClientTown', 'selectLegalClientTown',
'selectLegalClientRegion', 'selectLegalClientRegion',
'tbxVIN', 'tbxVIN',
'selectLeasingWithoutKasko',
]; ];
export default { export default {

View File

@ -20,6 +20,29 @@ export const requiredFields: ElementsNames[] = [
]; ];
const osagoConditions: Partial<Record<ElementsNames, ValidationCondition>> = { const osagoConditions: Partial<Record<ElementsNames, ValidationCondition>> = {
selectLeaseObjectType: calculationStore => {
const leaseObjectType = calculationStore.getOption('selectLeaseObjectType');
// Проверяем на мотоцикл
if (leaseObjectType?.evo_id && ['11'].includes(leaseObjectType?.evo_id)) {
return {
isValid: false,
message: `По данному Типу предмета лизинга возможен только индивидуальный запрос тарифов КАСКО и ОСАГО. Просьба обратиться на адрес strakhovka@evoleasing.ru`,
};
}
if (
leaseObjectType?.evo_id &&
!['1', '2', '3', '6', '7', '9', '10'].includes(leaseObjectType?.evo_id)
) {
return {
isValid: false,
message: `Для выбранной категории ТС расчет в ЭЛТ недоступен`,
};
}
return {
isValid: true,
};
},
selectTownRegistration: calculationStore => { selectTownRegistration: calculationStore => {
const objectRegistration = calculationStore.getValue('objectRegistration'); const objectRegistration = calculationStore.getValue('objectRegistration');
if (objectRegistration === 100000001) { if (objectRegistration === 100000001) {
@ -39,7 +62,11 @@ const osagoConditions: Partial<Record<ElementsNames, ValidationCondition>> = {
const conditions = Object.assign( const conditions = Object.assign(
osagoConditions, osagoConditions,
omit(kaskoConditions, ['selectEngineType']), omit(kaskoConditions, [
'selectEngineType',
'selectLeaseObjectType',
'selectLeasingWithoutKasko',
]),
); );
export const resetFields: ElementsNames[] = [ export const resetFields: ElementsNames[] = [

View File

@ -284,6 +284,7 @@ const sections: ISection[] = [
'selectLeaseObjectCategory', 'selectLeaseObjectCategory',
'tbxLeaseObjectMotorPower', 'tbxLeaseObjectMotorPower',
'tbxEngineVolume', 'tbxEngineVolume',
'selectLeasingWithoutKasko',
], ],
}, },
{ {

View File

@ -144,6 +144,7 @@ export default {
labelIrrInfo: Label, labelIrrInfo: Label,
labelRegistrationDescription: Label, labelRegistrationDescription: Label,
labelImportProgramSum: Label, labelImportProgramSum: Label,
selectLeasingWithoutKasko: Select,
/** Result Elements */ /** Result Elements */
labelResultTotalGraphwithNDS: Label, labelResultTotalGraphwithNDS: Label,

View File

@ -130,6 +130,7 @@ export const elementsTitles: Partial<Record<AllElementsNames, string>> = {
labelImportProgramSum: 'Скидка от производителя, руб., с НДС', labelImportProgramSum: 'Скидка от производителя, руб., с НДС',
tbxAddEquipmentPrice: 'Стоимость доп.оборудования', tbxAddEquipmentPrice: 'Стоимость доп.оборудования',
tbxVIN: 'VIN', tbxVIN: 'VIN',
selectLeasingWithoutKasko: 'Лизинг без КАСКО',
/** Result Elements */ /** Result Elements */
labelResultTotalGraphwithNDS: 'Итого по графику, с НДС', labelResultTotalGraphwithNDS: 'Итого по графику, с НДС',

View File

@ -136,6 +136,7 @@ const elementsValues: Record<ElementsNames, ValuesNames> = {
selectImportProgram: 'importProgram', selectImportProgram: 'importProgram',
tbxAddEquipmentPrice: 'addEquipmentPrice', tbxAddEquipmentPrice: 'addEquipmentPrice',
tbxVIN: 'vin', tbxVIN: 'vin',
selectLeasingWithoutKasko: 'leasingWithoutKasko',
/** Result Elements */ /** Result Elements */
labelResultTotalGraphwithNDS: 'resultTotalGraphwithNDS', labelResultTotalGraphwithNDS: 'resultTotalGraphwithNDS',

View File

@ -123,6 +123,7 @@ export type ElementsNames =
| 'tbxVATInLeaseObjectPrice' | 'tbxVATInLeaseObjectPrice'
| 'tbxAddEquipmentPrice' | 'tbxAddEquipmentPrice'
| 'tbxVIN' | 'tbxVIN'
| 'selectLeasingWithoutKasko'
/** Result Elements */ /** Result Elements */
| 'labelResultTotalGraphwithNDS' | 'labelResultTotalGraphwithNDS'
| 'labelResultPlPrice' | 'labelResultPlPrice'

View File

@ -186,6 +186,51 @@ export default function (this: ICalculationStore): PreparedData {
? values.leasingPeriod ? values.leasingPeriod
: 12; : 12;
//@ts-ignore
const importProgramSum: number = this.importProgramSum();
//@ts-ignore
const plPriceRub: number = this.plPriceRub();
//@ts-ignore
const discountRub: number = this.discountRub();
preparedValues.insuranceEvoKasko = 0;
const selectLeasingWithoutKasko = this.getOption('selectLeasingWithoutKasko');
if (selectLeasingWithoutKasko?.evo_evokasko_calc_type === 100_000_001) {
preparedValues.insuranceEvoKasko =
(selectLeasingWithoutKasko?.evo_cost_service_provider_withoutnds || 0) *
(plPriceRub -
discountRub -
importProgramSum +
values.addEquipmentPrice -
values.firstPaymentRub);
} else {
preparedValues.insuranceEvoKasko =
(selectLeasingWithoutKasko?.evo_cost_service_provider_withoutnds || 0) *
(plPriceRub - discountRub - importProgramSum + values.addEquipmentPrice);
}
preparedValues.insuranceBonusLoss = 0;
if (selectLeasingWithoutKasko?.evo_evokasko_calc_type === 100_000_001) {
preparedValues.insuranceBonusLoss =
((selectLeasingWithoutKasko?.evo_loss_kv || 0) *
(plPriceRub -
discountRub -
importProgramSum +
values.addEquipmentPrice -
values.firstPaymentRub)) /
100;
} else {
preparedValues.insuranceBonusLoss =
((selectLeasingWithoutKasko?.evo_loss_kv || 0) *
(plPriceRub -
discountRub -
importProgramSum +
values.addEquipmentPrice)) /
100;
}
preparedValues.insuranceKaskoNmper = preparedValues.insuranceKaskoNmper =
(preparedValues.nmperInsurance || 0) >= 16 (preparedValues.nmperInsurance || 0) >= 16
? ((preparedValues.insuranceKasko || 0) * ? ((preparedValues.insuranceKasko || 0) *
@ -230,8 +275,6 @@ export default function (this: ICalculationStore): PreparedData {
evo_currencychange?.evo_currencychange || 1, evo_currencychange?.evo_currencychange || 1,
); );
//@ts-ignore
const importProgramSum = this.importProgramSum();
preparedValues.importProgramSum = preparedValues.importProgramSum =
importProgramSum / (1 + valuesConstants.VAT); importProgramSum / (1 + valuesConstants.VAT);

View File

@ -61,7 +61,7 @@ export default {
); );
this.setValue( this.setValue(
'resultIRRGraphPerc', 'resultIRRGraphPerc',
(res?.columns?.cashflowColumn?.irr || 0) * 100, (res?.columns?.sumColumn?.irr || 0) * 100,
); );
this.setValue( this.setValue(
'resultIRRNominalPerc', 'resultIRRNominalPerc',

View File

@ -122,6 +122,49 @@ function validateInsuranceTable(this: ICalculationStore) {
}, },
}); });
} }
/**
* Самый откровенный костыль в истории калькулятора,
* потому что мне сейчас лень добавлять проверку текущего значения
* в отфильтрованном списке опций в таблице,
* да и это не имеет смысла
* (связано с самой жуткой реакцией по страховке)
*
* TODO: Для нового калькулятора:
* вместо костыля сбрасывать значение КАСКО на дефолтное, если текущего значения нет в списке опций
*
*/
const leasingWithoutKasko = this.getValue('leasingWithoutKasko');
const otherInsuranceCompany =
this.tables.tableInsurance.options?.insuranceCompany?.find(x =>
x.name?.includes('ПРОЧИЕ'),
);
if (
!leasingWithoutKasko &&
kaskoRow.insuranceCompany === otherInsuranceCompany?.value
) {
this.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'kasko'),
)({
insuranceCompany: {
validation: false,
},
});
openNotification({
type: 'error',
message: 'Ошибка',
description: 'Укажите страховую компанию КАСКО из списка',
});
} else {
this.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'kasko'),
)({
insuranceCompany: {
validation: undefined,
},
});
}
} }
function validatePaymentsTable(this: ICalculationStore) { function validatePaymentsTable(this: ICalculationStore) {

View File

@ -40,6 +40,7 @@ const map_add_product_types_to_values = {
tracker: 100000003, tracker: 100000003,
telematic: 100000004, telematic: 100000004,
fuelCard: 100000005, fuelCard: 100000005,
leasingWithoutKasko: 100000007,
}; };
const tablePaymentsStatuses = (graphType, seasonType, leasingPeriod) => { const tablePaymentsStatuses = (graphType, seasonType, leasingPeriod) => {
@ -600,9 +601,24 @@ const loadKpReaction: IReactionEffect = calculationStore => ({
// regionRegistration // regionRegistration
if (objectRegistration === 100000001) { if (objectRegistration === 100000001) {
regionRegistration = quote.evo_regionid; regionRegistration = quote.evo_regionid;
calculationStore.setFilter('selectRegionRegistration', regions =>
regions.filter(x => x.evo_businessunit_evolution === true), const filter = regions =>
); regions.filter(x => x.evo_businessunit_evolution === true);
calculationStore.setFilter('selectRegionRegistration', filter);
/**
* TODO: Для нового калькулятора:
* костыль: скидываем значение поля selectRegionRegistration
* после фильтрации чтобы не ставилось значение из КП которого нет в отфильтрованном списке
*/
if (
!calculationStore
.getOptions('selectRegionRegistration', undefined, true)
?.find(x => x.value === regionRegistration)
) {
regionRegistration = null;
}
calculationStore.setStatus( calculationStore.setStatus(
'selectRegionRegistration', 'selectRegionRegistration',
ElementStatus.Default, ElementStatus.Default,

View File

@ -822,6 +822,100 @@ const reactionEffects: IReactionEffect[] = [
}, },
}), }),
/**
* сделали здесь для экономии времени
* перенести в отдельный процесс leasingWithoutKasko
*/
calculationStore => ({
expression: () => {
//@ts-ignore
const plPriceRub = calculationStore.plPriceRub();
//@ts-ignore
const discountRub = calculationStore.discountRub();
//@ts-ignore
const importProgramSum: number = calculationStore.importProgramSum();
const {
leasingPeriod,
leaseObjectType,
addEquipmentPrice,
firstPaymentPerc,
model,
} = calculationStore.values;
return {
leasingPeriod,
leaseObjectType,
plPriceRub,
discountRub,
addEquipmentPrice,
importProgramSum,
firstPaymentPerc,
modelId: model,
};
},
effect: ({
leasingPeriod = 0,
leaseObjectType,
plPriceRub = 0,
discountRub = 0,
addEquipmentPrice = 0,
importProgramSum = 0,
firstPaymentPerc = 0,
modelId,
}) => {
calculationStore.setFilter('selectLeasingWithoutKasko', options =>
options.filter(
x =>
x?.evo_max_period !== undefined &&
x?.evo_min_period !== undefined &&
x.evo_max_period >= leasingPeriod &&
x.evo_min_period <= leasingPeriod &&
x?.evo_max_price !== undefined &&
x?.evo_min_price !== undefined &&
x.evo_max_price >=
plPriceRub - discountRub - importProgramSum + addEquipmentPrice &&
x.evo_min_price <=
plPriceRub - discountRub - importProgramSum + addEquipmentPrice &&
x.evo_leasingobject_types?.find(
x => x.evo_leasingobject_typeid === leaseObjectType,
) &&
x.evo_visible_calc &&
x.evo_min_first_payment_perc !== undefined &&
x.evo_min_first_payment_perc <= firstPaymentPerc &&
x.evo_max_first_payment_perc !== undefined &&
x.evo_max_first_payment_perc >= firstPaymentPerc &&
!x.evo_models?.map(x => x.evo_modelid).includes(modelId),
),
);
},
options: {
fireImmediately: true,
},
}),
calculationStore => ({
expression: () => {
return {
options: calculationStore.getOptions(
'selectLeasingWithoutKasko',
undefined,
true,
),
value: calculationStore.getValue('leasingWithoutKasko'),
};
},
effect: (nextValues, prevValues) => {
if (prevValues.value && !nextValues.value) {
openNotification({
type: 'warning',
message: 'Внимание',
description: 'Лизинг без КАСКО был сброшен',
});
}
},
}),
calculationStore => ({ calculationStore => ({
expression: () => { expression: () => {
const { leasingPeriod, leaseObjectType } = calculationStore.values; const { leasingPeriod, leaseObjectType } = calculationStore.values;

View File

@ -147,13 +147,109 @@ export default [
}, },
}), }),
// самая жуткая реакция по страховке
(calculationStore, calculationProcess) => ({ (calculationStore, calculationProcess) => ({
expression: () => { expression: () => {
const { leasingPeriod } = calculationStore.values; const { leasingPeriod, leasingWithoutKasko } = calculationStore.values;
return leasingPeriod; return { leasingPeriod, leasingWithoutKasko };
}, },
effect: leasingPeriod => { effect: ({ leasingPeriod, leasingWithoutKasko }) => {
if (leasingPeriod) { if (leasingWithoutKasko) {
const otherInsuranceCompany =
calculationStore.tables.tableInsurance.options?.insuranceCompany?.find(
x => x.name?.includes('ПРОЧИЕ'),
);
const insuranceOtherFilter = singleValueFilter(
otherInsuranceCompany?.value,
);
calculationStore.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'kasko'),
)({
insuranceCompany: {
value: otherInsuranceCompany?.value,
status: ElementStatus.Disabled,
filter: insuranceOtherFilter,
},
insCost: {
value: 0,
status: ElementStatus.Disabled,
},
insTerm: {
value: 100_000_000,
status: ElementStatus.Disabled,
},
insured: {
value: 100_000_000,
status: ElementStatus.Disabled,
},
});
calculationStore.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'dgo'),
)({
insuranceCompany: {
value: otherInsuranceCompany?.value,
status: ElementStatus.Disabled,
filter: insuranceOtherFilter,
},
insCost: {
value: 0,
status: ElementStatus.Disabled,
},
insTerm: {
value: 100_000_000,
status: ElementStatus.Disabled,
},
insured: {
value: 100_000_000,
status: ElementStatus.Disabled,
},
});
calculationStore.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'ns'),
)({
insuranceCompany: {
value: otherInsuranceCompany?.value,
status: ElementStatus.Disabled,
filter: insuranceOtherFilter,
},
insCost: {
value: 0,
status: ElementStatus.Disabled,
},
insTerm: {
value: 100_000_000,
status: ElementStatus.Disabled,
},
insured: {
value: 100_000_000,
status: ElementStatus.Disabled,
},
});
} else if (leasingPeriod) {
calculationStore.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'kasko'),
)({
insuranceCompany: {
filter: insuranceKaskoDefaultFilter,
status: ElementStatus.Default,
},
insCost: { status: ElementStatus.Default },
});
calculationStore.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'dgo'),
)({
insuranceCompany: { filter: insuranceKaskoDefaultFilter },
});
calculationStore.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'ns'),
)({
insuranceCompany: { filter: insuranceKaskoDefaultFilter },
});
if (leasingPeriod < 12) { if (leasingPeriod < 12) {
calculationStore.setTableRow('tableInsurance', rows => calculationStore.setTableRow('tableInsurance', rows =>
rows.findIndex(x => x?.key === 'osago'), rows.findIndex(x => x?.key === 'osago'),

View File

@ -94,5 +94,6 @@ const initialValues: Partial<Record<ValuesNames, any>> = {
legalClientTown: null, legalClientTown: null,
infuranceOPF: null, infuranceOPF: null,
addEquipmentPrice: 0, addEquipmentPrice: 0,
leasingWithoutKasko: null,
}; };
export default initialValues; export default initialValues;

View File

@ -15,6 +15,7 @@ export const mainOptionsVariables:
telematic_product_type: 100000004, telematic_product_type: 100000004,
techcard_product_type: 100000000, techcard_product_type: 100000000,
fuelcard_product_type: 100000005, fuelcard_product_type: 100000005,
leasing_without_kasko_product_type: 100000007,
}; };
export const insuranceVariables: Partial<Record<keyof IAccount, any>> = { export const insuranceVariables: Partial<Record<keyof IAccount, any>> = {

View File

@ -1,4 +1,6 @@
export interface PreparedValues { export interface PreparedValues {
insuranceBonusLoss?: number;
insuranceEvoKasko?: number;
extraBonusSumColumn?: number; extraBonusSumColumn?: number;
importProgramSum?: number; importProgramSum?: number;
calcDate?: Date; calcDate?: Date;

View File

@ -13,6 +13,7 @@ query GetMainOptions(
$telematic_product_type: Int $telematic_product_type: Int
$fuelcard_product_type: Int $fuelcard_product_type: Int
$techcard_product_type: Int $techcard_product_type: Int
$leasing_without_kasko_product_type: Int
) { ) {
selectSupplierCurrency: transactioncurrencies(statecode: $statecode) { selectSupplierCurrency: transactioncurrencies(statecode: $statecode) {
transactioncurrencyid transactioncurrencyid
@ -296,4 +297,25 @@ query GetMainOptions(
} }
evo_subsidy_type evo_subsidy_type
} }
selectLeasingWithoutKasko: evo_addproduct_types(
statecode: $statecode
evo_product_type: $leasing_without_kasko_product_type
evo_datefrom_param: { lte: $currentDate }
evo_dateto_param: { gte: $currentDate }
) {
...evo_addproduct_types_fields
evo_leasingobject_types {
evo_leasingobject_typeid
}
evo_visible_calc
evo_min_price
evo_max_price
evo_loss_kv
evo_min_first_payment_perc
evo_max_first_payment_perc
evo_models {
evo_modelid
}
evo_evokasko_calc_type
}
} }

View File

@ -50,7 +50,7 @@ type Query {
account(accountid: Uuid!): account account(accountid: Uuid!): account
"""Контрагенты. statecode по умолчанию 0""" """Контрагенты. statecode по умолчанию 0"""
accounts(evo_accnumber: String, evo_account_type: [Int!], evo_agency_agreementid: Uuid, evo_broker_accountid: Uuid, evo_fin_department_accountid: Uuid, evo_id_elt: String, evo_inn: String, evo_inn_param: StringParamInput, evo_kpp: String, evo_kpp_param: StringParamInput, evo_legal_form: Int, evo_type_ins_policy: [Int!], name: String, ownerid: Uuid, owner_domainname: String, statecode: Int): [account] accounts(evo_accnumber: String, evo_account_type: [Int!], evo_agency_agreementid: Uuid, evo_broker_accountid: Uuid, evo_fin_department_accountid: Uuid, evo_id_elt: String, evo_inn: String, evo_inn_param: StringParamInput, evo_kpp: String, evo_kpp_param: StringParamInput, evo_legal_form: Int, evo_type_ins_policy: [Int!], ownerid: Uuid, owner_domainname: String, statecode: Int): [account]
"""Брокер. statecode по умолчанию 0""" """Брокер. statecode по умолчанию 0"""
broker_agents(ownnerid: Uuid!, statecode: Int): [account] broker_agents(ownnerid: Uuid!, statecode: Int): [account]
@ -68,7 +68,7 @@ type Query {
evo_baseproduct(evo_baseproductid: Uuid!): evo_baseproduct evo_baseproduct(evo_baseproductid: Uuid!): evo_baseproduct
evo_baseproducts(evo_datefrom_param: DateParamInput, evo_dateto_param: DateParamInput, evo_relation: [Int!], statecode: Int): [evo_baseproduct] evo_baseproducts(evo_datefrom_param: DateParamInput, evo_dateto_param: DateParamInput, evo_relation: [Int!], statecode: Int): [evo_baseproduct]
evo_brand(evo_brandid: Uuid!): evo_brand evo_brand(evo_brandid: Uuid!): evo_brand
evo_brands(evo_name: String, evo_vehicle_type: [Int!], statecode: Int): [evo_brand] evo_brands(evo_vehicle_type: [Int!], statecode: Int): [evo_brand]
evo_businessunits(statecode: Int): [evo_businessunit] evo_businessunits(statecode: Int): [evo_businessunit]
evo_client_risks(statecode: Int): [evo_client_risk] evo_client_risks(statecode: Int): [evo_client_risk]
evo_client_types(statecode: Int): [evo_client_type] evo_client_types(statecode: Int): [evo_client_type]
@ -96,7 +96,7 @@ type Query {
evo_leasingobject_type(evo_leasingobject_typeid: Uuid!): evo_leasingobject_type evo_leasingobject_type(evo_leasingobject_typeid: Uuid!): evo_leasingobject_type
evo_leasingobject_types(statecode: Int): [evo_leasingobject_type] evo_leasingobject_types(statecode: Int): [evo_leasingobject_type]
evo_model(evo_modelid: Uuid!): evo_model evo_model(evo_modelid: Uuid!): evo_model
evo_models(evo_brandid: Uuid, evo_name: String, evo_vehicle_type: Int, statecode: Int): [evo_model] evo_models(evo_brandid: Uuid, evo_vehicle_type: Int, statecode: Int): [evo_model]
evo_orglegalform(evo_orglegalformid: Uuid!): evo_orglegalform evo_orglegalform(evo_orglegalformid: Uuid!): evo_orglegalform
evo_orglegalforms(statecode: Int = 0): [evo_orglegalform] evo_orglegalforms(statecode: Int = 0): [evo_orglegalform]
evo_paymentorders(evo_dds_1c: String, evo_name: String, evo_paydate_param: DateParamInput, evo_payment_number_1c: String, evo_paysum: Decimal, statecode: Int, statuscode: Int): [evo_paymentorder] evo_paymentorders(evo_dds_1c: String, evo_name: String, evo_paydate_param: DateParamInput, evo_payment_number_1c: String, evo_paysum: Decimal, statecode: Int, statuscode: Int): [evo_paymentorder]
@ -183,6 +183,10 @@ type evo_request_client {
evo_owner_systemuseridData: systemuser evo_owner_systemuseridData: systemuser
evo_phonecallid: Uuid evo_phonecallid: Uuid
evo_request_clientid: Uuid evo_request_clientid: Uuid
evo_site_email: String
evo_site_name: String
evo_site_telephone: String
evo_site_text: String
evo_statuscodeid: Uuid evo_statuscodeid: Uuid
evo_statuscodeidData: evo_statuscode evo_statuscodeidData: evo_statuscode
evo_storage: String evo_storage: String
@ -258,6 +262,7 @@ type incidentGraphQL {
evo_accountid_new: Uuid evo_accountid_new: Uuid
evo_cession_opportunityid: Uuid evo_cession_opportunityid: Uuid
evo_contracts: [evo_contract] evo_contracts: [evo_contract]
evo_creat_request_client: Uuid
evo_fast_advice: Boolean evo_fast_advice: Boolean
evo_plan_execut_date: DateTime evo_plan_execut_date: DateTime
evo_statuscodeid: Uuid evo_statuscodeid: Uuid
@ -337,6 +342,7 @@ type evo_debtwork_contract {
evo_termination_com_lawyer: String evo_termination_com_lawyer: String
evo_termination_lawyer_systemuserid: Uuid evo_termination_lawyer_systemuserid: Uuid
evo_termination_lawyer_systemuseridData: systemuser evo_termination_lawyer_systemuseridData: systemuser
evo_termination_notice_date: DateTime
evo_termination_reason_terms: Int evo_termination_reason_terms: Int
evo_termination_reason_terms_doc: String evo_termination_reason_terms_doc: String
evo_termination_reason_terms_text: String evo_termination_reason_terms_text: String
@ -399,6 +405,7 @@ type account {
evo_div_12month: Boolean evo_div_12month: Boolean
evo_documents(evo_documenttypeid_param: GuidParamInput, latestversion: Boolean = true): [evo_document] evo_documents(evo_documenttypeid_param: GuidParamInput, latestversion: Boolean = true): [evo_document]
evo_economic_security_systemuserid: Uuid evo_economic_security_systemuserid: Uuid
evo_edos: [evo_edo]
evo_employee_count: Int evo_employee_count: Int
evo_fingap_number_rules: Int evo_fingap_number_rules: Int
evo_fin_department_accountid: Uuid evo_fin_department_accountid: Uuid
@ -415,7 +422,6 @@ type account {
evo_ifns_code_branch: String evo_ifns_code_branch: String
evo_ifns_name: String evo_ifns_name: String
evo_inn: String evo_inn: String
evo_insurance_agent_accountid: Uuid
evo_invoice_number_fix: String evo_invoice_number_fix: String
evo_invoice_number_rules: Int evo_invoice_number_rules: Int
evo_kpp: String evo_kpp: String
@ -444,7 +450,6 @@ type account {
evo_state_liquidation_date: DateTime evo_state_liquidation_date: DateTime
evo_state_registration_date: DateTime evo_state_registration_date: DateTime
evo_state_status: Int evo_state_status: Int
evo_storage: String
evo_subsidies(statecode: Int): [evo_subsidy] evo_subsidies(statecode: Int): [evo_subsidy]
evo_supplier_type: Int evo_supplier_type: Int
evo_tax_system: Int evo_tax_system: Int
@ -544,16 +549,23 @@ type evo_addproduct_type {
evo_description: String evo_description: String
evo_equipment_1_name: String evo_equipment_1_name: String
evo_equip_cost: Decimal evo_equip_cost: Decimal
evo_evokasko_calc_type: Int
evo_gibdd_region: Boolean evo_gibdd_region: Boolean
evo_graph_price: Decimal evo_graph_price: Decimal
evo_graph_price_withoutnds: Decimal evo_graph_price_withoutnds: Decimal
evo_helpcard_type: Int evo_helpcard_type: Int
evo_id: String evo_id: String
evo_leasingobject_types(statecode: Int): [evo_leasingobject_type] evo_leasingobject_types(statecode: Int): [evo_leasingobject_type]
evo_loss_kv: Decimal
evo_max_age: Int evo_max_age: Int
evo_max_first_payment_perc: Decimal
evo_max_period: Decimal evo_max_period: Decimal
evo_max_price: Decimal
evo_min_age: Int evo_min_age: Int
evo_min_first_payment_perc: Decimal
evo_min_period: Decimal evo_min_period: Decimal
evo_min_price: Decimal
evo_models: [evo_model]
evo_name: String evo_name: String
evo_nsib_limit: Decimal evo_nsib_limit: Decimal
evo_planpayments(statecode: Int): [evo_planpayment] evo_planpayments(statecode: Int): [evo_planpayment]
@ -635,6 +647,7 @@ type evo_insurance_period {
evo_dateto: DateTime evo_dateto: DateTime
evo_dgo_price: Decimal evo_dgo_price: Decimal
evo_elt_id: String evo_elt_id: String
evo_evokasko_price: Decimal
evo_exp_drivers: Int evo_exp_drivers: Int
evo_franchise: Decimal evo_franchise: Decimal
evo_id: String evo_id: String
@ -656,6 +669,7 @@ type evo_insurance_period {
evo_invoice_date: DateTime evo_invoice_date: DateTime
evo_kasko_price: Decimal evo_kasko_price: Decimal
evo_leasingobjectid: Uuid evo_leasingobjectid: Uuid
evo_loss_kv: Decimal
evo_mobile_discount: Boolean evo_mobile_discount: Boolean
evo_mobile_discount_factor: Decimal evo_mobile_discount_factor: Decimal
evo_mobile_discount_rub: Decimal evo_mobile_discount_rub: Decimal
@ -702,6 +716,9 @@ type evo_addproduct {
evo_addproductnumberidData: evo_addproductnumber evo_addproductnumberidData: evo_addproductnumber
evo_addproduct_typeid: Uuid evo_addproduct_typeid: Uuid
evo_addproduct_typeidData: evo_addproduct_type evo_addproduct_typeidData: evo_addproduct_type
evo_beacon1_imei: String
evo_beacon2_imei: String
evo_connect_telematics_evo_addproductid: Uuid
evo_contractid: Uuid evo_contractid: Uuid
evo_cs_actualdate: DateTime evo_cs_actualdate: DateTime
evo_date_instal: DateTime evo_date_instal: DateTime
@ -950,6 +967,7 @@ type opportunity {
evo_assignor_accountid: Uuid evo_assignor_accountid: Uuid
evo_businessunitid: Uuid evo_businessunitid: Uuid
evo_businessunitidData: businessunit evo_businessunitidData: businessunit
evo_cession_incidentid: Uuid
evo_check_type: [Int!] evo_check_type: [Int!]
evo_check_type_fact: [Int!] evo_check_type_fact: [Int!]
evo_client_riskid: Uuid evo_client_riskid: Uuid
@ -1035,6 +1053,7 @@ type quote {
evo_agent_accountid: Uuid evo_agent_accountid: Uuid
evo_agent_reward_conditionid: Uuid evo_agent_reward_conditionid: Uuid
evo_agent_reward_summ: Decimal evo_agent_reward_summ: Decimal
evo_agent_reward_tech: Decimal
evo_agent_reward_total: Decimal evo_agent_reward_total: Decimal
evo_age_drivers: Int evo_age_drivers: Int
evo_another_payments: Decimal evo_another_payments: Decimal
@ -1048,6 +1067,7 @@ type quote {
evo_broker_accountid: Uuid evo_broker_accountid: Uuid
evo_broker_reward_conditionid: Uuid evo_broker_reward_conditionid: Uuid
evo_broker_reward_summ: Decimal evo_broker_reward_summ: Decimal
evo_broker_reward_tech: Decimal
evo_broker_reward_total: Decimal evo_broker_reward_total: Decimal
evo_calc_irr: Decimal evo_calc_irr: Decimal
evo_calc_profit: Decimal evo_calc_profit: Decimal
@ -1070,8 +1090,10 @@ type quote {
evo_dealer_broker_accountid: Uuid evo_dealer_broker_accountid: Uuid
evo_dealer_broker_reward_conditionid: Uuid evo_dealer_broker_reward_conditionid: Uuid
evo_dealer_broker_reward_summ: Decimal evo_dealer_broker_reward_summ: Decimal
evo_dealer_broker_reward_tech: Decimal
evo_dealer_broker_reward_total: Decimal evo_dealer_broker_reward_total: Decimal
evo_dealer_person_accountid: Uuid evo_dealer_person_accountid: Uuid
evo_dealer_person_reward_tech: Decimal
evo_dealer_reward_conditionid: Uuid evo_dealer_reward_conditionid: Uuid
evo_dealer_reward_summ: Decimal evo_dealer_reward_summ: Decimal
evo_dealer_reward_total: Decimal evo_dealer_reward_total: Decimal
@ -1093,6 +1115,7 @@ type quote {
evo_double_agent_accountid: Uuid evo_double_agent_accountid: Uuid
evo_double_agent_reward_conditionid: Uuid evo_double_agent_reward_conditionid: Uuid
evo_double_agent_reward_summ: Decimal evo_double_agent_reward_summ: Decimal
evo_double_agent_reward_tech: Decimal
evo_double_agent_reward_total: Decimal evo_double_agent_reward_total: Decimal
evo_economic: Decimal evo_economic: Decimal
evo_economic_with_nds: Decimal evo_economic_with_nds: Decimal
@ -1102,6 +1125,9 @@ type quote {
evo_equipmentid: Uuid evo_equipmentid: Uuid
evo_equip_price: Decimal evo_equip_price: Decimal
evo_equity_capital: Decimal evo_equity_capital: Decimal
evo_evokasko_insurer_accountid: Uuid
evo_evokasko_insurer_accountidData: account
evo_evokasko_price: Decimal
evo_exp_drivers: Int evo_exp_drivers: Int
evo_fingap_accountid: Uuid evo_fingap_accountid: Uuid
evo_fingap_bonus_sum: Decimal evo_fingap_bonus_sum: Decimal
@ -1112,6 +1138,7 @@ type quote {
evo_fin_department_accountid: Uuid evo_fin_department_accountid: Uuid
evo_fin_department_reward_conditionid: Uuid evo_fin_department_reward_conditionid: Uuid
evo_fin_department_reward_summ: Decimal evo_fin_department_reward_summ: Decimal
evo_fin_department_reward_tech: Decimal
evo_fin_department_reward_total: Decimal evo_fin_department_reward_total: Decimal
evo_first_dgo_price: Decimal evo_first_dgo_price: Decimal
evo_first_kasko_accountid: Uuid evo_first_kasko_accountid: Uuid
@ -1185,6 +1212,7 @@ type quote {
evo_lessor_bank_detailsid: Uuid evo_lessor_bank_detailsid: Uuid
evo_loan_appraisalid: Uuid evo_loan_appraisalid: Uuid
evo_logid: Uuid evo_logid: Uuid
evo_loss_kv: Decimal
evo_max_mass: Decimal evo_max_mass: Decimal
evo_max_price_change: Decimal evo_max_price_change: Decimal
evo_max_speed: Decimal evo_max_speed: Decimal
@ -1543,7 +1571,6 @@ type evo_request_payment {
evo_finegibddidData: evo_finegibdd evo_finegibddidData: evo_finegibdd
evo_id: String evo_id: String
evo_inn: String evo_inn: String
evo_insurance_addcontractid: Uuid
evo_insurance_periodid: Uuid evo_insurance_periodid: Uuid
evo_insurance_policyid: Uuid evo_insurance_policyid: Uuid
evo_insurance_policyidData: evo_insurance_policy evo_insurance_policyidData: evo_insurance_policy
@ -1603,6 +1630,7 @@ type evo_contract {
evo_agent_reward: Decimal evo_agent_reward: Decimal
evo_agent_reward_conditionid: Uuid evo_agent_reward_conditionid: Uuid
evo_agent_reward_summ: Decimal evo_agent_reward_summ: Decimal
evo_agent_reward_tech: Decimal
evo_agent_service_list: [Int!] evo_agent_service_list: [Int!]
evo_approvallogs: [evo_approvallog] evo_approvallogs: [evo_approvallog]
evo_balance_holder: Int evo_balance_holder: Int
@ -1615,6 +1643,7 @@ type evo_contract {
evo_broker_reward: Decimal evo_broker_reward: Decimal
evo_broker_reward_conditionid: Uuid evo_broker_reward_conditionid: Uuid
evo_broker_reward_summ: Decimal evo_broker_reward_summ: Decimal
evo_broker_reward_tech: Decimal
evo_broker_service_list: [Int!] evo_broker_service_list: [Int!]
evo_businessunitid: Uuid evo_businessunitid: Uuid
evo_calc_irr: Decimal evo_calc_irr: Decimal
@ -1641,6 +1670,7 @@ type evo_contract {
evo_dealer_broker_reward: Decimal evo_dealer_broker_reward: Decimal
evo_dealer_broker_reward_conditionid: Uuid evo_dealer_broker_reward_conditionid: Uuid
evo_dealer_broker_reward_summ: Decimal evo_dealer_broker_reward_summ: Decimal
evo_dealer_broker_reward_tech: Decimal
evo_dealer_broker_service_list: [Int!] evo_dealer_broker_service_list: [Int!]
evo_dealer_person_accountid: Uuid evo_dealer_person_accountid: Uuid
evo_dealer_person_accountidData: account evo_dealer_person_accountidData: account
@ -1648,6 +1678,7 @@ type evo_contract {
evo_dealer_person_reward: Decimal evo_dealer_person_reward: Decimal
evo_dealer_person_reward_conditionid: Uuid evo_dealer_person_reward_conditionid: Uuid
evo_dealer_person_reward_summ: Decimal evo_dealer_person_reward_summ: Decimal
evo_dealer_person_reward_tech: Decimal
evo_dealer_person_service_list: [Int!] evo_dealer_person_service_list: [Int!]
evo_debtwork_contractid: Uuid evo_debtwork_contractid: Uuid
evo_debtwork_contractidData: evo_debtwork_contract evo_debtwork_contractidData: evo_debtwork_contract
@ -1656,7 +1687,6 @@ type evo_contract {
evo_debt_penalty_fee: Decimal evo_debt_penalty_fee: Decimal
evo_debt_total: Decimal evo_debt_total: Decimal
evo_delay_days_count: Int evo_delay_days_count: Int
evo_delay_period: DateTime
evo_director_bonus: Decimal evo_director_bonus: Decimal
evo_director_fingap_bonus: Decimal evo_director_fingap_bonus: Decimal
evo_director_nsib_bonus: Decimal evo_director_nsib_bonus: Decimal
@ -1672,6 +1702,7 @@ type evo_contract {
evo_double_agent_reward: Decimal evo_double_agent_reward: Decimal
evo_double_agent_reward_conditionid: Uuid evo_double_agent_reward_conditionid: Uuid
evo_double_agent_reward_summ: Decimal evo_double_agent_reward_summ: Decimal
evo_double_agent_reward_tech: Decimal
evo_double_agent_service_list: [Int!] evo_double_agent_service_list: [Int!]
evo_economic: Decimal evo_economic: Decimal
evo_economic_actual: Decimal evo_economic_actual: Decimal
@ -1691,6 +1722,7 @@ type evo_contract {
evo_fin_department_reward: Decimal evo_fin_department_reward: Decimal
evo_fin_department_reward_conditionid: Uuid evo_fin_department_reward_conditionid: Uuid
evo_fin_department_reward_summ: Decimal evo_fin_department_reward_summ: Decimal
evo_fin_department_reward_tech: Decimal
evo_fin_department_service_list: [Int!] evo_fin_department_service_list: [Int!]
evo_first_payment_fact: Decimal evo_first_payment_fact: Decimal
evo_first_payment_fact_date: DateTime evo_first_payment_fact_date: DateTime
@ -1732,7 +1764,6 @@ type evo_contract {
evo_name: String evo_name: String
evo_nds_in_price_supplier_currency: Decimal evo_nds_in_price_supplier_currency: Decimal
evo_nds_perc: Decimal evo_nds_perc: Decimal
evo_nearest_payment_num: String
evo_net_irr: Decimal evo_net_irr: Decimal
evo_niatinception_msfo: Decimal evo_niatinception_msfo: Decimal
evo_niatinception_msfo_actual: Decimal evo_niatinception_msfo_actual: Decimal
@ -1760,7 +1791,6 @@ type evo_contract {
evo_rate: Decimal evo_rate: Decimal
evo_rateid: Uuid evo_rateid: Uuid
evo_reason_change_account: Int evo_reason_change_account: Int
evo_redemption_archive_date: DateTime
evo_ref_opportunityid: Uuid evo_ref_opportunityid: Uuid
evo_region_director_bonus: Decimal evo_region_director_bonus: Decimal
evo_region_director_fingap_bonus: Decimal evo_region_director_fingap_bonus: Decimal
@ -2250,6 +2280,7 @@ type evo_addcontract {
evo_add_region_director_bonus: Decimal evo_add_region_director_bonus: Decimal
evo_agent_reward: Decimal evo_agent_reward: Decimal
evo_agent_reward_summ: Decimal evo_agent_reward_summ: Decimal
evo_agent_reward_tech: Decimal
evo_age_drivers: Int evo_age_drivers: Int
evo_age_drivers_new: Int evo_age_drivers_new: Int
evo_approv_business_analyst: Boolean evo_approv_business_analyst: Boolean
@ -2265,6 +2296,7 @@ type evo_addcontract {
evo_base_new: String evo_base_new: String
evo_broker_reward: Decimal evo_broker_reward: Decimal
evo_broker_reward_summ: Decimal evo_broker_reward_summ: Decimal
evo_broker_reward_tech: Decimal
evo_businessunitid: Uuid evo_businessunitid: Uuid
evo_calculation_method: Int evo_calculation_method: Int
evo_calculator_type: Int evo_calculator_type: Int
@ -2293,7 +2325,6 @@ type evo_addcontract {
evo_date_addcontract: DateTime evo_date_addcontract: DateTime
evo_date_calculation_done: DateTime evo_date_calculation_done: DateTime
evo_date_offset_change: Boolean evo_date_offset_change: Boolean
evo_date_offset_type: Int
evo_deadline_date: DateTime evo_deadline_date: DateTime
evo_dealer_broker_accountid: Uuid evo_dealer_broker_accountid: Uuid
evo_dealer_broker_accountid_new: Uuid evo_dealer_broker_accountid_new: Uuid
@ -2303,6 +2334,7 @@ type evo_addcontract {
evo_dealer_broker_reward_new: Decimal evo_dealer_broker_reward_new: Decimal
evo_dealer_broker_reward_summ: Decimal evo_dealer_broker_reward_summ: Decimal
evo_dealer_broker_reward_summ_new: Decimal evo_dealer_broker_reward_summ_new: Decimal
evo_dealer_broker_reward_tech: Decimal
evo_dealer_person_accountid: Uuid evo_dealer_person_accountid: Uuid
evo_dealer_person_accountid_new: Uuid evo_dealer_person_accountid_new: Uuid
evo_dealer_person_reward: Decimal evo_dealer_person_reward: Decimal
@ -2311,9 +2343,9 @@ type evo_addcontract {
evo_dealer_person_reward_new: Decimal evo_dealer_person_reward_new: Decimal
evo_dealer_person_reward_summ: Decimal evo_dealer_person_reward_summ: Decimal
evo_dealer_person_reward_summ_new: Decimal evo_dealer_person_reward_summ_new: Decimal
evo_dealer_person_reward_tech: Decimal
evo_deviation_investments_withoutnds: Decimal evo_deviation_investments_withoutnds: Decimal
evo_deviation_irr: Decimal evo_deviation_irr: Decimal
evo_deviation_irr_change: Boolean
evo_dgo_price: Decimal evo_dgo_price: Decimal
evo_dgo_price_new: Decimal evo_dgo_price_new: Decimal
evo_director_bonus: Decimal evo_director_bonus: Decimal
@ -2325,6 +2357,7 @@ type evo_addcontract {
evo_dog_credit_new: Decimal evo_dog_credit_new: Decimal
evo_double_agent_reward: Decimal evo_double_agent_reward: Decimal
evo_double_agent_reward_summ: Decimal evo_double_agent_reward_summ: Decimal
evo_double_agent_reward_tech: Decimal
evo_driving_axle: String evo_driving_axle: String
evo_driving_axle_new: String evo_driving_axle_new: String
evo_early_change_discount: Boolean evo_early_change_discount: Boolean
@ -2357,6 +2390,7 @@ type evo_addcontract {
evo_fin_department_reward_new: Decimal evo_fin_department_reward_new: Decimal
evo_fin_department_reward_summ: Decimal evo_fin_department_reward_summ: Decimal
evo_fin_department_reward_summ_new: Decimal evo_fin_department_reward_summ_new: Decimal
evo_fin_department_reward_tech: Decimal
evo_fix_last_payment: Boolean evo_fix_last_payment: Boolean
evo_franchise: Decimal evo_franchise: Decimal
evo_franchise_new: Decimal evo_franchise_new: Decimal
@ -2550,13 +2584,14 @@ type email {
evo_accountid: Uuid evo_accountid: Uuid
modifiedon: DateTime modifiedon: DateTime
regardingobjectid_account: Uuid regardingobjectid_account: Uuid
regardingobjectid_evo_addcontract: Uuid
regardingobjectid_evo_contract: Uuid regardingobjectid_evo_contract: Uuid
regardingobjectid_evo_insurance_period: Uuid regardingobjectid_evo_insurance_period: Uuid
regardingobjectid_evo_insurance_policy: Uuid regardingobjectid_evo_insurance_policy: Uuid
regardingobjectid_evo_insurance_policyData: evo_insurance_policy regardingobjectid_evo_insurance_policyData: evo_insurance_policy
regardingobjectid_evo_list: Uuid regardingobjectid_evo_list: Uuid
regardingobjectid_incident: Uuid
regardingobjectid_opportunity: Uuid regardingobjectid_opportunity: Uuid
statecode: Int
statuscode: Int statuscode: Int
subject: String subject: String
templateid: Uuid templateid: Uuid
@ -2714,6 +2749,31 @@ type team {
toObjectString: String toObjectString: String
} }
type evo_edo {
createdon: DateTime
evo_accountid: Uuid
evo_accountidData: account
evo_activation_status: Int
evo_activation_statusname: String
evo_box_edoid: Uuid
evo_box_edoidData: evo_edo
evo_box_id: String
evo_box_name: String
evo_documentid: Uuid
evo_edoid: Uuid
evo_edo_status: Int
evo_edo_statusname: String
evo_edo_type: Int
evo_edo_typeename: String
evo_invite_crm_status: Int
evo_invite_crm_statusname: String
evo_name: String
evo_statuscodeid: Uuid
evo_statuscodeidData: evo_statuscode
modifiedon: DateTime
toObjectString: String
}
type evo_insurance_policy { type evo_insurance_policy {
createdon: DateTime createdon: DateTime
evo_accountid: Uuid evo_accountid: Uuid

View File

@ -402,6 +402,13 @@ export interface IEvoAddproductType extends BaseEntity {
evo_gibdd_region?: boolean; evo_gibdd_region?: boolean;
evo_type_calc_cerebellum?: number; evo_type_calc_cerebellum?: number;
evo_addproduct_types?: IEvoAddproductType[]; evo_addproduct_types?: IEvoAddproductType[];
evo_evokasko_calc_type?: number;
evo_min_price?: number;
evo_max_price?: number;
evo_loss_kv?: number;
evo_min_first_payment_perc?: number;
evo_max_first_payment_perc?: number;
evo_models?: IEvoModel;
} }
export interface IEvoTarif extends BaseEntity { export interface IEvoTarif extends BaseEntity {

View File

@ -119,6 +119,7 @@ export type ValuesNames =
| 'fuelCard' | 'fuelCard'
| 'minPriceChange' | 'minPriceChange'
| 'vin' | 'vin'
| 'leasingWithoutKasko'
| 'resultTotalGraphwithNDS' | 'resultTotalGraphwithNDS'
| 'resultPlPrice' | 'resultPlPrice'
| 'resultPriceUpPr' | 'resultPriceUpPr'