Commit Graph

315 Commits

Author SHA1 Message Date
zzh
7d14c0e5d9 fix: sync-status 只比当前配置与生效 Content,前端不参与计算
All checks were successful
Build and Deploy / deploy (push) Successful in 59s
当前侧与发布同源组装但不 Ensure;两侧同一套规范化并忽略 PackVersion/AreaName。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 19:38:58 +08:00
zzh
0449a4a3f5 fix: 发布同步态按 ContentHash 语义对比,且不再 Ensure 写包
All checks were successful
Build and Deploy / deploy (push) Successful in 57s
sync-status 用 ResolvePackRef;哈希忽略 PackVersion/AreaName。修复卖价页发布后因价格行签名跳过刷新导致徽章卡在待发布。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 19:21:17 +08:00
zzh
c2ac20df04 fix: 买价发布落库也走 canonical JSON,与同步态对比一致
All checks were successful
Build and Deploy / deploy (push) Successful in 58s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 19:14:45 +08:00
zzh
73f334edc8 fix: 卖价同步态对比改用 canonical JSON,避免误报待发布
All checks were successful
Build and Deploy / deploy (push) Successful in 59s
待发布与线上两侧统一规范化后再算哈希,消除排序与 FactorValuesJson 形态差异导致的假 diff。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 19:13:26 +08:00
zzh
1704c9f1e2 fix: 分区包按 Id 查询避免大 JSON 参与 ORDER BY filesort
All checks were successful
Build and Deploy / deploy (push) Successful in 57s
bb8c0a9 后查价 hydrate 会 SELECT Content 并 ORDER BY,大分区包打满 sort_buffer;改为先取 Id 再按主键加载。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 18:59:45 +08:00
zzh
a9f8373ec3 fix: 分区明细全量查询去掉 ORDER BY,避免查价 sort_buffer 溢出
All checks were successful
Build and Deploy / deploy (push) Successful in 1m1s
大分区表全量 ORDER BY Id 会打满 MySQL sort_buffer;组包仍在内存排序,并补充 (AreaId, Id) 索引脚本。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 18:42:41 +08:00
zzh
9e5d6d20d5 feat: 会员概览补充等级编码与图标,收发件人国家返回二字码
All checks were successful
Build and Deploy / deploy (push) Successful in 59s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 17:34:32 +08:00
zzh
ae4e733a71 feat: KPI 分区导入支持增量/全量,删除分区级联明细
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 17:34:31 +08:00
zzh
35156eedf4 feat: 渠道买价/规则发布钉 KPI 分区包,排货应付按渠道价区解析
All checks were successful
Build and Deploy / deploy (push) Successful in 1m1s
各渠道异构价区与偏远不再复用产品卖价 zoneKeys;发布只存包引用,计费 hydrate 后硬失败。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 17:19:39 +08:00
zzh
bb8c0a906c feat: 卖价/规则发布钉 KPI 分区包,快照只存引用
All checks were successful
Build and Deploy / deploy (push) Successful in 1m0s
分区明细独立版本化并缓存加载,计费包缺失严格失败;同步态接口不再拉全文。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 16:42:42 +08:00
zzh
b38499963d feat: 销售产品页签按需加载版本头和渠道下拉,避免分页拉取整份快照
All checks were successful
Build and Deploy / deploy (push) Successful in 1m1s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 14:20:17 +08:00
zzh
a164d8c837 feat: 卖价/买价列表支持按需加载明细,缩短切换卡顿
All checks were successful
Build and Deploy / deploy (push) Successful in 1m6s
列表接口增加 includeDetails,并新增单条 price/get,供编辑弹窗按需拉取完整矩阵。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 13:36:19 +08:00
zzh
6faadcf2a1 feat: 卖价支持多价格分区表,列表返回创建/修改人
All checks were successful
Build and Deploy / deploy (push) Successful in 1m7s
合并多 Area 分区规则进发布快照,计费用规则自身 AreaId 匹配;产品与渠道列表补 CreateBy/UpdateBy。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-07 10:57:21 +08:00
zzh
f972a28d79 feat: 落地滚动会员、券发放与邀请分成奖励
All checks were successful
Build and Deploy / deploy (push) Successful in 3m50s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 17:40:24 +08:00
zzh
8d7df40bdf feat: 销售产品独立改代码,分区明细导入保存按规则去重
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 15:37:03 +08:00
zzh
14c42db752 feat: 增加 /file-storage 接口,供附件预览按对象 key 流式读取
All checks were successful
Build and Deploy / deploy (push) Successful in 1m8s
补 normalize-key 与 stream,兼容带或不带 admin 前缀的 COS 路径。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 12:21:06 +08:00
zzh
04dc9ca1ff feat: 分区明细导入模板去掉国家名称,并增加枚举值 Sheet
All checks were successful
Build and Deploy / deploy (push) Successful in 1m0s
导入模板只保留国家代码;Sheet2 列出匹配维度/方式的编码与名称,导入时按代码补国家名称。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 10:58:23 +08:00
zzh
5bf81b5138 fix: OpenAPI 轨迹/文件补 Swagger 请求体 schema
FromBody 仅用于文档展示,验签仍读原始 Body。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 10:39:28 +08:00
zzh
f063c99d1b feat: OpenAPI 增加轨迹/文件查询,创单按 clientNo 幂等
客户 HMAC 通过后再查本客户订单;禁止下游面单,附件增加 POD。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 18:48:21 +08:00
zzh
b748aa4000 fix: 收紧分区 range、进位相接与仅国家估算口径
All checks were successful
Build and Deploy / deploy (push) Successful in 1m0s
进位区间改为左开右闭且禁止空洞,邮编 range 按数字/字母数字比较,查价仅国家时不再串用别国 zone。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 17:35:18 +08:00
zzh
c91d8ca0e6 test: 补齐 GB/CA 字母数字邮编前缀、精确与闭区间匹配
All checks were successful
Build and Deploy / deploy (push) Successful in 1m2s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 16:30:18 +08:00
zzh
74a71991b2 feat: 统一价格/黑名单/偏远分区匹配,并落库 MatchDim
All checks were successful
Build and Deploy / deploy (push) Successful in 1m2s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 16:12:09 +08:00
zzh
b17e6639a4 fix: 主数据新增兼容软删唯一键,避免 Duplicate entry
All checks were successful
Build and Deploy / deploy (push) Successful in 1m3s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 11:53:08 +08:00
zzh
79099776a5 feat: 同一产品/渠道下卖价买价费用项唯一,禁止重复新增
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 11:23:38 +08:00
zzh
1b6e91b09d feat: OpenAPI 鉴权改 HMAC 签名校验,并完善下单报文处理
All checks were successful
Build and Deploy / deploy (push) Successful in 1m0s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-30 17:33:46 +08:00
zzh
87f4cebc9b feat: openApi 统一信封与推费字段对齐,下单鉴权改请求头
All checks were successful
Build and Deploy / deploy (push) Successful in 56s
推费入参对齐表字段;创建订单凭证走 appKey/appSecret Header,去掉上门揽收与 Body 内 customerId。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-30 12:17:50 +08:00
zzh
a3b54b6b07 feat: openApi 分组暴露推费与下单,去掉 OMS 侧 appKey 校验
All checks were successful
Build and Deploy / deploy (push) Successful in 58s
Swagger openApi 提供 /openapi/pickup-order/push-fee 与 /openapi/parcel/create;删除 method 路由与 whoami。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-30 10:36:24 +08:00
zzh
2688058cb3 feat: 客户 OpenAPI 机机凭证与 whoami 探针
All checks were successful
Build and Deploy / deploy (push) Successful in 58s
一主客户一对 AppKey/AppSecret,支持门户自助与后台代管启停重置,供应商回调路径不动。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-30 10:19:38 +08:00
zzh
955a3c8c6d fix: 揽收推费按承运运单号 CarrierWaybillNo 匹配
All checks were successful
Build and Deploy / deploy (push) Successful in 1m1s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 19:56:40 +08:00
zzh
5fb6888b55 feat: 揽收承运推送件重尺并按卖价买价出账
All checks were successful
Build and Deploy / deploy (push) Successful in 1m1s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 19:19:24 +08:00
zzh
24b8c29c9b fix: 9610预报下游回写下游单号兼容 serviceNo/orderNo
All checks were successful
Build and Deploy / deploy (push) Successful in 58s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 14:50:27 +08:00
zzh
3bde909238 feat: 新增大包轨迹同步下发 apiCode
All checks were successful
Build and Deploy / deploy (push) Successful in 58s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 16:58:00 +08:00
zzh
8226542ffd fix: 9610预报下游网关地址改为取自 api_center 配置
All checks were successful
Build and Deploy / deploy (push) Successful in 58s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 14:33:52 +08:00
zzh
6c8f7cb781 feat: 9610汇总下单必填电商平台写入预报,并增强官网产品目录筛选项
All checks were successful
Build and Deploy / deploy (push) Successful in 1m1s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 14:25:11 +08:00
zzh
ddb8efba15 feat: 9610汇总下单关联出口资质,并补齐批量模板字段
All checks were successful
Build and Deploy / deploy (push) Successful in 58s
下单/导入在 9610Summary 时校验并落库 ExportQualificationId(可回落默认备案),写入 9610 申报企业信息;专线小包模板长宽高改必填并增加资质备案列。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 16:12:39 +08:00
zzh
dd4644e914 feat: 揽收大包轨迹手动同步接口,并支持管理员重置密码
All checks were successful
Build and Deploy / deploy (push) Successful in 59s
新增 track-upsert-big-bag 返回三步联调结果;补齐 reset-password API。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 15:00:36 +08:00
zzh
26c840cdb1 fix: 加固本地存储失败不回滚创单,并完善揽收大包轨迹同步
All checks were successful
Build and Deploy / deploy (push) Successful in 1m2s
避免 /app/wwwroot 不可写时预报成功被回滚;同步推送 test 部署出口资质等已合入能力。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 09:51:02 +08:00
zzh
c9084ee5ca fix: 合并 master 后改用 IObjectStorage,对齐 fake oss
All checks were successful
Build and Deploy / deploy (push) Successful in 1m3s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 11:37:27 +08:00
zzh
5648163958 merge master into test: 揽收下游预报与近期功能,保留 fake oss
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 11:30:17 +08:00
zzh
26f9d8be7f feat: 揽收单预报下游改从 t_pickup_order 组装 createOrderOne
All checks were successful
Build and Deploy / deploy (push) Successful in 1m43s
新增 /order/pickup-order/downstream-forward,productCode/supplierCode/地址重量商品均取揽收单,不再依赖关联物流单。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 19:17:09 +08:00
zzh
623db4ffdb fix: 服务渠道分组软删同名可恢复,并修正 COS 自定义域名签名
All checks were successful
Build and Deploy / deploy (push) Successful in 1m44s
同名软删分组创建时恢复记录,更新时释放唯一键冲突;COS 自定义 CDN 域名关闭 signHost,并补充常见图片 Content-Type。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 19:00:12 +08:00
zzh
8ce8b82f48 feat: 客户出口资质备案与申报要素,9610 预报直连下游
All checks were successful
Build and Deploy / deploy (push) Successful in 1m49s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 18:13:55 +08:00
dd1318bc00 feat:对接fake oss
All checks were successful
Build and Deploy / deploy (push) Successful in 59s
2026-09-22 16:59:33 +08:00
zzh
e5c9364434 feat: 排货规则支持判断条件公式并完善失败溯源
All checks were successful
Build and Deploy / deploy (push) Successful in 1m49s
用 MatchCondition 中文公式筛选可用渠道后再按方案选渠;失败时落完整排货过程(阶段、公式摘要、池汇总),并兼容旧 CustomerIds。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 19:43:05 +08:00
zzh
6b920cc49d fix: 对齐 createOrderOne 下游预报请求体,productCode 取预报渠道 code
All checks were successful
Build and Deploy / deploy (push) Successful in 1m46s
移除 channelCode 等多余字段,改用专用 ItfxCreateOrderOneBody。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 17:43:30 +08:00
zzh
14f3df3fa5 fix: 下游预报凭证快照整套同源,避免与订单字段混拼
All checks were successful
Build and Deploy / deploy (push) Successful in 1m45s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 18:13:37 +08:00
zzh
8d1e3ab17f feat: 揽收方向与地址类型,补充迁移并清理已落地 SQL
All checks were successful
Build and Deploy / deploy (push) Successful in 1m47s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 23:34:55 +08:00
zzh
61d1502148 feat: 新增 /order/print/batch 同步批量返回面单地址
All checks were successful
Build and Deploy / deploy (push) Successful in 1m44s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 18:56:41 +08:00
zzh
0fdc9e29f4 feat: API中心其他配置与面单 COS 流代理
All checks were successful
Build and Deploy / deploy (push) Successful in 1m52s
将 itfx 网关优先读其他配置 api_center(含 AppKey/AppSecret 回退),面单预览经服务端代理拉取 COS。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 17:40:52 +08:00
zzh
87abcecb65 feat: 对账件重尺导入与应收只留一套
All checks were successful
Build and Deploy / deploy (push) Successful in 1m45s
新增 downstream 重量导入并锁定渠道重算应付;重算应收清空全部阶段;费用软删与查询过滤,避免预报入库叠算。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 16:57:28 +08:00
zzh
43fcb4136a feat: SkuImage 存 storage key,包裹 summary,修复批次测试
All checks were successful
Build and Deploy / deploy (push) Successful in 1m48s
避免签名 URL 超长写库;新增包裹状态汇总;OrderBatchJobCoordinator 注入 IFileStorage 后补齐单测。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 12:30:35 +08:00
zzh
40997f7d71 feat: 新增 /file-storage/stream 供面单预览鉴权读取
All checks were successful
Build and Deploy / deploy (push) Successful in 1m46s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 19:14:26 +08:00
zzh
d1d31fee8a fix: 仓储图片上传支持 customerId,9610 明细补并发戳且主从安全
All checks were successful
Build and Deploy / deploy (push) Successful in 1m43s
上传接口接受 query customerId;ConcurrencyStamp 默认改为空串并用主键确定性回填,避免 Galera UUID unsafe。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 12:09:36 +08:00
d1e3672808 feat:cos
All checks were successful
Build and Deploy / deploy (push) Successful in 1m47s
2026-09-11 11:34:59 +08:00
56c18c0343 feat:加强cos log
All checks were successful
Build and Deploy / deploy (push) Successful in 1m41s
2026-09-10 18:00:18 +08:00
943ba539a4 feat: cos
All checks were successful
Build and Deploy / deploy (push) Successful in 1m43s
2026-09-10 17:32:49 +08:00
zzh
0a16f27664 fix: 修复微信 mp 路由 regex 导致生产启动失败
All checks were successful
Build and Deploy / deploy (push) Successful in 32s
ASP.NET 路由模板中方括号需转义为 [[ ]],否则应用在 InitializeApplication 阶段崩溃。
2026-09-09 15:31:54 +08:00
zzh
41db6fa0af chore: 生产/测试配置分离,并收紧微信 mp AppId 路由
Some checks failed
Build and Deploy / deploy (push) Failing after 35s
Development 指向 oms.nanafa.com;Production 指向 ideship.com。微信 /wechat/mp/{appId} 仅匹配 wx 前缀。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 12:38:12 +08:00
zzh
7c1be3a723 fix: 将微信 OAuth 公开配置改为 /wechat/oauth/config
All checks were successful
Build and Deploy / deploy (push) Successful in 1m42s
避免被 /wechat/mp/{appId} 吞掉导致方法/参数校验异常。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 12:19:31 +08:00
zzh
937f0bb78b feat: 新增微信 OAuth 公开配置接口
All checks were successful
Build and Deploy / deploy (push) Successful in 1m51s
从其他配置 wechat_mp 返回 AppId 与 OAuthRedirectBase,供 H5 网页授权使用。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 09:17:50 +08:00
7700baf127 feat:迁移到gitea
All checks were successful
Build and Deploy / deploy (push) Successful in 56s
2026-09-05 16:34:35 +08:00
zzh
b81432c0af feat: 查价结果返回销售产品说明
OrderPriceCheck 输出增加 ProductDescription,供前端报价卡展示线路简要说明。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 16:14:16 +08:00
zzh
25b4211b46 feat: 销售产品门户目录、线路排序与公告/到货调整
新增门户目录接口与 route_sort 字段迁移;完善公告创建与包裹到货相关逻辑。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 18:39:55 +08:00
zzh
eba1fa4867 feat: 注册绑定所属顾问与岗位职级字典种子
支持 AdvisorCode 写入 CustomerService=Account;补充 employee_position/employee_job_level 初始 SQL。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 12:45:13 +08:00
zzh
7e9a5d4ae0 feat: 用户资料支持企业微信客服接入链接
新增 user.WecomKfUrl 存取与迁移脚本,顾问接口同步返回该字段。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:09:34 +08:00
zzh
a70f6f2a87 feat: 接入 9610 汇总申报,字段按业务含义命名并对齐运单
含清单/报关单拉取、ITFX 转发配置、迁移脚本与拣货单号扩展。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-30 17:46:04 +08:00
zzh
78e06d01b9 feat: 工作台扩展代发/拣货统计与业务趋势接口
补充 Fulfill/Pickup 工作台统计 DTO 与查询实现,并扩展订单工作台聚合输出。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-28 10:59:10 +08:00
zzh
ce1349572d feat: extend receivable-payable APIs with summary, export, and filters
Add summary/export endpoints plus customer code, effective stage, time field, and payment status filtering for finance reconciliation.
2026-08-21 18:21:33 +08:00
zzh
2018e45a7d feat: 代发进度统计、申报HS分列与异常事件表迁移脚本
补充代发进度 Tab 计数、PrimarySkuCodes 与 Im/Ex HS 编码输出;新增 t_order_exception_event 幂等迁移(Handler*、ConcurrencyStamp)并同步 db.sql。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 17:06:16 +08:00
zzh
9d813a5f89 feat: 代发订单 FulfillmentType 与进度筛选、绑定拣货后端
支持 direct/warehouse 分轨、代发进度与库位排序、国内单号检索及到仓关联订单;扩展 SKU/店铺代发与库存绑定扣减能力。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:27:37 +08:00
zzh
654a65aba4 feat: workplace claimed stats and receiver address parse improvements
Add claimed count to workplace stats; refine receiver address parse DTOs/helpers and AI skill seed wiring.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 19:06:49 +08:00
zzh
7e442180cd fix: avoid SqlSugar invalid SQL from null/HasValue KB filters
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-04 16:53:09 +08:00
zzh
95940331ce feat: sync workplace spend stats and consolidate schema scripts into db.sql
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-04 16:26:22 +08:00
zzh
9a33eb00a5 feat: add knowledge base M1 APIs and workplace spend trend 2026-08-04 13:54:10 +08:00
zzh
b2355104cf feat: 完善揽收单与问题件处理能力
补齐揽收单字段/并发戳与问题件处理人配置,扩展异常工作流与下单同步揽收出参;移除已收货状态并补充相关 SQL 脚本。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-04 11:49:23 +08:00
zzh
c02cb21049 feat: add pickup-order model and door-pickup linking
Support 1 pickup to N logistics orders with create/pay/schedule APIs, parcel inboundMethod auto-attach, plus allocation-trace and inbound-billing updates already in tree.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 12:22:30 +08:00
zzh
cc100d40cf feat: support remote-zone factor matching and all-customer price tier
Split price/remote zone matching in billing and prefer the 全部客户 column for any price tier key.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-02 18:22:17 +08:00
zzh
c8107cb565 feat: add additional-service billing, conditions, and fee lifecycle hardening
Support optional services and executable billing conditions on sell/buy prices, percent-of-value and percent-of-freight formulas, place-order/inbound payable on chargeable weight, outbound receivable freeze, channel remote areas, billing simulate, and insurance-aware claims.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 18:04:28 +08:00
zzh
592054f062 feat: extract global AI service and persist sales-product publish AI reports
Move provider/chat APIs from /xhs/ai to /ai, rename t_ai_provider, and require adopted AI analysis on price publish.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 15:56:40 +08:00
d30375ba49 fix:auth 2026-08-01 09:18:02 +08:00
zzh
17fe638be6 fix: point SmallBag track upsert to ProviderService/Order/UpsertSmallBag
Align OMS TrackCenter client with the renamed UpsertSmallBag endpoint.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-31 21:13:03 +08:00
zzh
a55668ec33 feat: 订单列表表头筛选、远程排序与默认90天时间窗护栏
支持 filters[]/whitelist 排序,导出行数与批量 IN 上限,无时间窗时兜底近90天。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-31 11:25:31 +08:00
zzh
238eb5d817 feat: 新增收件地址 AI 解析接口
支持 /order/receiver/parse-address,供 PC/H5 下单地址解析使用。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 20:09:42 +08:00
zzh
644da097bf feat: add WeChat OAuth login API for H5 one-tap authorize
POST /rbac/auth/wx-oauth-login exchanges code for openid and issues customer token.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 15:56:45 +08:00
zzh
206dc3ef3c feat: ??????????????????????????
?????????????????????????????????? SQL?

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 15:16:55 +08:00
zzh
e0216e9692 feat: 销售产品贸易条款与查价分组展示,并修复用户资料 SQL 空值写入
查价返回 DDP/DDU 与产品分组;用户更新微信二维码时避免 EF 使用 DBNull。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 11:48:36 +08:00
zzh
f2f4cbf35b fix: 无邮箱注册改用占位邮箱,避免空串撞 uk_user_email
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 18:28:33 +08:00
zzh
0d578059ec fix: treat null/undefined contact strings as empty
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 17:28:37 +08:00
zzh
7fac6da1a4 fix: AI Agent 对话增加 /mcp/agent/chat,避免 OMS 反代漏配 /ai
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 12:41:50 +08:00
zzh
f72356f3f2 fix: 优化 AI Agent 查价/查轨迹提示,避免空回复与误要起运地
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 12:26:32 +08:00
zzh
7c410b1625 feat: 新增轻量 MCP 工具与 AI Agent,并限制 token 滥用
提供查价格/对客说明/查轨迹工具与管理接口;扩展 LLM function calling;按用户 Redis 限流并压缩上下文与工具结果。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 12:03:45 +08:00
zzh
53c986c746 fix: 修复智谱 AI 对话 URL,并合并自动触发预报时机
XhsLlmClient 对 /v4 基址不再错误拼接 /v1;自动触发「预报」归一为「下单」并补充迁移 SQL;下单失败支持存草稿相关入参与计费回滚调整。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 20:54:28 +08:00
zzh
41f4c58e99 Improve draft predeclare billing and structured create-fail payload.
Re-run forecast billing on draft pre-declare, and expose draftSaved/orderId/serviceNo via ErrorCode/Data/details for clearer place-order failure UX.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 19:30:27 +08:00
zzh
03f11a276f Add order attachment files table and move system labels off Order.
Persist generated/printed/downstream labels in t_order_file, drop Order.LabelUrl generate-status fields, and expose file list/upload/delete APIs with customer read-only systemLabel access.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 16:32:55 +08:00
zzh
e2443ed6f8 fix: restore country+weight price-check estimates for postcode zones.
When rules require postal codes, still quote by same-country snapshot zones as estimated; keep blocking countries not configured at all.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 11:14:12 +08:00
zzh
c8d35a8ef5 Add Swagger summaries for Fake.Rbac menu/org/role/permission APIs.
Cover the 29 RBAC endpoints that ship without XML comments so Swagger UI shows Chinese titles.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 10:33:48 +08:00
zzh
6f436f795f Fix downstream forecast success detection and persist provider service no.
Treat itfx body code/msg as business result, store full request/response, and write Data.serviceNo/trackNo back to the order.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 10:21:23 +08:00
zzh
fffecb5964 Fix downstream forecast: pass auth + cache itfx app secret
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 18:08:09 +08:00
zzh
28d14034bd fix: exclude domestic pickup products from price check
When destination country has no matching zone, stop using all price zones as fallback; also hide sales products in the domestic pickup group from price-check results and shipping options.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 16:00:58 +08:00
zzh
69d234c705 feat: simplify WeChat register and require contact before order
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 13:07:29 +08:00