feat(SW-70): Create TRPC route to get rates
This commit is contained in:
@@ -2,9 +2,10 @@ import * as api from "@/lib/api"
|
||||
import { badRequestError } from "@/server/errors/trpc"
|
||||
import { publicProcedure, router } from "@/server/trpc"
|
||||
|
||||
import { getHotelInputSchema } from "./input"
|
||||
import { getHotelDataSchema } from "./output"
|
||||
import { getHotelInputSchema, getRatesInputSchema } from "./input"
|
||||
import { getHotelDataSchema, getRatesSchema } from "./output"
|
||||
import tempHotelData from "./tempHotelData.json"
|
||||
import tempRatesData from "./tempRatesData.json"
|
||||
import { toApiLang } from "./utils"
|
||||
|
||||
export const hotelQueryRouter = router({
|
||||
@@ -49,4 +50,25 @@ export const hotelQueryRouter = router({
|
||||
|
||||
return validatedHotelData.data.data.attributes
|
||||
}),
|
||||
getRates: publicProcedure
|
||||
.input(getRatesInputSchema)
|
||||
.query(async ({ input, ctx }) => {
|
||||
// TODO: Do a real API call when the endpoint is ready
|
||||
// const { hotelId } = input
|
||||
|
||||
// const params = new URLSearchParams()
|
||||
// const apiLang = toApiLang(language)
|
||||
// params.set("hotelId", hotelId.toString())
|
||||
// params.set("language", apiLang)
|
||||
|
||||
const validatedHotelData = getRatesSchema.safeParse(tempRatesData)
|
||||
|
||||
if (!validatedHotelData.success) {
|
||||
console.info(`Get Individual Rates Data - Verified Data Error`)
|
||||
console.error(validatedHotelData.error)
|
||||
throw badRequestError()
|
||||
}
|
||||
|
||||
return validatedHotelData.data
|
||||
}),
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user