15785cdf2b
feat: enrich publish snapshots with downstream names and use API provider code for track ApiCode
...
Persist group/app/API provider display names in sales product and service channel rules publish snapshots, and resolve trajectory ApiCode from the service channel API provider code instead of forecast code.
2026-07-23 10:23:56 +08:00
6314790598
feat: persist track upsert response in batch job item resultJson
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-23 09:28:34 +08:00
1545bc385f
feat: ????????????? A0101/A0301/A0701
...
Fix UpsertSmallBag ApiCode/TrackNo assembly and MQ-disabled direct fallback; append lifecycle tracks on parcel create, inbound, and outbound. Redact channel fields for customer order list.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 20:11:25 +08:00
3d5eaa223a
feat: 小包全链路加固、待排货与运单号 IDE 前缀
...
查价/下单/入库/出库统一校验与计费上下文;待排货状态及可选入库排货;运单号改为 IDE+yyMMddHHmmss;补充迁移 SQL 与测试修复。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 19:00:55 +08:00
c2d854b83f
fix: 批量任务详情查询不再写库,修复 ConcurrencyStamp 冲突
...
- MapJobOutputAsync 改为只读聚合,GET /jobs/{id} 不再 UpdateJob
- /jobs/{id}/items 仅校验存在,避免并行查询双写
- 重写 migrate_rename_warehouse_C_to_c.sql,支持 Navicat 与大小写两步改名
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 16:51:13 +08:00
a1daea6b35
refactor: 仓储表 C_* 改为 c_*,优化专线小包批量模板
...
- 仓储实体与 db.sql 统一为小写 c_ 前缀,新增 migrate_rename_warehouse_C_to_c.sql
- 专线小包批量模板精简版/标准版双模板,Excel 必填标红与发件地址上传参数
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 16:18:59 +08:00
d791f7b251
fix: 批量任务插入后回填 JobItemId,修复 MQ 消费后仍待处理
...
InsertItemsAsync 批量插入后按 MessageId 回填自增 Id;消费者支持 JobItemId=0 时按 JobId+MessageId 解析子项。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 15:12:41 +08:00
ab63920e85
chore: 触发 CI 重新构建发布,部署 OrderTask 合并后的上传接口
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 12:55:08 +08:00
bb09a51f4a
refactor: 合并 OrderTask 至批量任务,移除 t_order_task 依赖
...
Excel 导入与任务进度统一走 t_order_batch_job;删除旧实体、仓储与 /order/task/* 接口,上传返回 jobId。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 12:36:57 +08:00
377cc525d6
feat: 增强批量任务子项反馈与客户单号持久化
...
统一成功/失败结果快照,补全客户单号与 Excel 行号;系统重试耗尽后标记失败避免子项长期停留在执行中;任务 API 返回 pending/running/cancelled 计数。
2026-07-22 12:00:53 +08:00
fc92e2903b
fix: 字典列表分页改用 RepositoryPageHelper 避免 Where 丢失
...
Fake GetPagedListAsync 带 sorting 时 total 正确但 items 返回全表;dictType 筛选已生效但被该 bug 掩盖。
2026-07-22 11:06:21 +08:00
793085607a
refactor: 字节枚举整型落库并统一发布快照 Status
...
发布记录 Status 改为 EsSnapshotStatus(TINYINT),计费启用判断改用 EnableStatus;db.sql 与 migrate_enum_int_comments.sql 补全枚举字段注释及旧库迁移。
2026-07-22 10:22:54 +08:00
dd2abab42b
fix: 字典类型项数统计按 trim 后 DictType 分组汇总
...
避免类型编码首尾空格导致左侧菜单 itemCount 匹配失败。
2026-07-22 09:25:00 +08:00
5a2d56986a
fix: 字典创建支持恢复软删项并完善类型迁移脚本
...
批量导入时若同类型编码曾被软删,改为恢复并更新而非插入,避免唯一键冲突 500;迁移脚本补全预置类型中文名并支持覆盖 Remark/TypeSort。
2026-07-21 18:49:59 +08:00
93cf065165
feat: 新增字典类型元数据表与类型备注 API
...
支持字典类型备注维护及左侧类型列表查询,创建字典项时自动补齐类型元数据。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-21 17:48:42 +08:00
dcf856568e
fix: 批量任务系统失败重新抛异常以触发 EventBus 重试
...
Restore InvalidOperationException on system failures after EventBus refactor; use OrderTaskStatusCodes when syncing import tasks.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-21 17:38:03 +08:00
365f9d8a94
fix: 数值枚举从 1 起编并统一 OrderTaskStatus 常量
...
Reserve 0 as None for byte enums and align customer group labels with dict codes; add OrderTaskStatusCodes for import task status strings.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-21 17:37:54 +08:00
32753e7606
简化
2026-07-21 10:45:57 +08:00
98664aad3b
fix
2026-07-21 09:12:46 +08:00
d49efcb341
upgrade
2026-07-20 20:48:15 +08:00
a4d6400318
refactor: 订单批量任务改走 Fake.EventBus.RabbitMQ
...
移除自建消费者与队列拓扑,统一由事件总线发布/消费,并优化下游转发查询与配置。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-20 17:54:29 +08:00
188aed1ee6
feat: 店铺订单创建物流/代发,并补齐收件人字段与种子数据
...
- 新增 batch-create-logistics / batch-create-fulfill:按平台行建物流单并回写 LinkedOrderId,代发支持绑定冻结与失败回滚
- ParcelBuilder 支持无 SKU 映射的平台行申报;批量创建可指定 OrderSource=platform
- 库存绑定候选接口支持 orderId=0 草稿选仓
- 店铺订单增加结构化收件人字段(db.sql + 迁移脚本),拉单回填;补充 customer9 店铺/揽收种子与 ConcurrencyStamp 修复脚本
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-19 22:33:55 +08:00
2b9c677fa7
perf: 登录单次快照、refresh 去 UserInfo,并失效角色菜单缓存
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 23:39:29 +08:00
b0813ea12d
fix: 登录 UserInfo 构建改为串行查询,避免 DbContext 并发异常
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 23:26:47 +08:00
2188a3ce6e
perf: 登录带回 userInfo,并加速 get-current-user
...
登录/刷令牌返回完整用户信息(含 menus);用户资料与权限并行查询并缓存 3 分钟,减少登录后二次慢请求。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 23:13:24 +08:00
e1f40ce36c
fix: 显式注册面单 PDF 服务与 ILabelPdfRenderer,修复打印激活失败
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 19:19:44 +08:00
8929ebc5b3
refactor: 面单字段字典去掉发件人组,单号组按标题字数排序
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 19:10:41 +08:00
7bc7cdf417
fix: 批量队列消费者串行处理,避免 channel 并发导致消息长期 Unacked
...
AsyncEventingBasicConsumer + Prefetch>1 时 IModel 非线程安全,并发 Ack 易卡死;改为同队列串行消费并加固 Ack/Nack。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 18:22:26 +08:00
2d229bbedd
fix
2026-07-18 17:27:34 +08:00
b679151eb1
feat: Hiprint模板转QuestPDF异步出面单,并接通打印链路
...
支持模板预览/字段字典、产品绑定 LabelTemplateId、订单 Pending→Ready 生成 PDF,以及 order/print、批量与仓内 printUrl。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 14:52:39 +08:00
9957b79b19
feat: 打印面单扫码核对 lookup(运单/客户单/跟踪号/包裹/SKU)
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 12:53:35 +08:00
fd9f57bac1
feat: SKU/入库预报返回客户信息,库存出入库历史与可用冻结量
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 12:07:07 +08:00
f4ddd993b9
feat: 管理端列表返回客户名称/编码,并加固绑定与客户会话
...
订单/包裹/库存/店铺授权/店铺订单列表补充 customerName、customerCode;库存绑定按会话客户解析并兼容可用量;修复客户 mapId 识别与 ConcurrencyStamp 迁移。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 11:10:53 +08:00
dc3071c90d
feat: 物流单绑定包裹/库存(冻结可用库存)
...
支持我的订单对已创建物流单绑定仓储资源:新增 t_order_stock_bind 与 stock-bind API,库存/包裹增加 FrozenQty、AvailableQty。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-18 10:32:44 +08:00
039cbba3d1
feat:fake
2026-07-17 17:43:13 +08:00
fc823ed24e
feat: 工作台统计补充店铺数量与待处理店铺订单,包裹单号前缀改为 ID
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-17 14:17:00 +08:00
a9338a4b25
feat: 揽收订单与列表支持管理端按客户筛选
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 12:41:20 +08:00
1cf55b2669
fix: 地址簿管理端可查全部,修复 SqlSugar 条件翻译
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 12:30:30 +08:00
9a48ec1a63
feat: 店铺订单拉单同步、RTS 与重新获取面单
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 11:38:06 +08:00
c2c03f63e3
feat: 店铺平台 OAuth 配置迁入其他配置页
...
运行时优先读 t_system_other_config,修正管理端客户提示文案,并提供配置种子 SQL。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 11:03:02 +08:00
674cbdd011
feat: 店铺真授权跳转与地址类型(发件/退件/收件)
...
对接 Lazada/Shopee/TikTok/Temu OAuth 与回调落库,移除手工店;地址管理支持按类型默认与揽收校验。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 10:25:13 +08:00
341a318f0b
feat: 客户发件地址与揽收订单,复用小包创建全链路。
...
新增地址簿 CRUD、pickup/create、订单 orderSource 筛选;附带包裹商品图片上传接口。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 18:58:48 +08:00
4b7c396d92
包裹明细增加商品图片 ImageUrl,支持采集落库与列表返回。
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 14:32:55 +08:00
d73c98b44e
修复列表分页丢Where:改用GetListAsync分页,状态筛选生效。
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 13:45:08 +08:00
3d0db418d2
修复列表状态Tab将all误当状态筛选,并完善插件草稿TTL与客户上下文。
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 12:46:05 +08:00
f0d0659750
包裹明细增加 AttributeText 属性字段。
...
EOF
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-14 20:10:39 +08:00
d0df7e864c
新增快递到仓 API 与表结构,并支持 SKU 图片上传。
...
EOF
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-14 20:06:47 +08:00
600ab37594
统一 OMS DDL 到 db.sql,并新增采集插件草稿 API。
...
清理 sql/ 增量与种子脚本;E2E 不再依赖种子;PluginBrowserService 对接哪哪发「我的包裹」采集。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-14 19:44:09 +08:00
7e90112cbf
完善仓储客户上下文解析(未传客户查全部),并补充库位与确认收货权限种子。
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-14 11:12:41 +08:00
c36bdb237c
重构客户编号生成规则,并修复店铺订单 summary SQL 翻译错误。
...
采用年码+月码+序号编码(5/6位,单月最多10000);summary 接口改用 hasStoreFilter 避免 SqlSugar 生成非法 SQL。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 17:54:29 +08:00
86a978b557
修复仓储与店铺订单列表 SqlSugar 可空筛选条件 SQL 翻译错误。
...
列表 predicate 改用 hasWarehouseFilter/hasStoreFilter 等本地变量,避免 ORM 生成非法 SQL。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 17:15:06 +08:00
c2d7b5c854
修复店铺列表 ExpirationFilter 嵌套三元导致 SqlSugar IIF 翻译失败。
...
按 expired/within7days/normal 分支构造独立 predicate,与充值等模块写法对齐。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 17:10:31 +08:00
fb61fbb072
修复仓储/店铺列表 ConcurrencyStamp 缺失与可空客户ID的 SQL 翻译错误。
...
补迁移脚本为 C_* 与 t_sales_* 表增加 ConcurrencyStamp;列表查询改用 hasCustomerFilter 模式避免 ORM 生成非法 SQL。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 16:48:05 +08:00
36fb191f94
修复管理端访问仓储与店铺接口时客户ID必填报错。
...
列表/汇总/详情改用 ResolveListCustomerIdAsync,管理端未传 customerId 时可查询全部数据。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 16:14:44 +08:00
8000162f02
docs: 仓储与店铺接口补充 Swagger 中文命名
...
为 WarehouseService、PlatformStoreService、PlatformStoreOrderService 全部新增接口添加 XML 注释,便于 Swagger 中文展示与前端对接。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 15:46:32 +08:00
a383ee6f32
feat: 实现仓储模块与平台店铺订单后端能力
...
新增仓储领域实体、仓储库、WarehouseService 全套接口及数据库迁移脚本;
实现店铺授权、店铺订单服务与库存匹配创建小包单;补充仓储模块 RBAC 权限种子数据。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 15:19:35 +08:00
18b53de20c
fix: 批量邮件 SMTP 改用 MailKit 修复 SSL 465 连接
...
替换 System.Net.Mail,正确支持隐式 SSL 与 STARTTLS,解决 Syntax error 测试连接失败。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 11:59:01 +08:00
8ac7e6487c
feat: 优化公告通知接收人过滤与客户删除同步
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 11:22:21 +08:00
36525ca688
fix: 微信注册头像仅写入客户表避免 RBAC Avatar 超长
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 10:26:50 +08:00
9d57d221af
fix: 微信注册软删除占坑与字段过长导致保存失败
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 10:15:38 +08:00
5e26c5bcec
fix: 微信注册保存失败提示与订单模板申报字段推导
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-11 09:52:44 +08:00
43563b727f
feat: 自动触发公式引擎与查价运输方式分组接口
...
实现中文公式预报前拦截、规则测试 API 及按销售产品分组返回查价运输方式选项。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 18:36:17 +08:00
27e7ade388
feat: 销售产品对客说明字段与保存接口
...
支持 CustomerGuideMarkdown 存储、迁移脚本及 customer-guide/save API,完善销售产品详情输出。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 15:17:36 +08:00
3818ce7876
feat: RBAC用户扩展、专属顾问接口及仓库字段清理
...
接管用户 API 支持电话/工号/微信号/微信二维码,新增客户专属顾问查询,并移除仓库客服电话与微信相关字段。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 11:23:54 +08:00
d8752959e7
feat(order): 强化小包下单规则并暴露预报失败原因
...
客户单号必填且同客户唯一,运单号统一 NE 前缀自动生成;模板导入不再接受跟踪号/运单号;列表与导出返回预报失败原因字段。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 09:44:12 +08:00
7d5bc2408f
fix(order): 批量导入回写订单 ID 并增强 Excel 表头映射匹配
...
导入行成功后写入 batch job 的 orderId/serviceNo;预报失败时尽量关联草稿订单。Excel 读取与行映射支持表头归一化,兼容带括号说明的列名。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 18:34:59 +08:00
fc22d9c6c6
feat(order): 优化标准模板 Excel 生成并支持保存映射时选择标准模板
...
标准模板仅保留中文表头、必填标黄与枚举下拉;导入起始行改为第2行;保存自定义映射时可指定 standardTemplateKey。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 17:23:19 +08:00
9ab112a36e
feat(order): 下单模板映射与 Excel 批量导入小包创建
...
新增专线小包标准模板生成、自定义列映射 API,并将 /order/upload 改为按映射解析 Excel 后走 CreateParcelCoreAsync;列表查询时自动补齐标准模板种子数据。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 16:42:22 +08:00
7ab6b6fb51
refactor(order): 移除链路演练功能
...
删除模拟签收 API 与 RBAC 菜单/权限种子,E2E 测试回退至待上网状态。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 12:41:59 +08:00
c918faec97
feat(order): 订单链路演练签收 API、E2E 测试与批量任务 SQL 修复
...
补充链路演练模拟签收接口、E2E 主数据/菜单种子与测试项目,并修复批量任务列表 SqlSugar 查询及表结构注释脚本。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 11:32:45 +08:00
4f3bbd17bc
feat(order): 订单批量任务 RabbitMQ 异步处理与治理 API
...
引入批量 Job 表、RabbitMQ 队列与消费者,支持导入/小包创建及我的订单批量操作异步化,并提供任务列表、重试失败、取消 pending 与 DLX 监控接口及测试。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 09:52:22 +08:00
dd5c82e523
feat(order): 支持订单详情手动添加费用项
...
新增 OrderFeeAddInput 并在 OrderEdit 服务中实现费用追加逻辑,配合前端订单详情抽屉添加费用能力。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:36:18 +08:00
74151b0738
feat(customer): 列表返回 Id 并支持管理员代登客户门户
...
补充客户分页 Id 字段与 customer-oms-login 接口,修复管理端删除/免密登录;公告通知增加接收人候选项与客户接收类型。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 18:35:46 +08:00
90f6c25b04
feat(order): 问题件/理赔件标记、通知投递与自动触发
...
新增 mark-problematic/mark-claimed/handle-status 接口,异常事件审计表与占位符渲染;inApp/email 通知及下单/入库/出库自动触发运行时。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 16:46:52 +08:00
9359c9cb5b
fix(channel): 修复 inApp 通知方式被 Normalize 误过滤
...
统一映射为 canonical code inApp,并修正站内信显示名匹配。
2026-07-06 15:39:22 +08:00
0c763f9707
fix(channel): 修复问题模板重复校验 SQL 语法错误
...
避免 SqlSugar 翻译闭包 null 比较,改用分支与布尔标志构建查询条件。
2026-07-06 15:28:01 +08:00
d49573fe9a
feat(channel): 新增问题模板 CRUD 与 options API
...
支持按组织与问题类型维护通知模板,含建表脚本与仓储层唯一性校验。
2026-07-06 14:58:37 +08:00
cde0ccb6b0
feat: 新增工作台与实时监控统计 API
...
- GET /order/workplace-stats 与 /order/workplace-trend 供工作台使用
- GET /monitor/overview 供实时监控页订单/客户/轨迹统计
- 扩展订单仓储聚合查询,status-counts 同步应用数据权限
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 18:24:48 +08:00
991ad49255
fix(微信): 加固 GET 验签,直接输出 echostr 原文
...
- 从 Query 读取 signature/timestamp/nonce/echostr 并记录失败原因
- 验签通过后 WriteAsync 写回 echostr,避免 JSON 包装
- 补充生产 Token 验签集成测试
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 13:43:42 +08:00
da1227d8aa
feat(微信): 消息推送支持明文 XML/JSON 验签与回包
...
- POST /apiwechat/verification 恢复消息回调,支持 JSON/XML 明文包体
- SHA1 验签通过后 GET 原样返回 echostr,POST 无回复时返回 success
- 补充官方验签示例与 JSON/XML 推送集成测试
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 12:52:43 +08:00
6c2e095196
fix(微信): 验签接口仅保留 GET 并原样返回 echostr
...
- /apiwechat/verification 移除 HEAD/POST,仅保留 GET 验签
- 验签通过后从 Query 原样返回 echostr 纯文本
- 扫码回调测试改走 /wechat/mp/{appId}
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 12:30:42 +08:00
0a5bd75618
feat: 新增财务应收应付接口并补充 Swagger 接口名称
...
- 新增 Finance 模块应收应付分页查询及订单费用联查
- 为 DataPerm、Xhs 等缺失接口补充中文 summary 接口名称
- 优化微信公众号验签 Swagger 命名并补充路由集成测试
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 12:15:15 +08:00
11520d014b
fix(数据权限): 修复 DataScopeContext 缓存 JSON 反序列化失败
...
将 IReadOnlySet/IReadOnlyList 改为 HashSet/List 等可序列化类型;缓存读取失败时自动重建。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-03 17:47:29 +08:00
5f1f16c9ad
fix(数据权限): 组织树递归查询使用 ParentId 而非 PId
...
修复 get-effective-by-user 展开下级组织时报 Unknown column c.PId。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-03 16:44:46 +08:00
0bf909dc2b
feat(rbac): 新增内部用户列表接口,排除纯客户账号
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-03 12:19:14 +08:00
ad367998d2
fix(数据权限): 修复 GUID 种子/SqlQuery 映射并补充诊断修复 SQL
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-03 11:58:24 +08:00
c442833d9c
feat(数据权限): 实现 P1 后端 API、有效范围合并与订单列表集成
...
- 新增 DataPerm 模块(配置 CRUD、模板、字段脱敏、变更/访问日志 API)及 SQL 脚本
- 订单列表/导出接入 EffectiveScopeBuilder 五维数据权限过滤
- 修复集成测试 JSON 反序列化与 RBAC 用户名解析;新增 DataPerm API 集成测试
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-03 10:27:37 +08:00
02cb06b86c
feat(wechat): 完善扫码登录缓存账号信息与轮询状态接口
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-02 15:51:59 +08:00
bf81f00c91
fix(wechat): 注册失败时返回中文错误并校验 RBAC 账号
...
避免 user 表重复写入抛出英文 DbUpdateException;注册前检查 RBAC 登录账号/邮箱是否已占用。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-02 15:08:24 +08:00
4d93a9b50d
fix(wechat): 注册 OAuth/绑定 API 未注册导致 404
...
将 WeChatCustomerService 纳入动态 API 映射,暴露 /wechat/oauth/user-info 等 H5 接口。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-02 14:51:47 +08:00
76ff60e793
fix(wechat): 验签接口支持 HEAD 并避免配置异常返回非 200
...
微信后台/探活对 HEAD 会收到 405;读取 wechat_mp 配置异常时改为 HTTP 200 + error,与 WMS 行为一致。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-02 12:15:25 +08:00
7257bf869e
fix(wechat): 创建二维码 POST 改用 StringContent 避免微信 412
...
PostAsJsonAsync 可能走 chunked 传输缺少 Content-Length,微信网关直接返回 HTTP 412 空响应。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-02 11:49:12 +08:00
8ef9a43f76
feat(wechat): 将 access_token 持久化到 t_system_other_config
...
改用数据库存储 token 并支持 AppId/Secret 变更时自动清空,替代内存缓存并增加无效 token 重试。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-02 11:03:36 +08:00
5c6c4f6e48
feat(wechat): 公众号配置改从 t_system_other_config 读取,支持后台其他配置维护
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 16:18:43 +08:00
d168a21e96
fix(wechat): 公众号验签接口始终返回 HTTP 200,避免 BusinessException 导致非 200
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 15:25:20 +08:00
1b8a5af807
配置微信公众号本地开发参数:补充 AppId 与 Token,支持 apiwechat/verification 验签联调。
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 13:50:31 +08:00
50c6fd8ac8
fix(xhs): reject offline agent for analysis and normalize browse task results
...
Validate agent is online before starting analysis tasks; normalize list_feeds JSON when persisting task reports.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 12:36:28 +08:00
f7be966adc
fix(xhs): task/report 与 task/cancel 返回 JSON 响应
...
避免 Agent 客户端解析空 body 报「非 JSON 响应」导致任务上报失败。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 11:58:48 +08:00
607e09433b
fix(xhs): 管理员账号使用 customerId=0,取消客户账号限制
...
小红书各服务统一走 ResolveXhsCustomerIdAsync,管理员无需客户上下文即可操作 Agent、拟人设置等接口。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 09:02:18 +08:00
ffaf325563
fix(xhs): repair publish/task list SQL and RBAC menu seeds
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 11:23:37 +08:00
af53c48f7f
feat: 新增小红书模块后端(Agent/任务/发布/分析/技能/AI)及 SQL 种子与 RBAC GUID 修复脚本
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 09:43:09 +08:00
42b41e68c7
fix: 微信回调路由挂到 AuthService 以修复 404
...
Fake 框架未注册 SimpleAdmin.Api.WeChat 下的 ApplicationService,
将 /apiwechat/verification 等公众号验签与消息接口并入 AuthService。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 20:46:49 +08:00
26ccc69dc6
feat: 兼容 WMS 公众号回调路径 /apiwechat/verification
...
支持公众平台配置 oms.nanafa.com/api/apiwechat/verification 的验签与消息推送。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 20:27:07 +08:00
e4894f9627
feat: 批量发送邮件 API(模板、SMTP 配置、发送记录)
...
新增模板/账号持久化、SMTP 测试与单封发送接口,发送成功后写入邮件记录表供前端列表展示。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 19:56:35 +08:00
1c0dce9956
fix: 查价运费匹配与费用公式展示优化
...
修复卖价明细英文货物类型无法匹配导致 freight 为 0 的问题;查价返回算法算式、其他费用明细及中文货物属性名;运费列仅汇总 freight 费用项。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 19:25:33 +08:00
07fc7fffe7
feat: resolve createBy/updateBy to RBAC user display names
...
Add OmsRbacUserDisplayNameResolver and use it in customer, order, warehouse, and channel APIs so audit fields return names instead of mapIds.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 19:07:17 +08:00
e875f0c012
feat: price-check by cargo type and warehouse, customer auto-code, track apiCode
...
Support multi cargo-type and warehouse combinations in price check billing. Auto-generate customer codes (W+yyMM+seq) on create/register; require email. Use order DownstreamSupplierCode as track UpsertSmallBag apiCode.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 18:40:10 +08:00
bc0bde72bc
feat(track): return reproducible curl in UpsertSmallBag result
...
Expose CurlCommand in SmallBagTrackUpsertResult so track sync dialog can show the exact curl used for the request.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 13:00:11 +08:00
3046f26837
fix(track): forward Authorization Bearer to UpsertSmallBag
...
Track gateway requires the logged-in user JWT in addition to appKey/timestamp/sign headers. Capture token before async enqueue so background sync still works.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 12:53:28 +08:00
bd1288edc9
fix(track): send UpsertSmallBag auth via HTTP headers
...
Track SignatureValidationFilter reads appKey/timestamp/sign from headers, not query. Reverts e642f08 query transport and aligns debug script.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 12:35:39 +08:00
eac7b84f6a
feat(order): downstream createOrderOne API from order DB
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 12:29:06 +08:00
e642f089ba
fix(track): UpsertSmallBag auth params in query, align sign helper
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 12:18:57 +08:00
545f0825f8
feat(order): 规则快照下游元数据、订单绑定字段与系统其他配置
...
排货发布 enrich Providers 并确认渠道时写入 t_order 下游四字段;接入 itfx 元数据客户端;系统其他配置与小包轨迹 DB 配置;手动轨迹 UpsertSmallBag 接口。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 11:31:15 +08:00
fe30d071e6
feat(order): 修复列表状态筛选、收件国家名与小包轨迹同步
...
改用仓储链式 Where 修复分页列表状态过滤失效;保存并返回 ConsigneeCountryName;预报成功后异步 UpsertSmallBag;仅草稿/已预报可删除。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 19:43:35 +08:00
095ad66717
feat(order): 增加 IsPaid 字段并修复列表状态筛选
...
- t_order 新增 IsPaid,支付/出库以该字段判断;含迁移脚本
- 列表接口补充 productName、channelName
- 修复 BuildOrderPredicate 状态条件 SqlSugar 翻译丢失
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 19:13:15 +08:00
e7fd69b644
feat(order): 排货确认渠道与应付计费,出入库计费对齐设计
...
- 预报/入库后按排货规则选服务渠道并写入渠道买价应付费用
- 排货发布快照 Providers 去除 CreateTime/UpdateTime
- 出库扫描扩展 OutboundRecord 字段与 ApplyShipBillingByWaybillAsync
- 服务渠道买价发布预览;按 ChargingStage 删除应付费用
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 16:44:04 +08:00
fdbdfa8124
20260627
2026-06-27 11:56:06 +08:00
d766343ffe
feat(customer): account flow ledger, pay deduct balance, status counts
...
Add t_customer_account_flow with list API, deduct balance on order pay, credit ledger on recharge approve, and GET /order/status-counts for tab badges.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 19:09:43 +08:00
82df5d1e79
feat(order): add order edit APIs, inbound lookup, and fee output
...
Support order detail/weight/declaration updates, receivable and payable recalculation, inbound scan order lookup, receive billing overwrite, and OrderOutput feeList for my-orders drawer.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 17:30:41 +08:00
5e26de6ff3
feat: remove ChargingTime and bill receivables by weight stage
...
Drop sell/buy price charging-time config; write receivable fees after forecast or receive chargeable weight, hook inbound billing, fix order list status filter, and add DB migration.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 16:24:53 +08:00
91ba6d5d59
fix: 计重进位快照兼容与 KPI 分区明细 Excel 导入
...
- 发布规则快照反序列化合并 StartValue/EndValue 至 Start/End
- 小包创建进位时快照区间无效则降级读 t_weight_rounding_info
- 新增 KPI 分区明细导入模板下载与 Excel 批量导入接口
- 补充快照进位与导入相关单元测试
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 15:29:17 +08:00
7827b4803e
feat: slim rules/price publish snapshots with PostcodeRange (left,right]
...
Use slim DTOs without audit timestamps; migrate legacy LeftPostcode/RightPostcode on read.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 14:10:34 +08:00
d8a98fbbc8
feat: 规则发布预览接口并抽取快照组装逻辑
...
新增 GET publish/preview 返回含黑名单/偏远/计重/进位明细的完整 rules 快照,便于核对 Content。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 13:48:07 +08:00
2c69e8e5b8
feat: 规则快照固化计重/分区规则并修正卖价公式
...
规则发布写入黑名单、偏远、计重规则与进位明细;查价/下单优先读快照。修正 unit/total/continue 算价及续单价相邻档位总价基数。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 12:57:34 +08:00
8aa6ceb677
fix: 价格发布从卖价明细分区推断 PriceAreaId 并写入快照
...
产品未配置 PriceAreaId 时,根据卖价明细「分区」值匹配 t_kpi_area 或 t_kpi_area_info 后固化 PriceAreaInfos。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 11:58:01 +08:00
3a65e8c58f
feat: 价格发布快照固化分区规则,查价优先从快照匹配不再查库
...
发布/LIVE 快照写入 PriceAreaId、PriceAreaInfos;US+06000 命中分区键 3 单测通过。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 11:20:33 +08:00
cd061aaaed
fix: 查价失败原因按价格项细化,指出分区/重量等具体不匹配项
...
新增 ExplainQuotePriceMiss 逐条说明运费/操作费等未命中原因;zone 失败时附带卖价明细分区。单元测试 6/6 通过。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 10:49:08 +08:00
94a503afb3
fix: 查价分区键从国家+邮编解析,移除默认分区兜底
...
PriceAreaId 优先取产品表并从规则快照回退;未命中 t_kpi_area_info 时在 zone 步骤返回明确原因,避免与卖价明细分区键不匹配。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 10:31:52 +08:00
148caae1e7
查价增强与小包国家码:查价忽略收费时机,支持 unit/total 字典公式与重量左开右闭区间,未命中返回 failures 步骤与原因;收发件人 countryCode 改为 ISO 二字码。
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 09:57:14 +08:00
13ccd198d5
修复创建订单报错
2026-06-25 19:59:06 +08:00
b7ed14d6af
修复订单隔离和查价
2026-06-25 19:39:07 +08:00
00835bfadd
修复充值和查价
2026-06-25 19:10:44 +08:00
12ee25ad57
build
2026-06-25 17:47:46 +08:00
f18dd7a470
修复充值
2026-06-25 12:14:59 +08:00
1c5a38ad73
微信登录和创建应收和应付费用
2026-06-24 17:00:35 +08:00
c1219e0238
ok
2026-06-10 17:57:43 +08:00
dab31a7c8f
fix:audit
2026-06-10 10:30:41 +08:00
73d4d112a2
1
2026-06-09 15:37:56 +08:00
20b95da384
1
2026-06-09 15:37:52 +08:00
96724376a6
feat: new
2026-04-29 09:38:07 +08:00
6458ab89ba
fix
2026-04-22 17:48:05 +08:00
22bb8ab425
ai-fix
2026-04-21 17:54:52 +08:00
4fa45b6944
ai-fix:proxy https police?
2026-04-17 11:25:50 +08:00
2e65ea4ee7
feat:remarks
2026-04-17 11:09:01 +08:00
829af8c576
upgrade
2026-04-16 17:22:58 +08:00
a4e73283af
append
2026-04-15 17:05:30 +08:00
b912c5b159
feat: remarks
2026-04-15 16:50:57 +08:00
91a8ccdecb
ai-init
2026-04-15 15:25:38 +08:00
b1520cfebf
feat: add consul kv
2026-03-20 15:48:22 +08:00
85627807eb
add fei shu
2026-03-20 15:42:08 +08:00
5b8fa4a577
move
2026-03-20 15:40:25 +08:00
31f13dac73
add docker
2026-03-20 15:24:40 +08:00
619518e7bf
init
2026-03-20 15:15:43 +08:00