refactor(sitecode): 统一各模块分销站点编码解析为公共包

- 新增 internal/sitecode 包:FromRequest 头优先解析、FromQueryThenHeader
  探测接口专用、ExtractHost/IsLocalHost 提取 Host 域名
- 替换 auth/order/listing/chat/notification/withdrawal/wallet/distribution
  八模块 17 处各自内联的解析逻辑,统一优先级与 TrimSpace 行为
- 修复 notification 漏 TrimSpace、探测接口会话头压过显式 query、
  GetPublicSiteInfo 把 localhost Host 当站点域名查库等不一致
- 顺手清理 auth 中无引用的 extractHost 死代码
- gofmt 修复 withdrawal/presenter、chat/file/payment 测试四个历史遗留格式问题
This commit is contained in:
yml2213
2026-09-17 14:54:38 +08:00
parent 69774458b0
commit 8dc21d2757
16 changed files with 236 additions and 119 deletions
@@ -5,6 +5,7 @@ import (
"strings"
"hfb_sys/backend/internal/middleware"
"hfb_sys/backend/internal/sitecode"
"hfb_sys/backend/pkg/response"
"github.com/gin-gonic/gin"
@@ -119,7 +120,7 @@ func parsePublicListQuery(c *gin.Context) PublicListQuery {
MinSecretKD: parseOptionalFloat(c.Query("min_secret_kd")),
MaxSecretKD: parseOptionalFloat(c.Query("max_secret_kd")),
ResourceRanges: parseResourceRanges(c),
DistributionSiteCode: strings.TrimSpace(firstNonEmpty(c.GetHeader("X-Distribution-Site-Code"), c.Query("distribution_site_code"), c.Query("site_code"))),
DistributionSiteCode: sitecode.FromRequest(c),
}
if query.PageSize > 50 {
query.PageSize = 50