Files
hi-server/internal/handler/admin/promo/updatePromoRuleHandler.go
T
2026-05-26 22:49:46 -07:00

36 lines
887 B
Go

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)
}
}