From 788bae9a1690c17b884a3bd0742e8497d19ec9bf Mon Sep 17 00:00:00 2001 From: rcx <3084692334@qq.com> Date: Fri, 11 Sep 2026 11:42:42 +0800 Subject: [PATCH] =?UTF-8?q?fix(oms,wms):=20=E5=87=BA=E5=BA=93=E5=8F=8D?= =?UTF-8?q?=E5=AE=A1=E8=A1=A5=E5=85=A8=E2=80=94=E2=80=94=E9=87=8D=E6=96=B0?= =?UTF-8?q?=E4=B8=8B=E5=8F=91=E8=87=AA=E6=84=88/=E4=BB=93=E5=BA=93?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E6=9C=AC=E5=9C=B0=E5=85=9C=E5=BA=95/?= =?UTF-8?q?=E8=BF=90=E8=BE=93=E9=93=BE=E8=B7=AF=E5=8F=8D=E5=AE=A1=E8=81=94?= =?UTF-8?q?=E5=8A=A8/=E5=BD=92=E6=A1=A3=E6=9F=A5=E8=AF=A2=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 反审后 issueStatus 置 3-已驳回(与入库侧同口径), 清空执行单号/货源单号 - 反审/取消下发软删执行明细时置空 uniqueId, 修复重新下发撞唯一约束 - 新增 WarehouseInfoApplicationService(Feign优先+本地跨库兜底), 出库侧8处调用点接入 - 反审联动软删运输链路: 运输业务单/执行单本地软删 + TMS deleteChainByExecuteOrderNumber - WMS归档查询修复: 交接归档详情丢行/拣货归档数量恒0/复核列表归档汇总/OMS执行单已反审tab --- .../com/mhd/system/api/WlhyServiceFeign.java | 7 +++ .../factory/RemoteWlhyFallbackFactory.java | 6 ++ .../WarehouseInfoApplicationService.java | 58 +++++++++++++++++++ .../OutEntrustOrderApplicationService.java | 11 ++-- .../po/ExecutionStockOutOrderPO.java | 2 + .../todo/ExecutionStockOutOrderDO.java | 3 + .../todo/ExecutionStockOutOrderDTO.java | 3 + ...cutionStockOutOrderApplicationService.java | 9 ++- .../ExecutionStockOutOrderDomainService.java | 20 ++----- .../mapper/ReservationStockInOrderMapper.java | 6 ++ ...vationStockOutOrderApplicationService.java | 9 ++- ...eserveStockOutOrderApplicationService.java | 9 ++- .../ExecutionStockOutOrderMapper.xml | 5 +- .../ReservationStockInOrderMapper.xml | 12 ++++ .../mapper/PickingMaterialDetailMapper.java | 6 ++ .../PickingMaterialDetailMapper.xml | 15 +++++ .../pickingOrder/PickingOrderMapper.xml | 6 +- .../mapper/reviewOrder/ReviewOrderMapper.xml | 3 +- 18 files changed, 151 insertions(+), 39 deletions(-) create mode 100644 mhd_oms/src/main/java/com/mhd/oms/application/service/WarehouseInfoApplicationService.java diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WlhyServiceFeign.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WlhyServiceFeign.java index ba9a45148..aa3f1f09b 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WlhyServiceFeign.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WlhyServiceFeign.java @@ -539,6 +539,13 @@ public interface WlhyServiceFeign { @GetMapping("/feign/order/cancelIssueDocuments") public AjaxResult cancelIssueDocuments(@RequestParam(name="executeOrderId") String executeOrderId); + /** + * OMS出库业务单反审联动: 按执行单货源编号软删TMS整条链路(货源单->运单->运输作业单, is_delete=1), 幂等, + * 与 cancelIssueDocuments(仅关闭货源单且有有效运单即拒绝)不同, 反审口径不留TMS数据 + */ + @PostMapping("/feign/order/deleteChainByExecuteOrderNumber") + public AjaxResult deleteChainByExecuteOrderNumber(@RequestParam(name="executeOrderNumber") String executeOrderNumber); + @GetMapping(value = "/ntocc/tmsSettlementExchangeRate/queryList") public AjaxResult queryList(@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteWlhyFallbackFactory.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteWlhyFallbackFactory.java index 489e8e221..7b401a6ad 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteWlhyFallbackFactory.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteWlhyFallbackFactory.java @@ -551,6 +551,12 @@ public class RemoteWlhyFallbackFactory implements FallbackFactory queryList(Integer pageNo, Integer pageSize, String pushStatus, String organizationId) { return AjaxResult.error(cause.getMessage()); diff --git a/mhd_oms/src/main/java/com/mhd/oms/application/service/WarehouseInfoApplicationService.java b/mhd_oms/src/main/java/com/mhd/oms/application/service/WarehouseInfoApplicationService.java new file mode 100644 index 000000000..0fa4c737d --- /dev/null +++ b/mhd_oms/src/main/java/com/mhd/oms/application/service/WarehouseInfoApplicationService.java @@ -0,0 +1,58 @@ +package com.mhd.oms.application.service; + +import com.mhd.common.core.exception.ServiceException; +import com.mhd.common.core.web.domain.AjaxResult; +import com.mhd.oms.domain.reservationStockInOrder.repository.mapper.ReservationStockInOrderMapper; +import com.mhd.system.api.SystemServiceFeign; +import com.mhd.system.api.domain.WarehouseFeignPO; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 仓库信息获取(带本地兜底): 下发/下单冻结/保存等流程原先直接 Feign 调 system 服务取仓库信息, + * system 服务未启动/降级/返回非200时整个流程被"获取仓库信息失败"阻断。 + * 本组件统一收口: 优先 Feign, 失败时回退本地跨库直查 "NGWL_TEST_SYSTEM".WAREHOUSE(与 Feign 同库同表, OMS 库账号可读), + * 两侧都取不到才抛错并带出 Feign 真实返回原因。 + * + * @date 2026/9/11 + */ +@Slf4j +@Service +public class WarehouseInfoApplicationService { + + @Autowired + private SystemServiceFeign systemServiceFeign; + @Autowired + private ReservationStockInOrderMapper reservationStockInOrderMapper; + + /** + * 获取仓库信息: Feign 优先, 失败走本地兜底; 两边都取不到抛 ServiceException + * + * @param warehouseId 仓库id + * @return 仓库信息(含编码/名称/单号生成规则/库存锁定模式等) + */ + public WarehouseFeignPO getWarehouseInfo(Long warehouseId) { + if (warehouseId == null) { + throw new ServiceException("仓库ID不能为空"); + } + AjaxResult ajaxResult = null; + try { + ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId); + } catch (Exception e) { + log.warn("获取仓库信息Feign调用异常, 走本地兜底查询, warehouseId={}, error={}", warehouseId, e.getMessage()); + } + if (ajaxResult != null && "200".equals(String.valueOf(ajaxResult.get("code"))) && ajaxResult.get("data") != null) { + return com.alibaba.fastjson.JSON.parseObject( + com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class); + } + String remoteMsg = ajaxResult == null ? "Feign调用异常" : String.valueOf(ajaxResult.get("msg")); + log.warn("获取仓库信息Feign失败(返回: {}), 走本地兜底查询, warehouseId={}", remoteMsg, warehouseId); + WarehouseFeignPO local = reservationStockInOrderMapper.getWarehouseInfoFallback(warehouseId); + if (local == null) { + throw new ServiceException("获取仓库信息失败(Feign返回:" + remoteMsg + "), 且本地未查到仓库[warehouseId=" + + warehouseId + "], 请检查仓库是否存在/已启用"); + } + return local; + } +} diff --git a/mhd_oms/src/main/java/com/mhd/oms/application/service/outEntrustOrder/OutEntrustOrderApplicationService.java b/mhd_oms/src/main/java/com/mhd/oms/application/service/outEntrustOrder/OutEntrustOrderApplicationService.java index 6dd2abf2e..bcdfacb14 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/application/service/outEntrustOrder/OutEntrustOrderApplicationService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/application/service/outEntrustOrder/OutEntrustOrderApplicationService.java @@ -46,6 +46,9 @@ public class OutEntrustOrderApplicationService { @Resource private SystemServiceFeign systemServiceFeign; + @Resource + private com.mhd.oms.application.service.WarehouseInfoApplicationService warehouseInfoApplicationService; + @Resource private WmsServiceFeign wmsServiceFeign; @@ -352,14 +355,10 @@ public class OutEntrustOrderApplicationService { } /** - * 仓库信息校验并回填编码/名称 + * 仓库信息校验并回填编码/名称 (Feign失败走本地跨库兜底) */ private void setWarehouseInfo(OutEntrustOrderDO outEntrustOrderDO) { - AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(outEntrustOrderDO.getWarehouseId()); - if (ajaxResult == null || !"200".equals(String.valueOf(ajaxResult.get("code")))) { - throw new ServiceException("获取仓库信息失败,请检查仓库是否有效"); - } - WarehouseFeignPO warehouseFeignPO = JSONUtil.toBean(JSONUtil.toJsonStr(ajaxResult.get("data")), WarehouseFeignPO.class); + WarehouseFeignPO warehouseFeignPO = warehouseInfoApplicationService.getWarehouseInfo(outEntrustOrderDO.getWarehouseId()); if (warehouseFeignPO == null || Objects.isNull(warehouseFeignPO.getWarehouseId())) { throw new ServiceException("仓库不存在,请重新选择"); } diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/po/ExecutionStockOutOrderPO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/po/ExecutionStockOutOrderPO.java index 58f120900..1801bf6eb 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/po/ExecutionStockOutOrderPO.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/po/ExecutionStockOutOrderPO.java @@ -29,6 +29,8 @@ public class ExecutionStockOutOrderPO extends BaseVOEntity { @ApiModelProperty("出库单id") private Long outOrderId; + @ApiModelProperty("反审标记: 1-已反审(反审软删归档, 【已反审】tab按 delFlag=2+reverseFlag=1 查询)") + private Integer reverseFlag; @ApiModelProperty("总价") @Excel(name = "总价") private BigDecimal amount; diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDO.java index b8317cf1c..8dbda715e 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDO.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDO.java @@ -29,6 +29,9 @@ public class ExecutionStockOutOrderDO extends BaseVOEntity { @ApiModelProperty("出库单id") private Long outOrderId; + @ApiModelProperty("反审标记查询: 1-已反审(与delFlag=2成对传, 查【已反审】tab归档数据)") + private Integer reverseFlag; + @ApiModelProperty("组织表ID") @Excel(name = "组织表ID") private Long organizationId; diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDTO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDTO.java index 0b2033f43..a140f238b 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDTO.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/repository/todo/ExecutionStockOutOrderDTO.java @@ -27,6 +27,9 @@ public class ExecutionStockOutOrderDTO extends ExecutionStockOutOrderBaseDTO { @ApiModelProperty("出库单id") private Long outOrderId; + @ApiModelProperty("反审标记查询: 1-已反审(与delFlag=2成对传, 查【已反审】tab归档数据)") + private Integer reverseFlag; + @ApiModelProperty("组织表ID") @Excel(name = "组织表ID") private Long organizationId; diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderApplicationService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderApplicationService.java index f28d93192..320fa25fa 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderApplicationService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderApplicationService.java @@ -66,6 +66,8 @@ import java.util.stream.Collectors; public class ExecutionStockOutOrderApplicationService { @Autowired private ExecutionStockOutOrderDomainService stockOutOrderDomainService; + @Autowired + private com.mhd.oms.application.service.WarehouseInfoApplicationService warehouseInfoApplicationService; // @Autowired // private ExecutionOutMaterialDetailDomainService outMaterialDetailDomainService; // @Autowired @@ -862,11 +864,8 @@ public class ExecutionStockOutOrderApplicationService { if (stockOutOrderDO.getWarehouseId() == null) { throw new ServiceException("仓库ID不能为空"); } - AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(stockOutOrderDO.getWarehouseId()); - if(!"200".equals(String.valueOf(ajaxResult.get("code")))){ - throw new ServiceException("获取仓库信息失败"); - } - WarehouseFeignPO warehouseFeignPO = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class); + // Feign失败走本地跨库兜底, 避免保存被"获取仓库信息失败"阻断 + WarehouseFeignPO warehouseFeignPO = warehouseInfoApplicationService.getWarehouseInfo(stockOutOrderDO.getWarehouseId()); stockOutOrderDO.setWarehouseCode(warehouseFeignPO.getWarehouseCode()); stockOutOrderDO.setWarehouseName(warehouseFeignPO.getWarehouseName()); } diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderDomainService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderDomainService.java index 5d57783ba..4e33c7a29 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderDomainService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/executionStockOutOrder/service/ExecutionStockOutOrderDomainService.java @@ -71,6 +71,8 @@ public class ExecutionStockOutOrderDomainService { @Autowired private IExecutionStockOutOrderService stockOutOrderService; @Autowired + private com.mhd.oms.application.service.WarehouseInfoApplicationService warehouseInfoApplicationService; + @Autowired private IExecutionOutMaterialDetailService outMaterialDetailService; @Autowired private IReservationDeliveryDetailsLinkService deliveryDetailsLinkService; @@ -148,14 +150,9 @@ public class ExecutionStockOutOrderDomainService { public Boolean insert(ExecutionStockOutOrderDO stockOutOrderDO) { //建单校验:明细数量必须大于0(0数量单下发WMS后自动分配必失败,出库单会卡死在已审核状态) validateMaterialDetailQuantity(stockOutOrderDO.getMaterialDetailList()); - //设置单号 + //设置单号(仓库信息: Feign优先, system服务失败/降级时本地跨库兜底) Long warehouseId = stockOutOrderDO.getWarehouseId(); - AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId); - if (!"200".equals(String.valueOf(ajaxResult.get("code")))) { - throw new ServiceException("获取仓库信息失败"); - } - //仓库信息 - WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class); + WarehouseFeignPO warehouseFeignPO = warehouseInfoApplicationService.getWarehouseInfo(warehouseId); String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule(); String prefix = warehouseFeignPO.getOutOrderNoPrefix(); if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) { @@ -218,14 +215,9 @@ public class ExecutionStockOutOrderDomainService { @Transactional(rollbackFor = Exception.class) public Boolean batchInsert(List stockOutOrderDOList) { for (ExecutionStockOutOrderDO stockOutOrderDO : stockOutOrderDOList){ - //设置单号 + //设置单号(仓库信息: Feign优先, system服务失败/降级时本地跨库兜底) Long warehouseId = stockOutOrderDO.getWarehouseId(); - AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId); - if (!"200".equals(String.valueOf(ajaxResult.get("code")))) { - throw new ServiceException("获取仓库信息失败"); - } - //仓库信息 - WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class); + WarehouseFeignPO warehouseFeignPO = warehouseInfoApplicationService.getWarehouseInfo(warehouseId); String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule(); String prefix = warehouseFeignPO.getOutOrderNoPrefix(); if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) { diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/mapper/ReservationStockInOrderMapper.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/mapper/ReservationStockInOrderMapper.java index 16e7e43d2..d43721560 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/mapper/ReservationStockInOrderMapper.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockInOrder/repository/mapper/ReservationStockInOrderMapper.java @@ -54,6 +54,12 @@ public interface ReservationStockInOrderMapper extends BaseMapper queryNoticePrint(ReservationStockInOrderDO stockInOrderDO); List queryNoticePrintDetail(ReservationStockInOrderDO stockInOrderDO); public void updateByTransportationNumber(@Param("transportationNumber") String transportationNumber); diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderApplicationService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderApplicationService.java index 18185988e..e10484acd 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderApplicationService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderApplicationService.java @@ -85,6 +85,8 @@ import java.util.stream.Collectors; public class ReservationStockOutOrderApplicationService { @Autowired private ReservationStockOutOrderDomainService stockOutOrderDomainService; + @Autowired + private com.mhd.oms.application.service.WarehouseInfoApplicationService warehouseInfoApplicationService; // @Autowired // private ReservationOutMaterialDetailDomainService outMaterialDetailDomainService; // @Autowired @@ -913,11 +915,8 @@ public class ReservationStockOutOrderApplicationService { if (stockOutOrderDO.getWarehouseId() == null) { throw new ServiceException("仓库ID不能为空"); } - AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(stockOutOrderDO.getWarehouseId()); - if(!"200".equals(String.valueOf(ajaxResult.get("code")))){ - throw new ServiceException("获取仓库信息失败"); - } - WarehouseFeignPO warehouseFeignPO = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class); + // Feign失败走本地跨库兜底, 避免新增/编辑保存被"获取仓库信息失败"阻断 + WarehouseFeignPO warehouseFeignPO = warehouseInfoApplicationService.getWarehouseInfo(stockOutOrderDO.getWarehouseId()); stockOutOrderDO.setWarehouseCode(warehouseFeignPO.getWarehouseCode()); stockOutOrderDO.setWarehouseName(warehouseFeignPO.getWarehouseName()); } diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderApplicationService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderApplicationService.java index 210afd106..720c3a76c 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderApplicationService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reserveStockOutOrder/service/ReserveStockOutOrderApplicationService.java @@ -68,6 +68,8 @@ import java.util.concurrent.ThreadLocalRandom; public class ReserveStockOutOrderApplicationService { @Autowired private ReserveStockOutOrderDomainService stockOutOrderDomainService; + @Autowired + private com.mhd.oms.application.service.WarehouseInfoApplicationService warehouseInfoApplicationService; // @Autowired // private ReserveOutMaterialDetailDomainService outMaterialDetailDomainService; // @Autowired @@ -895,11 +897,8 @@ public class ReserveStockOutOrderApplicationService { if (stockOutOrderDO.getWarehouseId() == null) { throw new ServiceException("仓库ID不能为空"); } - AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(stockOutOrderDO.getWarehouseId()); - if(!"200".equals(String.valueOf(ajaxResult.get("code")))){ - throw new ServiceException("获取仓库信息失败"); - } - WarehouseFeignPO warehouseFeignPO = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class); + // Feign失败走本地跨库兜底, 避免保存被"获取仓库信息失败"阻断 + WarehouseFeignPO warehouseFeignPO = warehouseInfoApplicationService.getWarehouseInfo(stockOutOrderDO.getWarehouseId()); stockOutOrderDO.setWarehouseCode(warehouseFeignPO.getWarehouseCode()); stockOutOrderDO.setWarehouseName(warehouseFeignPO.getWarehouseName()); } diff --git a/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml b/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml index 631d9f187..ced13d638 100644 --- a/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml +++ b/mhd_oms/src/main/resources/mapper/executionStockOutOrder/ExecutionStockOutOrderMapper.xml @@ -52,6 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -127,7 +128,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" a.cancel_time, a.close_order, a.close_remark, a.close_by, a.close_by_name, a.close_time, a.check_status,a.BUSINESS_ORDER_NO, a.check_task_distribution, a.check_task_distribution_time, a.check_operators_by, a.check_operators_name, a.mobilize_code, a.remark, a.create_time, a.create_by, a.create_by_name,a.business_number,a.train_no,a.amount,a.business_out_order_number, - a.update_time, a.update_by, a.update_by_name, a.del_flag, a.over_stock_id, a.over_stock_status, a.over_stock_type,a."TO", + a.update_time, a.update_by, a.update_by_name, a.del_flag, a.reverse_flag, a.over_stock_id, a.over_stock_status, a.over_stock_type,a."TO", a.CONTACT_PERSON,a.VEHICLE_MODEL_PLATE,a.ENTRUST_NO,a.TEL,a.DRIVER_SIGN,a.FAX,a.DECLARE_CUSTOMS,a.MANUFACTURER, a.CUSTOMS_DECLARER_INFO,a.DELIVERY_ADDR,a.ENTRY_EXIT_CUSTOMS,a.DEPARTURE_ARRIVAL_COUNTRY,a.CARRIER,a.CONTAINER_NO,a.CONTAINER_NO_NAME,a.OUTBOUND_DATE, a.COMPLETE_TIME,a.ORDER_DATE,a.TRANSPORT_MODE_CODE,a.TRANSPORT_MODE_NAME,a.SUPERVISION_MODE_CODE,a.SUPERVISION_MODE_NAME, @@ -401,6 +402,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and a.del_flag = #{delFlag} and a.del_flag = 1 + + and a.reverse_flag = #{reverseFlag} + + + + SELECT + COALESCE(SUM(b.PICKING_QUANTITY), 0) AS picking_quantity, + COALESCE(SUM(b.TOTAL_AREA), 0) AS total_area, + COALESCE(SUM(b.TOTAL_VOLUME), 0) AS total_volume, + COALESCE(SUM(b.TOTAL_NET_WEIGHT), 0) AS total_net_weight, + COALESCE(SUM(b.TOTAL_GROSS_WEIGHT), 0) AS total_gross_weight + FROM + PICKING_MATERIAL_DETAIL b + WHERE + b.OUT_UNIQUE_ID = #{outUniqueId} + AND b.DEL_FLAG = 2 + +