Commit Graph

  • 41b86260dc Merge branch 'feat/invite-registration' main dujiao-next 2026-10-11 14:43:43 +08:00
  • c5f5511e53 feat: 新增邀请码注册功能 dujiao-next 2026-10-11 14:43:43 +08:00
  • 087e9fbd1d Merge remote-tracking branch 'github/main' dujiao-next 2026-10-11 13:34:30 +08:00
  • d31c9a983e test: 补充佣金重试消费、子订单退回钱包受限父订单、登录凭证绑定分销站点的测试 dujiao-next 2026-10-11 13:30:41 +08:00
  • 3b7e66b542 fix: 验证码邮件发送失败时删除该记录,不占用发送间隔也不顶替上一封有效验证码 dujiao-next 2026-10-11 13:28:46 +08:00
  • 95bff49a92 fix: 上游拒绝取消已付款采购单时给出明确提示,并补齐采购单错误文案三语 dujiao-next 2026-10-11 13:27:27 +08:00
  • 290ea27ba3 fix: 佣金重试时订单已退款或取消则不再生成佣金 dujiao-next 2026-10-11 13:25:33 +08:00
  • 3db2784268 fix: 采购单状态在下单途中被回调推进或被取消时仍补记上游订单号,取消的告警人工处理 dujiao-next 2026-10-11 13:24:16 +08:00
  • 3e7885b137 fix: 本地订单已退款或取消时不再向上游提交采购单 dujiao-next 2026-10-11 13:23:13 +08:00
  • e5e80de0cf fix: 注册/忘记密码/发送验证码限流放宽为独立参数,避免共享 IP 用户被成批误封 dujiao-next 2026-10-11 13:22:20 +08:00
  • 263d70320a refactor: 合并传输层重复的登录记录、租户解析与请求协议函数 dujiao-next 2026-10-11 12:52:40 +08:00
  • 67355271bd refactor: 验证码/Google/Telegram 登录设置处理器合并公共读写流程 dujiao-next 2026-10-11 12:51:06 +08:00
  • 67f6c540ea refactor: settings 内部布尔解析复用 settingsvalue.ParseBool dujiao-next 2026-10-11 12:50:19 +08:00
  • 807bda7602 refactor: 删除 identity 用户存储中与 memberlevel 重复的会员等级写入方法 dujiao-next 2026-10-11 12:49:26 +08:00
  • 812a0581ba refactor: 删除迁移守卫中已被上级目录覆盖的冗余路径 dujiao-next 2026-10-11 12:48:08 +08:00
  • f19b8a7d80 refactor: 各模块复制的分页与方言查询辅助函数统一改用 gormutil dujiao-next 2026-10-11 12:47:38 +08:00
  • 568e83d4dc refactor: 删除无人调用的死代码 dujiao-next 2026-10-11 12:45:55 +08:00
  • 6ba6e1907c fix: 同一对接站点批量导入加互斥锁,超时重试不再并发导入重复商品 dujiao-next 2026-10-11 12:44:17 +08:00
  • cc12551c04 fix: 支付后佣金创建失败时投递可重试任务,避免推广佣金永久丢失 dujiao-next 2026-10-11 12:42:58 +08:00
  • 70168cbe8d fix: 通用设置接口拒绝有专用接口的配置键,避免跳过校验与运行时生效 dujiao-next 2026-10-11 12:40:12 +08:00
  • ff9d9a1f61 fix: 禁止后台单独取消子订单,避免父订单支付后子订单被复活或余额未退 dujiao-next 2026-10-11 12:39:20 +08:00
  • 495a0ce0f0 fix: 采购单列表并发查询上游退款并设整页超时,上游变慢时列表页不再超时 dujiao-next 2026-10-11 12:38:43 +08:00
  • ada4155bed fix: 分销站公共配置不再下发主站自定义脚本 dujiao-next 2026-10-11 12:37:20 +08:00
  • 8acae264c2 fix: 启用 2FA 与命令行重置管理员密码/2FA 后清理鉴权缓存,旧令牌立即失效 dujiao-next 2026-10-11 12:36:40 +08:00
  • 94aa8b477c fix: 上游图片仅下载同主机地址并限制大小与扩展名,防止 SSRF 与写满磁盘 dujiao-next 2026-10-11 12:35:33 +08:00
  • 09fb643fce fix: 巡检补投停滞的待提交采购单,子订单采购失败不再阻断其余子订单 dujiao-next 2026-10-11 12:34:21 +08:00
  • 53631cf4f4 fix: 超时取消订单任务读库失败时交给队列重试,避免预占库存永久不释放 dujiao-next 2026-10-11 12:33:12 +08:00
  • fbfdc008d1 fix: 上游商品增量列表纳入 SKU 库存与卡密变化,下游增量同步能及时感知库存 dujiao-next 2026-10-11 12:32:47 +08:00
  • 0c045b201a fix: 用户登录凭证绑定签发站点,分销站凭证不能在主站或其他分销站使用 dujiao-next 2026-10-11 12:31:28 +08:00
  • b942773f21 fix: 子订单退款计入并受限于父订单可退金额,防止父子订单重复退款 dujiao-next 2026-10-11 12:27:09 +08:00
  • 14a403e2b1 fix: 采购单巡检加周期锁防多 worker 重复执行,分页覆盖全部已接单并按单限频告警 dujiao-next 2026-10-11 12:25:29 +08:00
  • 06ff48dc18 fix: 采购单状态改为比较后再写,防止回调与提交/轮询并发导致状态回退和重复交付通知 dujiao-next 2026-10-11 12:23:32 +08:00
  • 57af7c6714 fix: 编辑商品未改库存时保留实时库存,避免覆盖下单预占导致超卖 dujiao-next 2026-10-11 12:21:36 +08:00
  • 8f2b7039e4 fix: 采购单按配置间隔延迟重试,上游明确拒单按错误码判断是否重试 dujiao-next 2026-10-11 12:18:22 +08:00
  • 2ae92e8ba4 fix: 余额全额支付时同步入账分销利润 dujiao-next 2026-10-11 12:17:16 +08:00
  • 2f437a39c0 fix: 验证码原子占用尝试次数并先落库后发信,注册/忘记密码/发送验证码接入限流 dujiao-next 2026-10-11 12:16:08 +08:00
  • 3ae53014f2 fix: 上传目录所有文件禁止执行脚本,防止同源存储型 XSS dujiao-next 2026-10-11 12:13:57 +08:00
  • bc076c984a fix: 上游同一下游单号的旧单已取消时允许重新下单,修复余额不足后重试永远失败 dujiao-next 2026-10-11 12:13:33 +08:00
  • ea785ed773 fix: 采购单已被上游接单时,上游取消失败不再本地标记取消 dujiao-next 2026-10-11 12:12:39 +08:00
  • 71ea31ddc5 fix: 禁止后台取消已支付订单,避免退回钱包与释放已消耗库存 dujiao-next 2026-10-11 12:10:29 +08:00
  • f627efce94 feat: 后台商品支持批量设置前台库存展示模式 dujiao-next 2026-10-11 12:09:13 +08:00
  • 5bd0ce93d6 feat: 导入上游商品时优先沿用上游 slug dujiao-next 2026-10-11 12:09:13 +08:00
  • 291a2ae2b6 fix: 商品 slug 查重计入已删除商品,避免撞唯一索引报笼统错误 dujiao-next 2026-10-11 12:09:13 +08:00
  • f4a06ff366 fix: 限制用户昵称长度并禁止 HTML 敏感字符 dujiao-next 2026-10-11 11:25:18 +08:00
  • 287b5f4882 Merge pull request #350 from mvanhorn/fix/349-epay-v2-redirect-post Assimon 2026-10-09 10:17:46 +08:00
  • 6d386b8d08 refactor: fold epay redirect handler into webhook_handler and take redirect host from return_url Matt Van Horn 2026-10-08 14:37:09 -07:00
  • 7d2eb8db86 fix: 统一主站与分销站 Telegram/WhatsApp 联系方式校验规则 dujiao-next 2026-10-08 10:27:35 +08:00
  • f61740195c fix: 分销站展示 Email 与客服链接并不再回退主站联系方式 dujiao-next 2026-10-08 10:22:32 +08:00
  • a461338815 fix: 修复上游映射商品交付表单被清空、隐藏或丢弃导致付款后采购失败 dujiao-next 2026-10-08 10:08:03 +08:00
  • 1b955da43e fix: submit epay v2 redirect payments as a POST form Matt Van Horn 2026-10-06 04:29:41 -07:00
  • b20da89eef fix: 上游分类数量统计不再阻塞列表并为全量翻页增加页数上限 dujiao-next 2026-10-06 18:42:09 +08:00
  • 98ab4db98f docs: 新增 AI 编码助手通用规范 AGENTS.md dujiao-next 2026-10-06 18:42:09 +08:00
  • c328771700 fix: 批发价清理按 SKU ID 保留并改为 store 层禁止级联保存关联 dujiao-next 2026-10-06 18:18:09 +08:00
  • db4b52a108 Merge pull request #348 from SzeMeng76/fix/sku-single-mode Assimon 2026-10-06 18:14:24 +08:00
  • dbc4d01fa7 Merge pull request #341 from SzeMeng76/fix/upstream-category-sync-pagination Assimon 2026-10-06 18:05:43 +08:00
  • 2cfffde120 Merge pull request #337 from SzeMeng76/fix/dashboard-inventory-alerts-pagination Assimon 2026-10-06 18:05:13 +08:00
  • 9253bbbe73 fix: validate numeric id in store GetByID dujiao-next 2026-10-05 23:29:37 +08:00
  • fd42459056 fix: 修复商品无法关闭 SKU 规格配置 SzeMeng76 2026-10-03 14:44:01 +08:00
  • fee6dfa039 fix: 商品对接分类列表按真实数量展示,避免商品量大时分类缺失 SzeMeng76 2026-09-21 18:59:32 +08:00
  • e132c6376d feat: 为 Dashboard 库存告警列表添加"加载更多"功能 SzeMeng76 2026-09-18 17:22:38 +08:00
  • d2e44618de Merge pull request #309 from SzeMeng76/fix/skip-upstream-inventory-alerts Assimon 2026-09-16 15:16:23 +08:00
  • 5d27b8491f refactor: 使用 domain 模型替代 Table() 查询映射表 SzeMeng76 2026-09-15 23:29:27 +08:00
  • 47eda40374 Merge remote-tracking branch 'github/main' dujiao-next 2026-09-15 22:19:04 +08:00
  • 19654a3849 feat(router): 支付回调、上游回调、渠道 API、礼品卡兑换增加限流 dujiao-next 2026-09-15 22:17:40 +08:00
  • 8d73eb723b fix(downstream): 回调客户端只连接公网地址且不跟随重定向 dujiao-next 2026-09-15 22:17:40 +08:00
  • 9f8579ca93 fix(upstream): 鉴权中间件只更新 last_used_at 单列,限流 key 绑定来源 IP dujiao-next 2026-09-15 22:17:40 +08:00
  • f517f12b53 fix(procurement): 上游回调增加状态机守卫,回调 body 限 1MB,密钥解密失败直接拒绝 dujiao-next 2026-09-15 22:17:40 +08:00
  • 393079aa37 fix(auth): 注册与换绑邮箱拒绝 Telegram 占位邮箱 dujiao-next 2026-09-15 22:17:39 +08:00
  • bb3564fbf1 fix(order): 取消订单事务内加锁复核状态,用户取消回滚优惠券,游客订单密码最少 6 位 dujiao-next 2026-09-15 22:17:39 +08:00
  • 2f870d5e18 fix(payment): Stripe checkout 以 payment_status 判定成功,网关验签改为常量时间比较并拒绝空密钥 dujiao-next 2026-09-15 22:17:39 +08:00
  • e7aa1f4b9e Merge pull request #311 from SzeMeng76/fix/guest-order-email-case-mismatch Assimon 2026-09-15 21:54:42 +08:00
  • bbe1b2786c fix: 增强svg图片格式校验 dujiao-next 2026-09-15 20:38:06 +08:00
  • 8751a5e9c2 fix: 游客订单邮箱大小写不匹配导致验证失败 SzeMeng76 2026-09-15 16:31:08 +08:00
  • 6b669a1f3e feat: 库存告警支持对接商品 SzeMeng76 2026-09-15 14:52:05 +08:00
  • a9f64fe9ed fix(dashboard): 库存告警跳过上游对接商品 SzeMeng76 2026-09-15 14:18:00 +08:00
  • 109f49333c Merge pull request #304 from imrelax/feat/admin-products-listing-status-filter Assimon 2026-09-15 14:17:17 +08:00
  • 469b2ee072 feat: 后台商品列表新增上架状态筛选 zyniaoren 2026-09-12 13:43:23 +08:00
  • cf78617bd3 Merge pull request #300 from SzeMeng76/fix/vault-mobile-menu-click Assimon 2026-09-12 11:22:49 +08:00
  • 976b84a5a3 Merge pull request #303 from SzeMeng76/fix/dashboard-sqlite-timezone Assimon 2026-09-12 11:22:32 +08:00
  • c6d539eda0 fix(dashboard): SQLite下时间范围查询格式不匹配导致统计缺漏 SzeMeng76 2026-09-11 20:37:14 +08:00
  • 2feb2aabbf fix: 修复 vault 模板手机版菜单按钮点击区域问题 SzeMeng76 2026-09-10 18:49:13 +08:00
  • f06035ca35 Merge pull request #298 from SzeMeng76/pr/order-detail-priority Assimon 2026-09-03 16:23:14 +08:00
  • 0d273c6319 fix(vault): 移动端订单明细商品条目改为上下布局,修复标题被挤压竖排 SzeMeng76 2026-09-03 15:15:21 +08:00
  • 898e284a0d fix(vault): 登录后隐藏顶栏/更多菜单/页脚的游客查单入口 SzeMeng76 2026-09-03 13:37:11 +08:00
  • a8430e0720 feat(vault): 顶栏右上角新增游客查单入口图标 SzeMeng76 2026-09-01 11:36:59 +08:00
  • 34e7d53d76 refactor: 订单详情页优先展示卡密与子订单,金额/时间信息后置 SzeMeng76 2026-09-03 13:15:30 +08:00
  • 47cc6207c6 fix: 归属校验:采购单必须属于本次认证的连接,且上游订单号需与登记值一致 dujiao-next 2026-09-02 14:02:24 +08:00
  • f60b663a86 Merge pull request #297 from SzeMeng76/fix/payment-order-subject Assimon 2026-09-02 13:52:30 +08:00
  • d18ee1799c fix(architecture): 同步支付服务函数清单测试,移除已删除的 pickOrderItemTitle SzeMeng76 2026-08-14 09:31:57 +08:00
  • 27e42b498c fix(payment): 支付渠道展示的商品名统一改为订单号 SzeMeng76 2026-08-14 09:26:11 +08:00
  • a25a5115a5 Merge pull request #293 from SzeMeng76/fix/stripe-exchange-rate-underpaid Assimon 2026-09-01 10:33:16 +08:00
  • f4bb6ddb47 Merge pull request #292 from SzeMeng76/pr/stripe-customer-email Assimon 2026-09-01 10:30:44 +08:00
  • 5e0bc35c78 style: gofmt okpay 协议改动涉及的文件 (CRLF 换行导致 CI 检查失败) SzeMeng76 2026-08-29 12:17:08 +08:00
  • ad9b7e2d29 fix: okpay 商户协议升级为 HMAC-SHA256 (含 timestamp/nonce 防重放) SzeMeng76 2026-08-29 11:40:08 +08:00
  • 0c6a50a7a0 fix: 支付页手续费金额误标为换汇后币种 SzeMeng76 2026-08-29 00:23:16 +08:00
  • ae42860121 fix: Stripe 换汇后回调金额守恒误判、应付金额误标为订单币种 SzeMeng76 2026-08-28 22:34:59 +08:00
  • f57247b4ee fix: 增强订单履约校验 dujiao-next 2026-08-27 20:46:42 +08:00
  • d163cc61aa feat: Stripe 创建 Checkout Session 时自动带上订单邮箱,实现支付页面预填充 SzeMeng76 2026-08-27 16:05:26 +08:00
  • 14fe7a8ae9 Merge pull request #291 from SzeMeng76/fix/payment-filter-provider-channel Assimon 2026-08-26 16:01:13 +08:00
  • 4a6c25ab28 Merge pull request #287 from USER-HFC/codex/coupon-usage-limit-race Assimon 2026-08-26 16:00:19 +08:00