重构(#4): 抽奖奖品改/删 id 走 URL path(RESTful)

- PUT /admin/lottery/prizes/:id、DELETE /admin/lottery/prizes/:id
- handler 从 c.Param("id") 取 id;types 用 path:"id"
- 同步 apis/admin/lottery.api 定义

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-16 19:45:23 -07:00
parent abd8c068b6
commit 58c346abec
4 changed files with 17 additions and 8 deletions
+5 -4
View File
@@ -261,9 +261,10 @@ type CreateAdminLotteryPrizeRequest struct {
IsFallback bool `json:"is_fallback"`
}
// UpdateAdminLotteryPrizeRequest updates mutable prize fields.
// UpdateAdminLotteryPrizeRequest updates mutable prize fields. Id comes from
// the URL path (PUT /prizes/:id), not the body.
type UpdateAdminLotteryPrizeRequest struct {
Id int64 `json:"id" validate:"required"`
Id int64 `path:"id" json:"-" validate:"required"`
Slot *int `json:"slot,omitempty"`
Name string `json:"name,omitempty"`
IconUrl string `json:"icon_url,omitempty"`
@@ -283,9 +284,9 @@ type ListAdminLotteryPrizesResponse struct {
List []AdminLotteryPrize `json:"list"`
}
// AdminPrizeIdRequest is used by DELETE / GET single.
// AdminPrizeIdRequest is used by DELETE /prizes/:id. Id comes from the URL path.
type AdminPrizeIdRequest struct {
Id int64 `form:"id" json:"id" validate:"required"`
Id int64 `path:"id" form:"id" json:"id" validate:"required"`
}
// GrantAdminLotteryChanceRequest gives a specified user N chances on an