Compare commits

...

3 Commits

Author SHA1 Message Date
vchikalkin
13f511a0a0 Добавить валидацию:
Если в списке поля selectDealerBroker есть запись, у которой есть запись evo_reward_condition, у которой evo_reward_condition.evo_agency_agreementid. Обязательная выплата АВ (evo_required_reward) = True, и данная запись не указана в поле selectDealerBroker,

то поле tbxDealerBrokerRewardSumm обводить красной рамкой и выводить ошибку "Согласно Агентскому договору с данным Брокером поставщика обязательна выплата АВ. Заложите АВ в расчет"
2024-09-05 15:53:26 +03:00
vchikalkin
e9b07ed67c в ветке DYN-4514 добавить в текущую реакцию еще 2 типа ПЛ:
Если Тип предмета лизингаselectLeaseObjectType  = Спецтехника (ID=9) или Погрузчик (ID=6) или Трактор (ID=10) и значение в поле tbxMaxSpeed< 20, то insuredOSAGO = Лизингополучатель (100000000), inscostOSAGO = 0, inscompanyOSAGO = ПРОЧИЕ и закрыты для редактирования
2024-09-05 13:43:42 +03:00
vchikalkin
599baf703b в ветке DYN-4514 добавить в текущую проверку еще 2 типа ПЛ:
в insurance выделяем selectLeaseObjectType

Если Тип предмета лизинга selectLeaseObjectType = Спецтехника (ID=9) или Погрузчик (ID=6) или Трактор (ID=10) и значение в поле tbxMaxSpeed< 20 и insuredOSAGO = Лизингодатель (100000001), то выводить сообщение "Нельзя включать в график ОСАГО по Спецтехнике, т.к. полис не требуется"
2024-09-05 13:41:52 +03:00
3 changed files with 22 additions and 3 deletions

View File

@ -330,7 +330,11 @@ export function common({ store, apolloClient }: ProcessContext) {
query: CRMTypes.GetInsuranceCompaniesDocument,
});
if (evo_leasingobject_type?.evo_id === '9' && maxSpeed < 20) {
if (
evo_leasingobject_type?.evo_id &&
['9', '6', '10'].includes(evo_leasingobject_type.evo_id) &&
maxSpeed < 20
) {
const otherInsuranceCompany = accounts?.find(
(x) => x?.evo_type_ins_policy === null && x.label?.includes('ПРОЧИЕ')
);

View File

@ -256,7 +256,7 @@ export function createValidationSchema({ apolloClient }: ValidationContext) {
if (
evo_leasingobject_type?.evo_id &&
['9'].includes(evo_leasingobject_type?.evo_id) &&
['9', '6', '10'].includes(evo_leasingobject_type?.evo_id) &&
maxSpeed < 20 &&
insurance.values.osago.insured === 100_000_001
) {

View File

@ -383,8 +383,23 @@ export function createValidationSchema(context: ValidationContext) {
sumFieldName: 'tbxDealerRewardSumm',
});
let evo_broker_accountid: string | null = null;
if (dealerPerson) {
const {
data: { dealer_person },
} = await apolloClient.query({
query: CRMTypes.GetDealerPersonDocument,
variables: {
dealerPersonId: dealerPerson,
},
});
evo_broker_accountid = dealer_person?.evo_broker_accountid || null;
}
await validateRewardSum({
agentid: dealerBroker,
agentid: dealerBroker || evo_broker_accountid,
conditionId: dealerBrokerRewardCondition,
sum: dealerBrokerRewardSumm,
sumFieldName: 'tbxDealerBrokerRewardSumm',