import { HTTPBody } from "@fastify-modular/route"; import { pito } from "pito"; import { NeedLogin } from "../defines"; import { BrokerType, GenderType, NationalityType, UserRole, UserState } from "../enums"; // ===================================================================================== export const UpdateUserInput = pito.Obj({ // user id : pito.Num(), userRole : pito.Opt(pito.Enums(UserRole)), userState : pito.Opt(pito.Enums(UserState)), userName : pito.Opt(pito.Str({})), email : pito.Opt(pito.Str({})), phoneNumber : pito.Opt(pito.Str({})), nickName : pito.Opt(pito.Str({})), birth : pito.Opt(pito.Date()), nationalityType: pito.Opt(pito.Enums(NationalityType)), genderType : pito.Opt(pito.Enums(GenderType)), thmbn : pito.Opt(pito.Str({})), emailRcvYn : pito.Opt(pito.Str({})), kakaoRcvYn : pito.Opt(pito.Str({})), // broker brokerCd : pito.Opt(pito.Str({})), brokerType : pito.Opt(pito.Enums(BrokerType)), dutyName : pito.Opt(pito.Str({})), }); export type UpdateUserInput = pito.Type; // ===================================================================================== export const UpdateUserOption = pito.Obj({}); export type UpdateUserOption = pito.Type; // ===================================================================================== export const UpdateUserOutput = pito.Obj({}); export type UpdateUserOutput = pito.Type; // ===================================================================================== export const UpdateUser = HTTPBody("PATCH", "/api/v1/admin/user", "admin") .query(UpdateUserOption) .body(UpdateUserInput) .response(UpdateUserOutput) .presets(NeedLogin) .build(); // =====================================================================================