rcx
1300a4e1f8
fix(oms):出库排名OMS端数据源改为跨库查WMS出库表,修复查询结果恒为空
...
OMS库出库单状态从不流转(预约/执行单全部status=1,无"已出库"数据),原SQL按执行出库单status=9过滤导致查不出任何数据;改为跨库取WMS出库表NGWL_TEST_WMS.stock_out_order/out_material_detail(与OMS库存查询跨库join material_base_info同一模式),口径与WMS端/outboundRankApi完全一致:已出库及之后状态(9,12,13)+明细level=1主行+按出库单创建时间筛选,两边页面数字一致;接口路径/参数/返回结构均不变,其余文件仅更新注释中的数据源说明
2026-09-01 09:10:59 +08:00
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
a983ae639e
fix(wms,oms):物料/过期日期查询补查入库日期(create_time)与更新时间,分组页签入库日期显示为空
2026-08-31 15:59:54 +08:00
rcx
a74afd837c
feat(oms):入库业务单新增页面新增按物料编号查询库存批次最近5条过期日期接口 /reservationMaterialInventoryApi/queryRecentExpiryDates/{materialCode},按物料编号关联 NGWL_TEST_WMS.material_base_info 查 reservation_material_inventory 库存批次,返回过期日期+批次号(date_format 按天去重、到期日倒序、limit 5),供前端下拉回显(也可点日期图标手动选择);非平台租户按登录用户一级组织 top_organization_id 过滤(与 /list 一致);沿用 Api→ApplicationService→DomainService→Facade→Impl→Mapper 分层,新增响应对象 MaterialInventoryExpiryBatchPO(expiryDate/batchNumber)
2026-08-31 15:22:59 +08:00
rcx
bc3afbacb1
feat(wms,oms):物料分类:库存列表返回增加 materialClassifyCode/Name 显式映射
...
(ListTypeHandler,数据关联 material_base_info 带出)
2026-08-31 13:58:02 +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
2d1e4b5912
feat(oms):出入库导入按编号自动匹配名称并校验客户/物料存在性,模板列位改为动态识别
...
需求:①入库业务单导入模板只填物料编号+客户编号,物料名称/客户名称按编号自动匹配库中数据
②③出库导入校验客户/物料是否已存在,不存在提示"进行维护" ④库中查询结果为空(确无数据)时报错
一、入库导入(ReservationStockInOrderImpl.parseStockInExcel):
1. 物料逐编号查库,缺失料号收集后一次性报错"物料[xx]不存在,请先维护物料信息后再导入"
2. 明细新增客户编号:去重后查库,为空报错"客户[编号]不存在,请先维护客户信息后再导入";
查到则以该客户为单据货主并自动匹配名称;与物料归属货主不一致时拦截并提示两者编号
3. 明细回填库中物料名称;未填客户编号时维持原"货主取自物料"逻辑,兼容老模板
二、出库导入(parseExcelFile):
1. 物料/客户校验前移到落库前(原为先落库后查客户,报错会留半截数据)
2. 物料查不到收集后报错维护提示;客户查不到报错维护提示,客户ID/名称改取库中匹配值
(替换仅返回id且查不到时静默存null的queryShipperId)
3. 產品編號/客户編号漏填的行直接报错提示补全
三、模板解析改为按列头文字动态定位列(繁简体归一化),列/行顺序调整不影响解析,
识别不到时回落老模板固定列位,老模板行为不变:
1. StockInExcelListener(入库):以產品編號为锚点识别列头行,新增客戶編號列支持
2. DynamicDeliveryExcelListener(出库):左右分栏各自锚点识别;送货日期/线号/车次/
发票张数/小计/纪录合共改按标签文字定位,行号列号不再写死
四、Mapper:ReservationStockOutOrderMapper新增queryCustomerByCode(按组织查询,
USER_MEMBER_CODE或USER_SHIPPER.CUSTOMER_NC_CODE任一命中),删除queryShipperId
2026-08-31 11:15:41 +08:00
rcx
2781f0d8d9
feat(oms):库存查询导出新增库存为0是否导出参数 /reservationMaterialInventoryApi/list 新增可选参数 excludeZeroInventoryQuantity,前端"库存为0是否导出"选"是"时传 true,SQL 以 HAVING IFNULL(SUM(inventory_quantity),0)>0 排除汇总库存为0的数据;所有查询维度(all/hz/wl/kw/wlkw/wlExpiry)共6条查询在 GROUP BY 后统一挂载公共片段 excludeZeroInventoryHaving,与 sort_order 对0库存的定义保持一致;不传参数时 SQL 不拼接条件,行为与原来完全一致
2026-08-31 10:17:53 +08:00
zhaoqing
ccdbbda165
Merge remote-tracking branch 'origin/dev' into dev-ty1.2
2026-08-27 14:27:16 +08:00
zhaoqing
e3058d8eb1
fix(oms):明细表修改
2026-08-27 14:24:58 +08:00
rcx
76d95c1b2d
feat(oms):入库业务单导入模板OrderNO改为只作业务单号,去掉格式校验并按业务单号查重
...
需求:导入模板表格OrderNO值回显到字段"业务单号";"入库业务单号"仍由系统
原本逻辑生成;业务单号重复不允许导入并提示"业务单号已存在";模板未填单号
保持现有系统逻辑;业务单号去掉规则校验。
一、导入流程(ReservationStockInOrderImpl.parseStockInExcel):
1. 模板OrderNO只写入业务单号(business_order_no),不再同时作为入库业务单号
2. 删除validateTemplateOrderNo格式规则校验(R+年月日+3位序号),模板单号不再限格式
3. 查重由按in_order_number跨两表改为按business_order_no查入库业务单表,
Mapper新增existsByBusinessOrderNo;重复时报"业务单号已存在:xxx,请修改
模板中的OrderNO后重新导入"
4. 入库业务单号(in_order_number)统一由insertDomain按原逻辑生成
(R+年月日+当日累加,跨reservation/reserve两表取号防撞)
二、insertDomain业务单号赋值改为仅在为空时默认=入库单号,导入带模板单号时不覆盖;
模板未填单号保持现有逻辑。页面手工新增(DomainService.insert)与客户预约下发
(ReserveStockInOrderDomainService)为独立链路,不受影响。
2026-08-27 14:10:38 +08:00
rcx
0be73e9bfe
fix(oms): 出入库联合列表(inAndOutList)查询条件修复与补全
...
1. 修复 ReflectionException:mapper XML <if> 引用 inOrOut/orderNumber 但 DO 无对应字段,
DO/DTO 新增 inOrOut、orderNumber 查询字段(BeanUtils 同名自动拷贝,前端参数直达 mapper)
2. inOrOut 排除空串与 'all'(前端"全部"约定值),避免拼出 ="all" 查空
3. orderNumber 排除空串并改为 like 模糊匹配(与出库单列表单号搜索口径一致)
4. status 新增精确筛选(0 为有效条件值,按前端约定直传,"全部"时不传)
2026-08-26 15:49:38 +08:00
rcx
735cf9af9f
feat(oms):入库导入模板饮用日期解析修复,入库单列表联查带出饮用有效日期
...
1. 入库/执行入库Excel解析监听器:扩充日期格式支持(yyyy年M月d日、d/M/yyyy、M/d/yyyy、dd.MM.yyyy等16种),
改为严格解析防止宽松解析产生公元1~99年脏数据,新增Excel日期序列号兜底及年份合理性校验,
解析失败抛出带行号的明确提示而非静默置空
2. parse-excel接口异常时返回具体错误信息(原为空body 500)
3. 入库单列表queryList联查明细表取最早饮用日期(MIN drink_date),PO及resultMap补drinkDate映射
2026-08-25 15:07:04 +08:00
rcx
83f4cce451
feat(oms):App端出入库明细跳详情补入库按单号查询,预约单修改限待提交状态
...
需求:入库/出库明细列表点击跳详情;待提交预约单可修改(暂存/提交均走/edit,与PC共用链路)
1.ReserveStockInOrderApi新增getInfoByInOrderNumber按单号查详情:
入库明细行只带inOrderNumber(明细表无in_order_id列),对齐出库侧getInfoOutOrderNumber;
del_flag=1过滤已删单+getOne不抛单号重复
2.ReserveStockInOrderMapper.xml MaterialDetailResult显式映射in_order_number,
明细行单号不再依赖驼峰自动映射开关(出库侧:363本就有,入库侧补齐)
3.入库/出库DomainService.update加状态闸门:仅status=1(已创建)且issueStatus!=3(未确认)允许修改,
防已确认下发/已流转单据被改写(仓码确认只置issueStatus=3不改status,原校验缺此维度必然漏防);
明细为空改报'请添加货物明细'(原getMaterialDetailList().size()空指针500);出库update补@Transactional
2026-08-24 18:12:50 +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
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
王奎兴
78d40d35be
发31
2026-08-20 18:13:30 +08:00
rcx
8fedb6d6ed
feat(oms):库存查询/导出按商品到期日分组排序
2026-08-20 17:54:23 +08:00
王奎兴
b415ed6fa0
出库预约业务类型查询;
2026-08-20 17:34:43 +08:00
王奎兴
694ed699ec
单号生成规则包含已删除;
2026-08-20 17:26:56 +08:00
rcx
ff2b1965f7
fix(oms):入库业务单单号重复与入库链路计划数量翻倍修复
...
一、单号重复:业务单与客户预约两套取号计数器互不可见致撞号。
取号统一为跨两表MAX+1+存在性校验,保存前校验预取号占用,下发不再换号,Mapper新增existsByOrderNumber。
二、计划数量翻倍:编辑明细为软删(del_flag=2留存),下发查明细未过滤del_flag,
软删行被复制进下游单据并计入头表数量(执行单数量≈业务单×2+修改差值)。
1. 预约→业务单下发、执行单推WMS:明细查询补del_flag=1过滤
2. executeAndIssue(执行并下发):补防重复下发校验(issueTime非空拒绝)
3. pushInOrder/pushInOrderDetail:加幂等,防Feign重试插重复单
2026-08-20 14:06:50 +08:00
rcx
ef13d890be
fix(oms):入库执行单列表单号搜索查不到,businessNumber死条件改单号模糊互查;库存查询货主过滤移回主表并修正委托方误判
...
- 入库执行单列表:businessNumber条件原为BUSINESS_NUMBER精确等值,该列无写入恒空致全条件查询0条,改为业务单号/入库单号OR模糊互查
- 入库执行单列表:inOrderNumber精确等值改模糊like;删除重复的createByName条件;补businessInOrderNumber过滤(业务单号/入库单号互查)
- 库存查询:货主过滤(shipperId/Code/Name/shipperInfo)从物料表b移回库存主表a,避免LEFT JOIN退化INNER JOIN丢行
- 库存查询:委托方判定由组织层级改为UserPo.shipperEnterpriseName,避免二级组织运营人员(2841/2842)被误判强制按本人userId过滤
2026-08-20 10:17:16 +08:00
王奎兴
0b61b813a5
Merge branch 'dev' into dev_820
2026-08-20 09:03:05 +08:00
zhaoqing
6252866f7c
fix(oms):明细表保额货物类型
2026-08-19 15:29:09 +08:00
zhaoqing
15c8a2b6e6
fix(wms):明细表入库时间
2026-08-19 09:14:44 +08:00
王奎兴
4b434a2cd2
Merge branch 'refs/heads/dev' into dev_820
2026-08-18 16:36:28 +08:00
rcx
e489015e3e
fix(oms):下发过滤已删除明细,执行单不再残留已取消运输业务单号
2026-08-18 10:19:40 +08:00
zhaoqing
d74a28bceb
fix(oms):运输执行单排序查询报错
2026-08-14 18:21:18 +08:00
zhaoqing
1cc123917b
fix(oms):运输执行单排序
2026-08-14 17:38:34 +08:00
王奎兴
070cdcd5de
仓码820
2026-08-14 14:36:46 +08:00
rcx
6a87c5a75a
fix(oms): 预约入库单列表接口补充申报数量字段
...
reservationStockInOrderApi/list 返回缺少申报数量,原因为查询只查主表、
未关联明细表汇总,且返回对象无对应字段
- ReservationStockInOrderPO 新增 declaredQuantity 字段
- StockInOrderResult resultMap 增加 declaredQuantity 映射
- selectStockInOrderPo 片段增加 reservation_in_material_detail
的 DECLARED_QUANTITY 汇总子查询(按 level=1 过滤主明细行)
2026-08-14 11:02:18 +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
zhaoqing
123a5af241
fix(oms):运输业务单排序
2026-08-13 14:15:03 +08:00
zhaoqing
d17146dc4b
fix(oms):运输业务单排序
2026-08-13 10:03:39 +08:00
rcx
b37edf7c63
feat(oms): 业务单号改为yyMMdd+每日序号(每日重置,对齐TMS长度)
...
对应需求#072703,单号规则:年月日001,后面001每天重置
2026-08-12 18:17:29 +08:00
王奎兴
993746ee41
出库单按规则生成;
2026-08-08 17:47:59 +08:00
王奎兴
fedeece533
扫二维码签名;入库单号规则;
2026-08-07 20:01:01 +08:00
王奎兴
c93445ca4c
业务单添加执行单号回显;
2026-08-06 15:18:15 +08:00
王奎兴
04545a8219
Merge branch 'dev' into feature/dev-0729
2026-07-31 18:05:59 +08:00
王奎兴
b8605c6b43
预约单老系统数据导入;
2026-07-31 17:12:24 +08:00
王奎兴
f6ee1a3eee
预约单老系统数据导入;
2026-07-31 15:47:20 +08:00
zhaoqing
f32f43ab18
feat(oms):出入库明细查询
2026-07-24 15:46:30 +08:00
zhaoqing
eb3ada8335
feat(oms):出入库明细查询
2026-07-24 14:19:04 +08:00
zhaoqing
49f6832d3f
feat(oms):出库明细查询
2026-07-24 11:24:10 +08:00
zhaoqing
60bc140195
feat(oms):入库明细查询
2026-07-24 10:10:57 +08:00
zhaoqing
d268718f9b
fix(oms):入库/出库 预约/业务单号生成
2026-07-23 17:53:32 +08:00
高正杨
44c9953875
oms启动报错
2026-07-23 11:00:06 +08:00
王奎兴
36b31e5d52
Merge branch 'dev' into dev_crkbh_260721
...
# Conflicts:
# mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/persistence/ReservationStockInOrderImpl.java
# mhd_oms/src/main/resources/bootstrap.yml
2026-07-23 10:44:31 +08:00
王奎兴
709b151e3f
参数类型
2026-07-22 22:45:08 +08:00