补单逻辑
Build docker and publish / build (20.15.1) (push) Has been cancelled

This commit is contained in:
2026-05-06 04:59:04 -07:00
parent 463d3e2315
commit 54daa923da
18 changed files with 15992 additions and 2 deletions
@@ -0,0 +1,25 @@
package recovery
import (
"github.com/gin-gonic/gin"
"github.com/perfect-panel/server/internal/logic/public/recovery"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/result"
)
func RecoverOrderHandler(svcCtx *svc.ServiceContext) func(c *gin.Context) {
return func(c *gin.Context) {
var req types.RecoverOrderRequest
_ = c.ShouldBind(&req)
validateErr := svcCtx.Validate(&req)
if validateErr != nil {
result.ParamErrorResult(c, validateErr)
return
}
l := recovery.NewRecoverOrderLogic(c.Request.Context(), svcCtx)
resp, err := l.RecoverOrder(&req)
result.HttpResult(c, resp, err)
}
}
@@ -0,0 +1,25 @@
package recovery
import (
"github.com/gin-gonic/gin"
"github.com/perfect-panel/server/internal/logic/public/recovery"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/result"
)
func SendCodeHandler(svcCtx *svc.ServiceContext) func(c *gin.Context) {
return func(c *gin.Context) {
var req types.RecoverySendCodeRequest
_ = c.ShouldBind(&req)
validateErr := svcCtx.Validate(&req)
if validateErr != nil {
result.ParamErrorResult(c, validateErr)
return
}
l := recovery.NewSendCodeLogic(c.Request.Context(), svcCtx)
resp, err := l.SendCode(&req)
result.HttpResult(c, resp, err)
}
}
+12
View File
@@ -34,6 +34,7 @@ import (
publicOrder "github.com/perfect-panel/server/internal/handler/public/order"
publicPayment "github.com/perfect-panel/server/internal/handler/public/payment"
publicPortal "github.com/perfect-panel/server/internal/handler/public/portal"
publicRecovery "github.com/perfect-panel/server/internal/handler/public/recovery"
publicRedemption "github.com/perfect-panel/server/internal/handler/public/redemption"
publicSubscribe "github.com/perfect-panel/server/internal/handler/public/subscribe"
publicTicket "github.com/perfect-panel/server/internal/handler/public/ticket"
@@ -932,6 +933,17 @@ func RegisterHandlers(router *gin.Engine, serverCtx *svc.ServiceContext) {
publicRedemptionGroupRouter.POST("/", publicRedemption.RedeemCodeHandler(serverCtx))
}
publicRecoveryGroupRouter := router.Group("/v1/public/recovery")
publicRecoveryGroupRouter.Use(middleware.DeviceMiddleware(serverCtx))
{
// Send recovery verification code
publicRecoveryGroupRouter.POST("/send_code", publicRecovery.SendCodeHandler(serverCtx))
// Recover order subscription
publicRecoveryGroupRouter.POST("/order", publicRecovery.RecoverOrderHandler(serverCtx))
}
publicSubscribeGroupRouter := router.Group("/v1/public/subscribe")
publicSubscribeGroupRouter.Use(middleware.AuthMiddleware(serverCtx), middleware.DeviceMiddleware(serverCtx))