import { HTTPNoBody } from '@fastify-modular/route'; import { pito } from 'pito'; import { PriceType } from '../enums'; // ========================================================================== export const FindTenPriceBySellIdParam = pito.Obj({ sellId: pito.Num(), }); export type FindTenPriceBySellIdParam = pito.Type; // ========================================================================== export const FindTenPriceBySellIdOption = pito.Obj({}); export type FindTenPriceBySellIdOption = pito.Type; // ========================================================================== export const FindTenPriceBySellIdOutput = pito.Uobj('type') .case(PriceType.Monthly, ({ sell: pito.Arr(pito.Obj({ price: pito.Num(), count: pito.Int(), })), buy: pito.Arr(pito.Obj({ price: pito.Num(), count: pito.Int(), })), })) .case(PriceType.Charter, ({ sell: pito.Arr(pito.Obj({ price: pito.Num(), count: pito.Int(), })), buy: pito.Arr(pito.Obj({ price: pito.Num(), count: pito.Int(), })), })) .case(PriceType.Sale, ({ sell: pito.Arr(pito.Obj({ price: pito.Num(), count: pito.Int(), })), buy: pito.Arr(pito.Obj({ price: pito.Num(), count: pito.Int(), })), })) .end(); export type FindTenPriceBySellIdOutput = pito.Type; // ========================================================================== // 월세 * 24 + 보증금 export const FindTenPriceBySellId = HTTPNoBody('GET', '/api/v1/search/find-ten-price-by-sell-id/:sellId', 'search') .params(FindTenPriceBySellIdParam) .query(FindTenPriceBySellIdOption) .response(FindTenPriceBySellIdOutput) .build(); // ==========================================================================