import { HTTPNoBody } from "@fastify-modular/route"; import { pito } from "pito"; import { NeedLogin } from "../defines"; import { RankType } from "../enums"; // ===================================================================================== export const ListRltrOffcRankParam = pito.Obj({}); export type ListRltrOffcRankParam = pito.Type; // ===================================================================================== export const ListRltrOffcRankOption = pito.Obj({ // key rltrOffcRegsCd : pito.Str(), // where beforeCreatedAt: pito.Opt(pito.Date()), afterCreatedAt : pito.Opt(pito.Date()), rankType : pito.Opt(pito.Enums(RankType)), // page pageNo : pito.Num(), pageSize : pito.Num(), }); export type ListRltrOffcRankOption = pito.Type; // ===================================================================================== export const ListRltrOffcRankInput = pito.Obj({}); export type ListRltrOffcRankInput = pito.Type; // ===================================================================================== export const ListRltrOffcRankOutput = pito.Obj({ // λ“±κΈ‰ μƒνƒœ rltrOffcRank: pito.Arr( pito.Obj({ createdAt: pito.Date(), rankType : pito.Enums(RankType), rankNote : pito.Opt(pito.Str()), adminNote: pito.Opt(pito.Str()), }) ), }); export type ListRltrOffcRankOutput = pito.Type; // ===================================================================================== export const ListRltrOffcRank = HTTPNoBody( "GET", "/api/v1/admin/rltr-offc-rank/", "admin" ) .params(ListRltrOffcRankParam) .query(ListRltrOffcRankOption) .response(ListRltrOffcRankOutput) .presets(NeedLogin) .build(); // =====================================================================================