syntax = "v1" info ( title: "工单管理" ) type ( AdminTicketListReq { Page int `form:"page,default=1"` PageSize int `form:"page_size,default=20"` Status int `form:"status,optional"` } AdminTicketResp { Id int64 `json:"id"` UserId int64 `json:"user_id"` Title string `json:"title"` Status int `json:"status"` CreatedAt string `json:"created_at"` } AdminTicketListResp { Total int64 `json:"total"` List []AdminTicketResp `json:"list"` } AdminTicketDetailReq { Id int64 `path:"id"` } AdminUpdateTicketStatusReq { Id int64 `path:"id"` Status int `json:"status"` } AdminCreateTicketFollowReq { Id int64 `path:"id"` Content string `json:"content"` } ) @server ( prefix: /api/v1/admin/ticket group: ticket jwt: JwtAuth ) service ppaneladmin { @handler GetTicketListHandler get /list (AdminTicketListReq) returns (AdminTicketListResp) @handler GetTicketDetailHandler get /:id (AdminTicketDetailReq) returns (AdminTicketResp) @handler UpdateTicketStatusHandler put /:id/status (AdminUpdateTicketStatusReq) @handler CreateTicketFollowHandler post /:id/follow (AdminCreateTicketFollowReq) }