hi-server/apis/admin/ticket.api
shanshanzhong c582087c0f refactor: 更新项目引用路径从perfect-panel/ppanel-server到perfect-panel/server
feat: 添加版本和构建时间变量
fix: 修正短信队列类型注释错误
style: 清理未使用的代码和测试文件
docs: 更新安装文档中的下载链接
chore: 迁移数据库脚本添加日志和订阅配置
2025-10-13 01:33:03 -07:00

63 lines
1.4 KiB
Plaintext

syntax = "v1"
info (
title: "Ticket API"
desc: "API for ppanel"
author: "Tension"
email: "tension@ppanel.com"
version: "0.0.1"
)
import "../types.api"
type (
UpdateTicketStatusRequest {
Id int64 `json:"id" validate:"required"`
Status *uint8 `json:"status" validate:"required"`
}
GetTicketListRequest {
Page int64 `form:"page"`
Size int64 `form:"size"`
UserId int64 `form:"user_id,omitempty"`
Status *uint8 `form:"status,omitempty"`
Search string `form:"search,omitempty"`
}
GetTicketListResponse {
Total int64 `json:"total"`
List []Ticket `json:"list"`
}
GetTicketRequest {
Id int64 `form:"id" validate:"required"`
}
CreateTicketFollowRequest {
TicketId int64 `json:"ticket_id" validate:"required"`
From string `json:"from" validate:"required"`
Type uint8 `json:"type" validate:"required"`
Content string `json:"content" validate:"required"`
}
)
@server (
prefix: v1/admin/ticket
group: admin/ticket
middleware: AuthMiddleware
)
service ppanel {
@doc "Get ticket list"
@handler GetTicketList
get /list (GetTicketListRequest) returns (GetTicketListResponse)
@doc "Get ticket detail"
@handler GetTicket
get /detail (GetTicketRequest) returns (Ticket)
@doc "Update ticket status"
@handler UpdateTicketStatus
put / (UpdateTicketStatusRequest)
@doc "Create ticket follow"
@handler CreateTicketFollow
post /follow (CreateTicketFollowRequest)
}