feat: 添加请求追踪中间件并支持查询过期订阅
Build docker and publish / build (20.15.1) (push) Successful in 5m10s

添加请求追踪中间件以记录请求和响应内容
在用户订阅查询中新增includeExpired参数支持查询历史记录
完善配置系统以支持float64类型默认值解析
This commit is contained in:
2026-01-06 20:54:15 -08:00
parent 55c778b65b
commit ef64a876cd
8 changed files with 105 additions and 18 deletions
@@ -1,17 +1,26 @@
package user
import (
"context"
"github.com/gin-gonic/gin"
"github.com/perfect-panel/server/internal/logic/public/user"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/pkg/constant"
"github.com/perfect-panel/server/pkg/result"
)
// Query User Subscribe
func QueryUserSubscribeHandler(svcCtx *svc.ServiceContext) func(c *gin.Context) {
return func(c *gin.Context) {
// 1. Get param from URL Query (?includeExpired=all)
value := c.Query("includeExpired")
l := user.NewQueryUserSubscribeLogic(c.Request.Context(), svcCtx)
// 2. Inject param into Request Context
// Note: Must use context.WithValue to create new ctx
ctx := context.WithValue(c.Request.Context(), constant.CtxKeyIncludeExpired, value)
l := user.NewQueryUserSubscribeLogic(ctx, svcCtx)
resp, err := l.QueryUserSubscribe()
result.HttpResult(c, resp, err)
}
+2
View File
@@ -40,6 +40,8 @@ import (
)
func RegisterHandlers(router *gin.Engine, serverCtx *svc.ServiceContext) {
router.Use(middleware.TraceMiddleware(serverCtx))
adminAdsGroupRouter := router.Group("/v1/admin/ads")
adminAdsGroupRouter.Use(middleware.AuthMiddleware(serverCtx))