На изменение параметра Мощность л.с. leaseObjectMotorPower добавить проверку:
если Пересчете без пересмотра recalcWithRevision = True и если в Предложении selectQuote в поле "КП по итогам КК" = Да и текущее значение Мощность л.с. leaseObjectMotorPower минус Мощность л.с. quote.evo_power из Предложения , которое указано в Предложении selectQuote в поле Одобренное КА quote.evo_accept_quoteid, больше 10 по модулю, то выводить сообщение "Нельзя корректировать мощность более чем на 10 л.с. после рассмотрения предложения на КК" На изменение параметра Объем двигателя engineVolume добавить проверку: если Пересчете без пересмотра recalcWithRevision = True и если в Предложении selectQuote в поле "КП по итогам КК" = Да и текущее значение Объем двигателя engineVolume минус Объем двигателя, л quote.evo_engine_volume из Предложения , которое указано в Предложении selectQuote в поле Одобренное КА quote.evo_accept_quoteid, больше 0.1 по модулю, то выводить сообщение "Нельзя корректировать объем двигателя более чем на 0.1 л после рассмотрения предложения на КК"
This commit is contained in:
parent
af5c9cb061
commit
ba22659578
@ -113,6 +113,8 @@ query GetQuote($quoteId: Uuid!) {
|
||||
evo_committee_quote
|
||||
evo_msfo_irr
|
||||
evo_accept_quoteid
|
||||
evo_power
|
||||
evo_engine_volume
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,6 +1,7 @@
|
||||
/* eslint-disable sonarjs/cognitive-complexity */
|
||||
/* eslint-disable complexity */
|
||||
import type { ValidationContext } from '../types';
|
||||
import type { Elements } from '@/Components/Calculation/config/map/values';
|
||||
import ValuesSchema from '@/config/schema/values';
|
||||
import { MAX_MASS, VEHICLE_SEATS } from '@/constants/values';
|
||||
import * as CRMTypes from '@/graphql/crm.types';
|
||||
@ -18,6 +19,8 @@ export function createValidationSchema({ apolloClient }: ValidationContext) {
|
||||
lastPaymentPerc: true,
|
||||
leaseObjectCategory: true,
|
||||
leaseObjectCount: true,
|
||||
engineVolume: true,
|
||||
leaseObjectMotorPower: true,
|
||||
leaseObjectPriceWthtVAT: true,
|
||||
leaseObjectUsed: true,
|
||||
leaseObjectYear: true,
|
||||
@ -49,6 +52,8 @@ export function createValidationSchema({ apolloClient }: ValidationContext) {
|
||||
leaseObjectCategory,
|
||||
partialVAT,
|
||||
IRR_Perc,
|
||||
leaseObjectMotorPower,
|
||||
engineVolume,
|
||||
},
|
||||
ctx
|
||||
) => {
|
||||
@ -237,8 +242,32 @@ export function createValidationSchema({ apolloClient }: ValidationContext) {
|
||||
ctx.addIssue({
|
||||
code: z.ZodIssueCode.custom,
|
||||
message: 'Нельзя увеличивать IRR после рассмотрения предложения на КК',
|
||||
path: ['tbxIRR_Perc'],
|
||||
path: ['tbxIRR_Perc'] as Elements[],
|
||||
});
|
||||
|
||||
if (
|
||||
accept_quote?.evo_power &&
|
||||
Math.abs(leaseObjectMotorPower - accept_quote.evo_power) > 10
|
||||
) {
|
||||
ctx.addIssue({
|
||||
code: z.ZodIssueCode.custom,
|
||||
message:
|
||||
'Нельзя корректировать мощность более чем на 10 л.с. после рассмотрения предложения на КК',
|
||||
path: ['tbxLeaseObjectMotorPower'] as Elements[],
|
||||
});
|
||||
}
|
||||
|
||||
if (
|
||||
accept_quote?.evo_engine_volume &&
|
||||
Math.abs(engineVolume - accept_quote.evo_engine_volume) > 0.1
|
||||
) {
|
||||
ctx.addIssue({
|
||||
code: z.ZodIssueCode.custom,
|
||||
message:
|
||||
'Нельзя корректировать объем двигателя более чем на 0.1 л после рассмотрения предложения на КК',
|
||||
path: ['tbxEngineVolume'] as Elements[],
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user