修复(#84): 补齐促销管理API实现文件

Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
2026-05-26 22:49:46 -07:00
parent 48e507783e
commit ea586e3ba2
26 changed files with 1348 additions and 2 deletions
@@ -0,0 +1,35 @@
package promo
import (
"net/http"
"strconv"
"github.com/gin-gonic/gin"
"github.com/perfect-panel/server/internal/logic/admin/promo"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/result"
)
// Update promo rule
func UpdatePromoRuleHandler(svcCtx *svc.ServiceContext) func(c *gin.Context) {
return func(c *gin.Context) {
var req types.UpdatePromoRuleRequest
id, err := strconv.ParseInt(c.Param("id"), 10, 64)
if err != nil {
c.String(http.StatusBadRequest, "Invalid Params")
c.Abort()
return
}
_ = c.ShouldBind(&req)
req.Id = id
if err := svcCtx.Validate(&req); err != nil {
result.ParamErrorResult(c, err)
return
}
l := promo.NewUpdatePromoRuleLogic(c.Request.Context(), svcCtx)
resp, err := l.UpdatePromoRule(&req)
result.HttpResult(c, resp, err)
}
}