diff --git a/apps/portal/src/server/router/offers/offers.ts b/apps/portal/src/server/router/offers/offers.ts index 625ec775..9aaeb487 100644 --- a/apps/portal/src/server/router/offers/offers.ts +++ b/apps/portal/src/server/router/offers/offers.ts @@ -1,5 +1,5 @@ -import assert from 'assert'; import { z } from 'zod'; +import { TRPCError } from '@trpc/server'; import { createRouter } from '../context'; @@ -227,7 +227,12 @@ export const offersRouter = createRouter().query('list', { ? offer.OffersFullTime?.totalCompensation.value : offer.OffersIntern?.monthlySalary.value; - assert(salary); + if (!salary) { + throw new TRPCError({ + code: 'NOT_FOUND', + message: 'Total Compensation or Salary not found', + }); + } validRecord = validRecord && salary >= input.salaryMin && salary <= input.salaryMax; @@ -266,18 +271,28 @@ export const offersRouter = createRouter().query('list', { ? offer2.OffersFullTime?.totalCompensation.value : offer2.OffersIntern?.monthlySalary.value; - if (salary1 && salary2) { - return salary1 - salary2; + if (!salary1 || !salary2) { + throw new TRPCError({ + code: 'NOT_FOUND', + message: 'Total Compensation or Salary not found', + }); } + + return salary1 - salary2; } if (sortingKey === 'totalYoe') { const yoe1 = offer1.profile.background?.totalYoe; const yoe2 = offer2.profile.background?.totalYoe; - if (yoe1 && yoe2) { - return yoe1 - yoe2; + if (!yoe1 || !yoe2) { + throw new TRPCError({ + code: 'NOT_FOUND', + message: 'Total years of experience not found', + }); } + + return yoe1 - yoe2; } return defaultReturn; @@ -302,18 +317,28 @@ export const offersRouter = createRouter().query('list', { ? offer2.OffersFullTime?.totalCompensation.value : offer2.OffersIntern?.monthlySalary.value; - if (salary1 && salary2) { - return salary2 - salary1; + if (!salary1 || !salary2) { + throw new TRPCError({ + code: 'NOT_FOUND', + message: 'Total Compensation or Salary not found', + }); } + + return salary2 - salary1; } if (sortingKey === 'totalYoe') { const yoe1 = offer1.profile.background?.totalYoe; const yoe2 = offer2.profile.background?.totalYoe; - if (yoe1 && yoe2) { - return yoe2 - yoe1; + if (!yoe1 || !yoe2) { + throw new TRPCError({ + code: 'NOT_FOUND', + message: 'Total years of experience not found', + }); } + + return yoe2 - yoe1; } return defaultReturn;