Commit Graph
492 Commits
Author SHA1 Message Date
yml2213 9ae6d5eaea feat(distribution): 优化一键同步主站商品功能(并发防重、分批入库、失效商品联动下架与初始加价)
- 后端优化:
  - 引入 Redis + 内存 sync.Map 双重互斥锁,避免并发/连击导致唯一索引冲突 (ErrSyncInProgress)
  - 使用 CreateInBatches(500) 进行大数据量批量插入,杜绝超长 SQL 与锁表超时
  - 增加 CleanStaleListings 支持,自动排查并联动下架主站非在售的货架商品,清理历史幽灵数据
  - 增加 DefaultShelfRatioDelta 支持,新同步商品直接继承初始加价比例,免除二次手动改价
- 前端优化:
  - distribution-admin 货架管理新增一键同步配置弹窗(可勾选自动下架失效商品、配置初始加价)
  - 同步完成后展示结构化统计弹窗(新增、保持、联动下架、主站在售总量)
  - 前后端类型定义与 API 客户端对齐升级
- 测试覆盖:
  - 补充 TestSyncSiteAccountsOptimizations 单元测试与 handler 集成测试
  - 全工程测试与门禁 check.sh 100% 通过
2026-09-11 12:47:59 +08:00
yml2213 9ae763dee6 fix(distribution): 修复收号站订单详情权限、专属支付通道路由、大盘统计与仲裁积分隔离
- 修复 FindOrder 在收号站模式(two_party_distributor_receive / three_party)下的 403 权限判定,放行参与方站点成员并精准计算收益
- 串联 distribution_site_payment_channels 至 payment.Start 核心支付发起流程,分销订单优先使用绑定的专属商户通道
- 修复数据大盘 GetDashboardAnalytics 趋势中 ReceivedCount 恒为 0 的问题,并对齐今日订单与 GMV 统计
- 修复 dispute/arbitration.go 仲裁完成时向分销租客发放成长积分的泄漏风险
- 提现管理新增 distribution_site_name/distribution_site_code 字段并在后台列表与详情弹窗中区分展示分销站
- GetPublicSiteInfo 增加 X-Distribution-Site-Code 请求头兜底支持
2026-09-11 10:31:14 +08:00
yml2213 6acdead0f0 Merge branch 'main' into feature/distribution-system 2026-09-11 09:35:53 +08:00
yml2213 7734f315ce feat(ocr): 支持 PP-OCRv6 异步识别模型并设为默认,解决排队与高延迟问题 2026-09-10 20:12:05 +08:00
yml2213 e3a75fb2d7 feat(distribution): 默认结算冷却天数改为系统配置驱动
新建站点的默认冷却期原先硬编码 7 天(OnboardSite 字面量、DB 列默认、两套前端表单),
改一处要同时动三处。现统一到系统配置键 distribution.default_settlement_hold_days:

- systemconfig 注册该键(默认 7,0=立即释放,0-365 校验),纳入 admin 可见配置
- distribution 建站两条路径(CreateSite 未传值、OnboardSite 缺省)读取该配置,缺失或非法回落 7
- 新增 GET /admin/distribution/site-defaults 暴露当前有效默认值
- Vue / React 站点表单改为运行时拉取,拉取失败保持 7
- DB 列默认值保留作为兜底,站点级 settlement_hold_days 仍可单独覆盖
2026-09-10 18:54:23 +08:00
yml2213andCursor 768902f2f7 feat(distribution): 补齐退款加价回退、本站自卖与开通默认规则
退款时压缩卖方加价,人工/自动批次仅完结单可入账,号主收入进主站钱包;仲裁后重算释放并支持作废未入账 DS。开通时四种模式按默认生效,对外口径合并为 35/40/25,不再单独展示通道费。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 18:13:46 +08:00
yml2213andCursor e621722218 fix(admin): 主站分销管理按最新分成与释放口径改展示
规则页按模式展示收号/卖出/服务费,通道费标明主站承担;订单改为释放状态筛选;结算区分自动与人工批次。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 17:36:49 +08:00
yml2213andCursor 647fdc0b4a feat(distribution): 通道费改主站承担,并按冷却期自动释放结算
利润不再扣支付通道费;站点可配置结算冷却期,到期自动入账,已释放后退款从收款站钱包回冲。同时修复当日自动批次无法追加、三方回冲打错钱包,以及测试库自增重置被 MySQL 统计缓存跳过的问题。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 17:11:58 +08:00
yml2213 7ffc3822f5 Merge branch 'main' into feature/distribution-system
合入 main 的推广追踪(adtracking)模块,并解决与分销业务的 8 处冲突。

