import { HTTPNoBody } from '@fastify-modular/route'; import { pito } from 'pito'; import { NeedLogin } from '../defines'; // ========================================================================== export const ListProductMatchOption = pito.Obj({ // limit: pito.Opt(pito.Int({ minimum: 1 })), // offset: pito.Opt(pito.Int({ maximum: 100 })), pageSize: pito.Opt(pito.Int({ minimum: 0, maximum: 100 })), pageNo : pito.Opt(pito.Int({ minimum: 1 })), }); export type ListProductMatchOption = pito.Type; // ========================================================================== export const ListProductMatchOutput = pito.Obj({ found: pito.Arr( pito.Obj({ productId : pito.Num(), fkUserSeller : pito.Num(), matchSeq : pito.Num(), ownerMatchYn : pito.Str(), sellerMatchYn: pito.Str(), ownerUserId : pito.Num(), }), ), }); export type ListProductMatchOutput = pito.Type; // ========================================================================== export const ListProductMatch = HTTPNoBody('GET', '/api/v1/product/product-match', 'product') .query(ListProductMatchOption) .response(ListProductMatchOutput) .presets(NeedLogin) .build(); // ==========================================================================