rcx
bf96f5f005
feat(wms,oms):库存管理新增入库排名统计(按仓单+货品汇总,件数降序,与出库排名tab配对);还原出库排名第一版源码
...
入库排名统计(新增):WMS /inboundRankApi、OMS /executionInboundRankApi 的 queryMaterialRankList 分页+合计、exportMaterialRank 导出;口径:仅已入库(status=5),明细仅level=1主行,日期区间按入仓日期warehouse_date筛选(必填);一行=仓单内某货品合计(GROUP BY 仓单+货品 ORDER BY 件数DESC);字段:入仓日期/仓单编号/客户编号/存货人/货名/件数/毛重(吨=KG/1000)/投保总额(货品档案保额,组内MAX防重复累加)/体积(CBM)+货号/规格/单位;合计行:totalPieceCount/totalGrossWeightTon/totalInsureAmount/totalVolume/totalOrderCount;登录上下文:日期必填校验+topOrganizationId租户隔离,WMS另注入关联仓库warehouseId。出库排名统计(还原第一版):/outboundRankApi、/executionOutboundRankApi,按货品/线路汇总排名
2026-08-31 17:47:09 +08:00
rcx
da84b7bb69
feat(wms,oms):库存管理-库存查询新增进货日期、入库日期查询条件,新增进货日期字段贯通收货-上架-库存全链路
...
需求:OMS/WMS 库存管理-库存查询页增加查询条件:物料分类(后端已支持,无需改动)、
进货日期(新增字段)、入库日期。
一、DDL(sql/20260831_wms_oms_add_purchase_date.sql)
WMS 收货明细、上架明细、物料库存及 OMS 预留库存共 4 张表新增 PURCHASE_DATE DATE 列,
附批次明细配置模板、执行前检查与回滚语句;须先执行 DDL 再发布服务。
二、进货日期录入与落库链路(收货→上架→WMS库存→OMS库存)
1、录入入口为收货批次属性「进货日期」标签(批次规则配置,标签须一字不差),
ReceiptMaterialDetailImpl 两处标签解析新增分支;
2、收货明细→上架明细:StockReceiptOrderDomainService 6 处日期拷贝点补 setPurchaseDate(含子项);
3、上架落库:stockIn/sj 赋值写入 material_inventory;
4、同步 OMS:MaterialInventoryOmsParamDO 新增字段经 Feign omsEdit 传递,
写入 reservation_material_inventory;
5、库存行合并键:批次规则勾选后进货日期参与分行(getParam 映射 + selectListByWhere 全等匹配),
OMS omsEdit 行匹配同步按进货日期区分,避免不同进货日期误合并到同一行。
三、查询条件(两模块 /list 接口)
1、进货日期:purchaseDate(单日精确)+ purchaseDateStart/purchaseDateEnd(区间,End 含当天);
2、入库日期:WMS 新增 createTimeStart/createTimeEnd(按库存行创建时间过滤,与 OMS 现有口径一致);
3、列表/导出返回新增 purchaseDate 字段,分组查询取 MAX(purchase_date)。
说明:历史库存进货日期为空,按进货日期查询查不到存量数据(无来源可回填),区间查询会排除空值行。
2026-08-31 13:41:19 +08:00
rcx
1006860698
Merge remote-tracking branch 'origin/dev' into dev-ty1.2
2026-08-26 17:32:40 +08:00
王奎兴
1e00681289
恢复
...
xxl-job
2026-08-26 17:28:50 +08:00
rcx
353300b643
feat(wms):出入库导入增加料号与规格型号/SKU码一致性校验
...
- 按料号查物料档案后逐项比对,任何一项不符直接报对应错误:规格型号/SKU码必须与档案完全一致(trim后比较)
- Excel留空而档案有值、或Excel填值而档案为空,均视为不一致报错(提示Excel:空/档案:空)
- SKU码以档案条码(bar_code)为比对基准;出库料号已填写但货主下查不到时直接报错,不再被SKU码/商品名称静默兜底(与入库对齐
2026-08-26 16:56:27 +08:00
王奎兴
a5a222a78e
Merge branch 'dev' into dev-ty1.2
...
# Conflicts:
# mhd-modules/mhd-system/src/main/resources/bootstrap.yml
2026-08-26 14:11:45 +08:00
王奎兴
02a0b7aab6
xxl-job
2026-08-26 14:08:24 +08:00
rcx
7d8e1c3872
feat(wms):复核详情增加合计数;库存分配新增通宇专用可分配库存查询(物料+箱号/卡板+Sheet Ref匹配
...
1. 复核详情(getInfo/getInfoReviewOrderNumber)头表回填totalReviewedQty/totalPlanQty/materialKindCount,
口径与列表queryList聚合一致(计划量=Σifnull(material_plan_qty,pending+reviewed))
2. 新增 GET /materialInventoryApi/assignableList,按通宇账号分流(TongyuOrgUtil:组织ID=2830或组织名含"通宇"):
- 通宇:启用新匹配。双模式入参——传outOrderId+materialDetailId(须成对)则匹配值全部后端自取出库单/明细;
不传则按平铺参数(materialBaseInfoId/materialCode+boxPalletNo+sheetRefNo,多值串自动拆token OR-LIKE)。
固定条件:del_flag=1且可分配数量(allocation_quantity)>0,不分页全量返回,不套用用户组织数据权限
- 非通宇:保持原/list行为,内部直调list();进原查询前清除materialDetailId(新接口专用参数,防泄入
原查询的a.material_detail_id=上架单明细ID条件导致查空)
3. autoAssign自动分配同步分流:通宇走token匹配,非通宇保持原eq精确匹配不变
4. 新增util/BatchNoTokenUtil(批次属性多值拆分)、util/TongyuOrgUtil;库存批次属性回填抽为
fillBatchAttributes供/list与可分配查询复用,原逻辑行为不变
2026-08-26 09:30:01 +08:00
rcx
9068fa0e40
feat(wms):WMS出库单增加线路车次字段,App出库单详情显示线路/车次
...
背景:App出库单详情调wmsApi/stockOutOrderApi/getInfo,数据在WMS
stock_out_order表,该表未加线路/车次字段导致不回显。
1. mhd-api StockOutOrder(OMS下发Feign DTO)加lineCode/lineName/shuttleNo,
OMS执行单下发为copyProperties同名拷贝,自动透传,OMS代码零改动。
2. WMS stock_out_order表加三列(脚本追加);entity/PO加字段,
Feign接收按JSON字段名对齐落库;Mapper XML resultMap与显式列清单补列,
getInfo(getById自动)与列表均可返回。
3. 部署需重新打包mhd_oms与mhd_wms(OMS依赖的mhd-api jar变更)。
存量已下发WMS的老单无值,OMS/WMS跨库无法批量刷数,新下发单自动带。
2026-08-22 17:23:48 +08:00
rcx
c9520c65be
feat(wms):上架默认库位填充限定谷丰组织(id=2842)生效
2026-08-22 16:38:18 +08:00
rcx
2a4e39f755
Merge remote-tracking branch 'origin/dev-ty1.2' into dev-ty1.2
2026-08-22 14:10:07 +08:00
rcx
ab7219e600
feat(wms):上架管理PC上传页默认填充指定上架库位(维他奶仓→2层冷凍A區A01),仅回显不落库
2026-08-22 14:06:56 +08:00
王奎兴
1b3b1a6394
Merge branch 'dev' into dev-ty1.2
...
# Conflicts:
# mhd_wms/src/main/resources/bootstrap.yml
2026-08-22 13:59:22 +08:00
rcx
5fc491f612
fix(oms,wms):执行单重复下发致WMS收货明细翻倍修复,executeAndIssue获取仓库信息失败修复
...
一、收货明细翻倍(executionStockInOrderApi/issueOrder下发后,WMS收货管理详情明细×2):
根因:执行单下发接口无防重 + WMS接收端无幂等。executeAndIssue已自动下发过的执行单
仍可被手动再次下发(issueTime已置但无校验),重复推送使WMS插入同号入库主单+第二份
in_material_detail,再生成第二张同号收货单(收货单号"RV-"+入库单号确定性生成),
收货管理详情按单号查明细即双倍。四层防御:
1. OMS执行单issueOrder补防重:issueTime非空拒绝下发(与executeAndIssue对齐),
inOrderIds去重防同请求重复推送
2. WMS omsOrderAdd主单幂等:同单号有效单(del_flag=1)已存在则跳过插入
3. WMS omsOrderAddDetail明细幂等:按oms_in_material_detail判重,已存在行不再插入;
未传ID的行保持原插入行为
4. WMS autoAuditOmsInOrder取单补orderByAsc(in_order_id)消除同号取单随机性;
auditApprove生成收货单前按收货单号查重过滤,已生成过的单不再重复生成
二、executeAndIssue报"获取仓库信息失败":
1. 明细行warehouseId=0时兜底改用主表仓库(与下发issueOrder兜底逻辑对齐),
不再拿无效仓库ID调system服务
2. executeAndIssue/issueOrder两处报错增强为带仓库ID与错误信息,便于定位
存量已翻倍数据(重复入库单/明细/收货单)需另行软删清理,本次仅防新增
2026-08-21 18:21:03 +08:00
rcx
000092952f
feat(oms,wms):出库/运输单据增加线路车次字段,线路管理支持车次清单维护
...
1. OMS四张表(business_document_order/execute_order/
reservation_stock_out_order/execution_stock_out_order)加
LINE_CODE/LINE_NAME/SHUTTLE_NO三列,entity/DO/DTO/PO同步加字段,
出库两链路Mapper XML补列与resultMap。
线路编码/名称冗余存line_management的route_code/route_name
(两库不互通无法join);SHUTTLE_NO为字符串(如4或31-4),
前端拼"编码-车次"显示(31-4车次);不复用route(存tms_route.id)
和train_no(入库链路占用)。
下发链路(预约单->执行单,业务单->执行单)同名拷贝自动透传。
2. WMS line_management加SHUTTLE_JSON列(车次序号JSON数组),
四层加字段+XML;DTO加反序列化器兼容前端传数组,
PO加序列化器返回原样输出数组。
3. LineManagementImpl.update组织/仓库名称空串兜底,
修复编辑线路后组织名称被刷成空串、列表查不到的问题。
4. 新增建表脚本sql/20260820_oms_outbound_transport_add_line_shuttle.sql(达梦语法)。
2026-08-21 15:28:50 +08:00
rcx
22f2b66ffa
feat(oms,wms):库存导出按到期日分组排序并合并同物料同到期日库存(仅wlExpiry查询生效)
...
需求:库存查询导出按商品到期日分组归类、相同到期日相邻显示,相同物料相同
到期日合并库存。仅在 queryRule=wlExpiry(物料+到期日汇总查询)导出时生效,
列表显示不变;同时回退 8fedb6d6 对列表默认排序的改动。
一、列表默认查询还原(回退 8fedb6d6 ):OMS queryList 恢复 order by a.update_time desc,
Api 恢复 update_time 内存重排(空值最后),两侧列表排序与改动前一致。
二、导出排序(OMS/WMS queryListByWlExpiry):/list 新增可选参数 orderByExpiryDate,
仅 queryRule=wlExpiry 时生效:
1. wlExpiry + orderByExpiryDate=true(导出):到期日倒序(日期近的在前)、空值最后、
0库存靠后、同到期日按更新时间倒序;排序在SQL层,跨页/全量导出分组不被打散;
OMS Api 传参时跳过 update_time 内存重排,避免覆盖SQL排序
2. 仅 wlExpiry 不带参数:排序保持原样(sort_order+更新时间倒序)
3. 其他查询方式:不受影响,参数被忽略
三、合并:wlExpiry 查询 GROUP BY 物料+到期日+货主(货主隔离),相同物料相同到期日
合并一行,库存/可用/冻结数量及净重/毛重/体积/面积 SUM 汇总(复用现成查询,未改)
四、前端导出:/list + queryRule=wlExpiry + orderByExpiryDate=true + 当前查询条件(不分页)
2026-08-21 15:13:28 +08:00
rcx
3aec384ba0
fix(wms):出库委托单导入出仓日期丢失、升列与单价回填修复
...
- HeaderListener:parseDate升级为parseDateSmart,兼容Excel日期序列号(20000~60000≈1954~2064年,
POI DateUtil.getJavaDate转换)及yyyy/M/d、yyyy.M.d、yyyy年M月d日等多格式文本;
出仓日期/完成时间/下单日期三处调用点同步切换;解析失败记入dateParseErrors不再静默
- ExcelParseService:导入校验汇总dateParseErrors,日期单元格有值但格式不识别时阻断导入并
明确提示(为空仍放行,与原行为一致);单价回填从料号分支移至料号/SKU/名称三分支统一回填块,
补齐SKU、商品名称匹配场景
- ItemListener:升列新增normalizeNumeric归一化,去千分位逗号、空值统一存null、纯数字去尾零,
落库值恒为"纯数字或null",前端合计不再产生NaN/拼接
2026-08-21 14:56:12 +08:00
rcx
27f3fceb6e
feat(wms):出入库导入增加料号与规格型号/SKU码一致性校验
...
- 料号命中物料档案后:规格型号/SKU码必须与档案一致,Excel留空且档案有值同样报错(提示Excel:空);档案值为空则跳过该项
- SKU以档案条码(bar_code)为基准;错误行一次性汇总提示,拒绝导入
- 出库料号已填写但货主下查不到时直接报错,不再被SKU码/商品名称静默兜底(与入库行为对齐)
2026-08-21 14:42:25 +08:00
王奎兴
c2af421c7f
发30
2026-08-20 15:31:40 +08:00
王奎兴
57f87baf85
发30
2026-08-20 15:30:59 +08:00
王奎兴
530254e000
发31
2026-08-20 14:57:14 +08:00
王奎兴
64350f565b
列表查询id不对;
2026-08-20 14:16:23 +08:00
rcx
cc943d164b
fix(wms):入库单导入表头字段错位、备注丢失
...
- 取值向右查找时误把下一个标签/选项说明当值(承运方←Tel:、生产商←客户名称:、监管方式←送货地址:、送货地址←查验选项),现遇疑似标签即停止查找
- 备注:xxx同格书写为全角冒号,原仅按半角:拆分导致备注丢失,现全角/半角兼容
- 表头列遍历上界改用getLastCellNum,防空单元格漏扫尾部列"
2026-08-20 10:06:50 +08:00
王奎兴
4b434a2cd2
Merge branch 'refs/heads/dev' into dev_820
2026-08-18 16:36:28 +08:00
王奎兴
0376f8328c
无货主流程;
2026-08-18 16:35:33 +08:00
王奎兴
1d96322370
添加修改物料去除货主校验;
2026-08-18 09:53:30 +08:00
rcx
39ebcb70ed
wip(wms): 出库报关流程暂时搁置,注释相关代码恢复原出库交接流程
2026-08-14 16:53:22 +08:00
rcx
e7e64252e7
feat(wms): 出库报关流程增加通宇组织限制,仅通宇(2830)启用报关判断
2026-08-14 16:38:48 +08:00
zhaoqing
a400a34b0c
fix(wms):出入库复制新增时清空数量相关数据
2026-08-14 16:35:29 +08:00
zhaoqing
ac349ea8a8
fix(wms):出入库复制新增时清空数量相关数据
2026-08-14 15:55:28 +08:00
王奎兴
6f28cfdda0
Merge branch 'dev' into dev-ty1.2
2026-08-14 14:40:20 +08:00
王奎兴
5c472ad04e
分配逻辑;
2026-08-14 14:39:20 +08:00
王奎兴
070cdcd5de
仓码820
2026-08-14 14:36:46 +08:00
zhaoqing
061c5bc600
fix(wms):出入库复制新增时清空数量相关数据
2026-08-14 14:08:41 +08:00
zhaoqing
e5fea50466
fix(wms):修改导出
2026-08-14 11:36:08 +08:00
zhaoqing
63dcfaf028
fix(wms):复制新增修复
2026-08-14 09:39:41 +08:00
zhaoqing
c80e4b3ca3
fix(wms):尺寸赋值修改
2026-08-13 18:08:49 +08:00
王奎兴
fd1436da9c
Merge branch 'dev' into dev-ty1.2
...
# Conflicts:
# mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java
# mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/repository/todo/StockInOrderDO.java
# mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/todo/StockOutOrderDO.java
# mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/stockInOrder/StockInOrderDTO.java
# mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/stockOutOrder/StockOutOrderDTO.java
2026-08-13 16:46:09 +08:00
rcx
3d3036cebf
feat(wms): 出库报关流程改造
...
1. 交接环节增加 needDeclareFlag 判断:需报关单置为「已交接(13)」不扣库存,
不需报关单维持原逻辑直接「已出库(9)」扣库存。
2. 新增定时任务每小时调 sendDec 查报关结果,dec_status=P(海关已放行) 时
状态 13→9 并扣库存+推OMS。
3. 新增 /stockOutOrderApi/customsConfirmOut 接口支持人工触发报关确认出库。
4. 出库单状态枚举新增 13-已交接。
5. WMS 启动类新增 @EnableScheduling 开启定时任务支持。
2026-08-13 15:06:08 +08:00
zhaoqing
df51abe33f
fix(wms):total_volume,total_area字段可为空
2026-08-12 17:53:31 +08:00
高正杨
cbaab0ffee
收货上架单号规则;
2026-08-12 15:09:13 +08:00
王奎兴
3866bfee05
生成单号规则处理;+
2026-08-12 14:01:56 +08:00
zhaoqing
8b4e785de3
fix(wms):出入库查询和导出修改
2026-08-11 17:46:49 +08:00
王奎兴
0904b78846
调整备注无效修改;
2026-08-10 20:56:12 +08:00
王奎兴
14a5aedf15
Merge branch 'dev' into feature/dev-0729
2026-08-10 18:14:55 +08:00
王奎兴
176a0aa879
已审核入库单电子签名也显示;
2026-08-10 10:03:35 +08:00
王奎兴
5e65d63a4f
出入库单按规则生成;
2026-08-08 18:36:36 +08:00
王奎兴
6a0818350a
出库单按规则生成;执行单回显通知单备注;
2026-08-08 16:41:22 +08:00
王奎兴
1b8a75aea5
入库单按规则生成;
2026-08-08 16:04:46 +08:00
zhaoqing
76a290dc58
Merge branch 'dev-ty1.2' into dev
2026-08-08 15:12:27 +08:00