冲突解决原则:两边的字段、菜单与路由全部保留,不删任何一方。

后端:
- model/order.go:保留分销字段注释块,追加 SourceTrackCode
- model/user.go:追加 RegisterTrackCode;TokenVersion 默认值保持 1
  (与本库 users.token_version 列默认值一致)
- auth/repository.go:两处建号结构体同时写入 RegisterTrackCode 与 TokenVersion
- order/dto.go:OrderDTO 同时暴露 distribution_site_id 与 source_track_code;
  CreateRequest 同时接受 distribution_site_code 与 track_code
- order/presenter.go:同时映射 DistributionSiteID 与 SourceTrackCode

前端:
- orders/api/orders.ts:createOrder 同时携带 distribution_site_code 与 track_code
- layouts/AdminLayout.vue:分销管理菜单组与推广追踪菜单组并列保留
- router/adminRoutes.ts:分销 4 条路由与 tracking-links 路由并列保留

迁移:feature 侧 000064-000067 已在前一提交顺延为 000065-000068,
为 main 的 000064_ad_tracking 让号,合并后编号 000063→000068 连续无重复。
2026-09-10 13:06:18 +08:00
yml2213andCursor ee0e70ccad fix(adtracking): 收紧成交口径、点击去重与生产落地页白名单
成交 GMV 排除已关闭订单,避免未支付关单被计入;点击按访客 5 秒、IP 1 秒双重去重;生产禁止 localhost 落地页,失效短码改用 QueryEscape。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 11:27:43 +08:00
yml2213 6a3611c1a8 fix(adtracking): 修复生产网关反代路由、成交态统计口径与安全加固 2026-09-10 11:17:40 +08:00
yml2213 2b11d70ebe feat(adtracking): 新增推广链接追踪与数据大盘,支持自定义短码、注册与下单归因及二维码物料生成
1. 数据库新增 000064_ad_tracking.sql 迁移,创建 ad_tracking_links 和 ad_tracking_clicks 表,并在 users、rental_orders 增加归因字段
2. 后端新增 adtracking 模块,挂载 GET /r/:code 302 智能重定向、点击流水异步记录、转化率/GMV聚合统计及管理接口
3. 用户认证 (auth) 与订单创建 (order) 链路贯通,实现注册用户与订单成交推广短码全链路归因
4. 前端管理后台左侧新增【推广追踪】目录,支持大盘指标总览、推广链接 CRUD、状态启停、一键复制短链及二维码下载 (PNG)
2026-09-10 11:05:47 +08:00
yml2213 438267f611 fix(frontend): 修复distributionSite中ESLint无用赋值警告 2026-09-09 20:03:20 +08:00
yml2213 556e76942e style(frontend): 自动格式化代码符合Prettier门禁规范 2026-09-09 20:01:23 +08:00
yml2213 e9787e1c27 fix(frontend): 补充 OrderDetailView 缺失的 handoffFocused 响应式变量 2026-09-09 16:16:45 +08:00
yml2213 8b7a0c8059 fix(order): 修复超时与异常过渡态下的状态机流转及权限断层 2026-09-09 16:15:21 +08:00
yml2213 17d4f7be9e fix(order): 支持待号主交接及异常状态下客服重置交接倒计时 2026-09-09 16:05:48 +08:00
yml2213 3b31b7f650 feat(distribution): 补齐默认测试分销站test_1与test_fx1数据,菜单名称对齐为分销站点管理 2026-09-09 13:51:26 +08:00
yml2213 d762b33f54 refactor(distribution): 重写分销迁移并落地利润百分比分成与货架比例
将 000064-000078 合并为 064/065/066,默认规则改为收号 35%、卖出 40%、服务费 25%。
货架调价改为增加分站 1 元兑换哈夫币比例。sql-guard 仅保护 main 已发布迁移。
2026-09-08 19:02:58 +08:00
yml2213 31bf6dd3b6 fix(distribution): 修正商品归属回填、禁止全站灌货并拒绝无效站点头
用货架写入时间与上传来源回滚误标产地,不再依赖绝对时间戳;同步仅收本站上传与显式勾选。
2026-09-08 17:30:12 +08:00
yml2213 2c4e87475a feat(distribution): 完善分销收号资产双视图、商户提现、自主加价、品牌装修与数据大盘 2026-09-08 16:05:30 +08:00
yml2213 fd4e490ed3 feat(distribution): 完善分销站与主站业务数据及权益风控隔离,修复历史商品归属 2026-09-08 15:25:46 +08:00
yml2213 0fcb6a513f feat(distribution): 支持分销上传来源追踪、主站审核展示与收售结算模式自动判定 2026-09-08 15:00:35 +08:00
yml2213 a61828c6ca feat(dev): 增加独立分销前台端口5191、标签页会话隔离与免hosts二级域名支持 2026-09-08 13:39:12 +08:00
yml2213 4461e7929e feat(distribution): 站内信与通知体系多租户独立分支隔离
- 新增 000071 数据库迁移:notifications 表支持 distribution_site_id 并自动回填历史分销订单通知
- 通知自动归属:在事务内根据订单或申诉自动关联当前分销站点 ID
- 隔离查询与已读控制:列表、未读统计与批量已读均严格按站点隔离,防止主站与分站交叉泄漏
- 前台界面联动:消息中心通知 Tab 及移动端/PC端站内信页面展示分站专属标识与精准过滤
2026-09-07 19:10:02 +08:00
yml2213 e024319860 feat(distribution): 分销站点消息中心与钱包提现多租户独立分支隔离
- 新增 000070 数据库迁移:支持 chat_conversations、wallet_accounts、wallet_ledger、withdrawal_requests 按 distribution_site_id 隔离
- 消息中心:会话列表、未读数统计、站点专属客服及订单群聊与主站实现双向完全隔离
- 资金账户与提现:独立按 (user_id, distribution_site_id) 建账,分销订单自动结算至对应分站钱包,提现与流水相互独立
- 前台界面:Axios 自动透传 X-Distribution-Site-Code,钱包、提现与消息页面呈现分站专属标牌与独立说明
2026-09-07 18:11:27 +08:00
yml2213 72b805c499 fix(types): 修复合并后的 Listing 类型引用与接口类型兼容 2026-09-07 17:37:49 +08:00
yml2213 cdb236cc29 merge(main): 同步主站最新 UI 与审核优化代码并保持分销多租户隔离 2026-09-07 17:37:31 +08:00
yml2213 ecaf15417b feat(distribution): 独立分销前台商城多租户体系、货源与订单数据严格隔离 2026-09-07 17:18:14 +08:00
yml2213 550b42eb22 feat(distribution): 独立分销后台账号体系、多租户隔离与主站后台分销管理GUI
- 独立账号鉴权:分销后台支持独立登录页面、Bearer+Cookie 双模鉴权与租户资料接口
- 多租户隔离:分销商成员强制锁定自身站点数据范围,防止横向越权;平台超管享有全局视界
- 一键开通分销商:平台端支持一键录入站点、管理员账号、分配角色并原子化初始化佣金规则
- 主后台分销分组:在主站后台增加「分销管理」导航分组,提供站点管理、规则配置、订单监控与结算管理 GUI
- 门禁与联调:补充完整单测,全量代码门禁 check.sh 100% 通过,dev.sh 支持前后端与分销后台一键同启
2026-09-07 15:45:53 +08:00
yml2213 0df5cebf5d fix(admin): 优化商品审核待审核列表卡片高度与首图展示,防止内容被挤压形变 2026-09-07 14:00:07 +08:00
yml2213 5f0b43fe42 feat(finance): 资金出款支持按具体日期时间(时分秒)筛选 2026-09-07 13:46:48 +08:00
yml2213 3f86dd85ad feat(admin): 优化商品审核工作台界面、截图凭证核验与按住速览体验
- 深度优化商品审核工作台:指标概览卡片、风险边条队列、标价管道联动、核心资产高密度展示、底部决策浮动 Dock、全套键盘快捷键
- 重构截图大图查看体验:移除旧版底部溢出的全局画廊,封装全屏居中弹窗 AdminListingReviewPreviewDialog,支持「按住速览(松手即关闭)」与「常驻弹窗(缩放/翻页/打码/原图)」双模交互
- 新增在线截图编辑器 ImageEditorDialog:支持平滑马赛克打码、自由裁剪与旋转保存
- 弹窗组件解耦:抽离审核拒绝、调价、全量核验、快捷键速查等子组件,严格控制单文件行数
- 后端支持:新增商品审核调整价格接口与配套单元测试
2026-09-07 13:29:01 +08:00
yml2213 d7cd15c2f3 fix(orders): 增大押金/数量列宽并禁止表头换行,统一单行展示 2026-09-07 12:07:58 +08:00
yml2213 10b7c8d194 feat(ui): 优化我的订单界面与顶部导航栏视觉体验,彻底修复表格省略号截断点
1. 顶部导航栏 (AppLayout.css):
   - 增强毛玻璃质感 (高通透 rgba(255, 255, 255, 0.76) + blur(20px))
   - 全面升级品牌标识、搜索框、客服按钮、发布账号与用户状态栏胶囊样式

