create-kp: temp fix pass fingap row

This commit is contained in:
vchikalkin 2023-04-19 22:18:11 +03:00
parent 2029397158
commit 653b154f2a
2 changed files with 14 additions and 2 deletions

View File

@ -21,7 +21,7 @@ export const RequestCreateKPSchema = z.object({
), ),
domainName: z.string(), domainName: z.string(),
finGAP: RiskSchema.array(), finGAP: RiskSchema.array(),
insurance: RowSchema.array(), insurance: RowSchema.extend({ key: z.string() }).array(),
}); });
export type RequestCreateKP = z.infer<typeof RequestCreateKPSchema>; export type RequestCreateKP = z.infer<typeof RequestCreateKPSchema>;

View File

@ -13,6 +13,7 @@ import {
} from './types'; } from './types';
import { calculate } from '@/api/core/query'; import { calculate } from '@/api/core/query';
import { createKP } from '@/api/crm/query'; import { createKP } from '@/api/crm/query';
import type { RequestCreateKP } from '@/api/crm/types';
import type { User } from '@/api/user/types'; import type { User } from '@/api/user/types';
import initializeApollo from '@/apollo/client'; import initializeApollo from '@/apollo/client';
import defaultValues from '@/config/default-values'; import defaultValues from '@/config/default-values';
@ -133,7 +134,7 @@ export const quoteRouter = router({
}; };
} }
const createKPResult = await createKP({ const requestCreateKP = compatRequestCreateKP({
domainName: user.domainName, domainName: user.domainName,
finGAP: input.fingap, finGAP: input.fingap,
insurance: Object.values(input.insurance.values), insurance: Object.values(input.insurance.values),
@ -145,6 +146,8 @@ export const quoteRouter = router({
}, },
}); });
const createKPResult = await createKP(requestCreateKP);
if (createKPResult.success === false) { if (createKPResult.success === false) {
return { return {
success: false, success: false,
@ -171,6 +174,15 @@ export const quoteRouter = router({
}), }),
}); });
function compatRequestCreateKP(request: RequestCreateKP) {
const fingapIndex = request.insurance.findIndex((x) => x.key === 'fingap');
if (fingapIndex >= 0) {
request.insurance[fingapIndex].key = 'finGAP';
}
return request;
}
async function compatValues( async function compatValues(
values: CalculationValues, values: CalculationValues,
{ apolloClient }: Pick<Context, 'apolloClient'> { apolloClient }: Pick<Context, 'apolloClient'>