diff --git a/apps/web/Components/Output/Results/config.ts b/apps/web/Components/Output/Results/config.ts index 58def26..388eea1 100644 --- a/apps/web/Components/Output/Results/config.ts +++ b/apps/web/Components/Output/Results/config.ts @@ -7,6 +7,7 @@ export const titles: Record = { _resultContractEconomy: 'Экономика', _resultContractEconomyWithVAT: 'Экономика, с НДС', _resultPi: 'PI', + _resultPiRepayment: 'PI для досрочки', _resultSumCredit: 'Сумма кредита', _resultSumCreditPayment: 'Сумма платежей по кредиту', _resultVatRecoverable: 'НДС к возмещению', @@ -46,6 +47,7 @@ export const formatters = { _resultContractEconomy: moneyFormatter, _resultContractEconomyWithVAT: moneyFormatter, _resultPi: percentFormatter, + _resultPiRepayment: percentFormatter, _resultSumCredit: moneyFormatter, _resultSumCreditPayment: moneyFormatter, _resultVatRecoverable: moneyFormatter, @@ -74,6 +76,7 @@ export const elements: Array = [ '_resultContractEconomy', '_resultContractEconomyWithVAT', '_resultPi', + '_resultPiRepayment', '_resultSumCredit', '_resultSumCreditPayment', '_resultVatRecoverable', diff --git a/apps/web/api/core/types/calculate.ts b/apps/web/api/core/types/calculate.ts index 1ce45e1..8676cd9 100644 --- a/apps/web/api/core/types/calculate.ts +++ b/apps/web/api/core/types/calculate.ts @@ -111,6 +111,7 @@ export const PreparedValuesSchema = z.object({ transTax: z.number(), transportTaxGr: z.number(), transportTaxGrYear: z.number(), + typeRepayment: z.number(), }); export type PreparedValues = z.infer; @@ -399,6 +400,7 @@ const ColumnsSchema = z.object({ values: z.number().array(), }), sumRepaymentColumn: z.object({ + pi: z.number(), values: z.number().array(), }), sumVATCreditColumn: z.object({ diff --git a/apps/web/config/schema/results.ts b/apps/web/config/schema/results.ts index 59f8ba7..f5f5b2c 100644 --- a/apps/web/config/schema/results.ts +++ b/apps/web/config/schema/results.ts @@ -4,6 +4,7 @@ export const ResultValuesSchema = z.object({ _resultContractEconomy: z.number(), _resultContractEconomyWithVAT: z.number(), _resultPi: z.number(), + _resultPiRepayment: z.number(), _resultSumCredit: z.number(), _resultSumCreditPayment: z.number(), _resultVatRecoverable: z.number(), diff --git a/apps/web/server/routers/calculate/lib/request.ts b/apps/web/server/routers/calculate/lib/request.ts index 3d261ab..6aeffd9 100644 --- a/apps/web/server/routers/calculate/lib/request.ts +++ b/apps/web/server/routers/calculate/lib/request.ts @@ -1237,6 +1237,13 @@ export async function createRequestData({ async transportTaxGrYear() { return values.vehicleTaxInYear; }, + async typeRepayment() { + if (values.graphType === 100_000_000) { + return 100_000_000; + } + + return 0; + }, }; const preparedValuesResult = await Promise.all( diff --git a/apps/web/server/routers/calculate/lib/transform.ts b/apps/web/server/routers/calculate/lib/transform.ts index b86a397..2ea6296 100644 --- a/apps/web/server/routers/calculate/lib/transform.ts +++ b/apps/web/server/routers/calculate/lib/transform.ts @@ -42,6 +42,7 @@ export function transformCalculateResults({ _resultContractEconomy: postValues.contractEconomy, _resultContractEconomyWithVAT: postValues.contractEconomyWithVAT, _resultPi: columns?.piColumn.values[0], + _resultPiRepayment: columns?.sumRepaymentColumn.pi, _resultSumCredit: columns?.sumCreditColumn.values[1], _resultSumCreditPayment: columns?.creditPaymentColumn.values[0], _resultVatRecoverable: columns?.vatRecoverableColumn.values[0], diff --git a/apps/web/stores/results/default-values.ts b/apps/web/stores/results/default-values.ts index acadc9f..529a170 100644 --- a/apps/web/stores/results/default-values.ts +++ b/apps/web/stores/results/default-values.ts @@ -4,6 +4,7 @@ export const defaultResultsValues: ResultValues = { _resultContractEconomy: 0, _resultContractEconomyWithVAT: 0, _resultPi: 0, + _resultPiRepayment: 0, _resultSumCredit: 0, _resultSumCreditPayment: 0, _resultVatRecoverable: 0,