feat: 添加版本和构建时间变量 fix: 修正短信队列类型注释错误 style: 清理未使用的代码和测试文件 docs: 更新安装文档中的下载链接 chore: 迁移数据库脚本添加日志和订阅配置
86 lines
2.4 KiB
Plaintext
86 lines
2.4 KiB
Plaintext
syntax = "v1"
|
|
|
|
info (
|
|
title: "coupon API"
|
|
desc: "API for ppanel"
|
|
author: "Tension"
|
|
email: "tension@ppanel.com"
|
|
version: "0.0.1"
|
|
)
|
|
|
|
import "../types.api"
|
|
|
|
type (
|
|
CreateCouponRequest {
|
|
Name string `json:"name" validate:"required"`
|
|
Code string `json:"code,omitempty"`
|
|
Count int64 `json:"count,omitempty"`
|
|
Type uint8 `json:"type" validate:"required"`
|
|
Discount int64 `json:"discount" validate:"required"`
|
|
StartTime int64 `json:"start_time" validate:"required"`
|
|
ExpireTime int64 `json:"expire_time" validate:"required"`
|
|
UserLimit int64 `json:"user_limit,omitempty"`
|
|
Subscribe []int64 `json:"subscribe,omitempty"`
|
|
UsedCount int64 `json:"used_count,omitempty"`
|
|
Enable *bool `json:"enable,omitempty"`
|
|
}
|
|
UpdateCouponRequest {
|
|
Id int64 `json:"id" validate:"required"`
|
|
Name string `json:"name" validate:"required"`
|
|
Code string `json:"code,omitempty"`
|
|
Count int64 `json:"count,omitempty"`
|
|
Type uint8 `json:"type" validate:"required"`
|
|
Discount int64 `json:"discount" validate:"required"`
|
|
StartTime int64 `json:"start_time" validate:"required"`
|
|
ExpireTime int64 `json:"expire_time" validate:"required"`
|
|
UserLimit int64 `json:"user_limit,omitempty"`
|
|
Subscribe []int64 `json:"subscribe,omitempty"`
|
|
UsedCount int64 `json:"used_count,omitempty"`
|
|
Enable *bool `json:"enable,omitempty"`
|
|
}
|
|
DeleteCouponRequest {
|
|
Id int64 `json:"id" validate:"required"`
|
|
}
|
|
BatchDeleteCouponRequest {
|
|
Ids []int64 `json:"ids" validate:"required"`
|
|
}
|
|
GetCouponListRequest {
|
|
Page int64 `form:"page" validate:"required"`
|
|
Size int64 `form:"size" validate:"required"`
|
|
Subscribe int64 `form:"subscribe,omitempty"`
|
|
Search string `form:"search,omitempty"`
|
|
}
|
|
GetCouponListResponse {
|
|
Total int64 `json:"total"`
|
|
List []Coupon `json:"list"`
|
|
}
|
|
)
|
|
|
|
@server (
|
|
prefix: v1/admin/coupon
|
|
group: admin/coupon
|
|
middleware: AuthMiddleware
|
|
)
|
|
service ppanel {
|
|
@doc "Create coupon"
|
|
@handler CreateCoupon
|
|
post / (CreateCouponRequest)
|
|
|
|
@doc "Update coupon"
|
|
@handler UpdateCoupon
|
|
put / (UpdateCouponRequest)
|
|
|
|
@doc "Delete coupon"
|
|
@handler DeleteCoupon
|
|
delete / (DeleteCouponRequest)
|
|
|
|
@doc "Batch delete coupon"
|
|
@handler BatchDeleteCoupon
|
|
delete /batch (BatchDeleteCouponRequest)
|
|
|
|
@doc "Get coupon list"
|
|
@handler GetCouponList
|
|
get /list (GetCouponListRequest) returns (GetCouponListResponse)
|
|
}
|
|
|