2. 我的订单界面 (OrdersView.vue & OrdersView.css):
   - 全新横幅区 (Orders Hero Header) 与实时订单统计徽标
   - 全新药丸胶囊状态筛选标签栏 (Pill Tabs)
   - 解决身份列点号残留问题:扩宽列宽至 100px 并禁用单元格 ellipsis 伪截断
2026-09-07 11:58:37 +08:00
yml2213 41f70470ec perf(listings): 优化从详情页返回首页的滚动恢复体验,消除顶部闪跳 2026-09-07 10:12:41 +08:00
yml2213 23883d4be5 perf(listings): 优化详情页图片加载链路支持公开变体与分级秒开 2026-09-06 21:40:35 +08:00
yml2213 823632b608 revert(listings): 首页卡片恢复使用原生 img 与公开缩略图链路 (16KB秒开) 2026-09-06 20:36:25 +08:00
yml2213 ac909d6757 fix(listings): 首页卡片统一接入 AuthImage 解决私有对象存储鉴权加载失败问题 2026-09-06 20:22:47 +08:00
yml2213 87aa0b0a2b perf(listings): 首页仅展示单张纯币截图,去除悬停轮播以降低OSS并发请求 2026-09-06 20:07:31 +08:00
yml2213 9ed63e9aec style(frontend): 执行 prettier 规范格式化并移除未使用变量 2026-09-06 19:51:55 +08:00
yml2213 1c922b239c feat(mobile): 全面重构移动端首页与详情页布局并统一3*3顶级保险高光视觉 2026-09-06 19:49:33 +08:00
yml2213 5b072e359b style(listing): 全面重构PC商品详情页UI视觉层级与多图验号展台
- 解耦旧版暗黑压图Banner,重构为高清晰卡片抬头与一键复制商品编号
- 新增16:9多维验号图片展台,支持分类角标、全屏灯箱放大与缩略图胶卷导轨
- 对齐首页视觉规范,以四大核心资产微卡(哈夫币/保险/币比/可租损耗)为视觉中心
- 升级账号核心档案12宫格矩阵与高光皮肤品级圆点展台
- 重构右侧粘性常驻结算下单面板,优化暖色价格卡与平台官方交易保障微标
2026-09-06 19:18:22 +08:00
yml2213 8e3283d951 style(home): 全面重构PC首页UI视觉层级与商品卡片布局
- 重构商品卡片为双栏分翼展台,消灭宽屏中间大面积空白
- 去除大粗冗余标题行,以核心资产微卡(哈夫币/保险/币比)作为视觉中心
- 过滤规格胶囊中的重复项(如AWM),与右侧仓库物资展台明确职责分工
- 优化核心资产文字与数字垂直居中对齐,统一沉稳灰阶底色与品牌点睛色
- 调整轮播图Banner高度与业务入口条呼吸感,提升首屏空间利用率与可读性
2026-09-06 18:57:13 +08:00
yml2213 4b9e64e398 增加资金出款按操作人筛选 2026-09-06 14:03:40 +08:00
yml2213 369b0647bb 合并 main 分支并融合订单列表最小化与 SQL 治理
- Auth/权限中间件取 main 演进版(错误细分、token 来源),保留 dev 的用户 cookie 与登出撤销语义
- 后台订单列表:融合 main 的首页免 COUNT 优化与关键词索引路由,保留 dev 的最小化 AdminOrderListItemDTO(结账明细仍由详情接口返回,同步调整对应集成测试)
- 保留 dev 的 token_version 冻结/解冻递增与 main 的状态变化判断及通知
- 前端:保留 dev 登出接口与 main 的 fetchMe silent 参数、SSE 登录跳转;后台订单表按 dev 最小化 DTO 移除号主到手列
2026-09-05 11:43:13 +08:00
yml2213 86a9b25d57 统一财务统计与线下提号出款口径 2026-09-03 20:44:55 +08:00
yml2213 e418a4dfb1 下赛季通行证选项 增加开关 2026-09-03 20:06:28 +08:00
yml2213 208f12ddb4 完善本地质量门禁与资金链路测试 2026-09-02 13:50:19 +08:00
yml2213 dd2b45bd2c 优化号主备注位置 2026-09-01 12:40:10 +08:00