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

36 lines
879 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"
)
// Delete promo rule
func DeletePromoRuleHandler(svcCtx *svc.ServiceContext) func(c *gin.Context) {
return func(c *gin.Context) {
var req types.DeletePromoRuleRequest
id, err := strconv.ParseInt(c.Param("id"), 10, 64)
if err != nil {
c.String(http.StatusBadRequest, "Invalid Params")
c.Abort()
return
}
req.Id = id
_ = c.ShouldBind(&req)
if err := svcCtx.Validate(&req); err != nil {
result.ParamErrorResult(c, err)
return
}
l := promo.NewDeletePromoRuleLogic(c.Request.Context(), svcCtx)
err = l.DeletePromoRule(&req)
result.HttpResult(c, nil, err)
}
}