From 06990cdc9a08487f120dd67dbcba87484f84d746 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=99=93=E8=BF=AA?= <2596750866@qq.com> Date: Wed, 1 Jan 2025 14:41:07 +0800 Subject: [PATCH] =?UTF-8?q?[fix]=20=E4=BB=93=E5=BA=93=E7=AE=A1=E7=90=86=20?= =?UTF-8?q?=E5=85=A5=E5=BA=93=E5=8D=95=20=E4=BF=AE=E6=94=B9=E5=A7=94?= =?UTF-8?q?=E5=A4=96=E5=85=A5=E5=BA=93service=E6=96=B9=E6=B3=95=EF=BC=8C?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=85=A5=E5=BA=93=E4=B8=BB=E8=A1=A8=E5=85=A5?= =?UTF-8?q?=E5=BA=93=E6=95=B0=E3=80=81=E5=85=A5=E5=BA=93=E7=8A=B6=E6=80=81?= =?UTF-8?q?=EF=BC=8C=E5=90=8C=E6=97=B6=E6=9B=B4=E6=96=B0=E5=A7=94=E5=A4=96?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E8=AF=A6=E6=83=85=E5=B7=B2=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E6=95=B0=E3=80=81=E5=A7=94=E5=A4=96=E5=85=A5=E5=BA=93=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E5=B7=B2=E5=85=A5=E5=BA=93=E6=95=B0=EF=BC=9B=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=85=A5=E5=BA=93=E5=8D=95=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2mapper=EF=BC=8C=E5=88=9B=E5=BB=BA=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E6=88=AA=E5=8F=96=E6=97=A5=E6=9C=9F=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=AF=94=E8=BE=83=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WarehouseStorageOrderServiceImpl.java | 48 +++++++++++++++---- .../warehouse/WarehouseStorageOrderMapper.xml | 4 +- 2 files changed, 41 insertions(+), 11 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java index aba90665..4e5ec4d8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java @@ -137,6 +137,9 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS @Autowired private OutsourceRequisitionMapper outsourceRequisitionMapper; + @Autowired + private OutsourceOrderDetailMapper outsourceOrderDetailMapper; + @Autowired private SysMakeorderPickDetailMapper makeorderPickDetailMapper; @@ -543,10 +546,18 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS } } //插入主表入库数量 - int orderStorageNum = oldStorageOrder.getStorageNum(); + int orderStorageNum = Optional.ofNullable(oldStorageOrder.getStorageNum()).orElse(0); + int qualifiedNum = Optional.ofNullable(oldStorageOrder.getQualityQualifiedNum()).orElse(0); orderStorageNum = orderStorageNum + storageNum; oldStorageOrder.setStorageNum(orderStorageNum); + if(orderStorageNum < qualifiedNum){ + oldStorageOrder.setWarehouseStorageStatus("3"); + }else if(orderStorageNum == qualifiedNum){ + oldStorageOrder.setWarehouseStorageStatus("4"); + } + + String outsourceOrderNo = ""; for (WarehouseStorageOrderDetail detail : filtList) { //更新入库单详情的数据 detail.setUpdateBy(loginName); @@ -564,13 +575,32 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS tempOut.setWarehouseStorageCode(detail.getWarehouseStorageCode()); tempOut.setMaterialNo(detail.getMaterialNo()); List outStorageDetails = outsourceStorageDetailMapper.selectOutsourceStorageDetailList(tempOut); - OutsourceStorageDetail updateDetail = outStorageDetails.get(0); - updateDetail.setTakenMaterial(new BigDecimal(detail.getHasStorageNum()));//入库单详情已领料数已更新 - updateDetail.setUpdateBy(loginName); - updateDetail.setUpdateTime(DateUtils.getNowDate()); - int outUpdateResult = outsourceStorageDetailMapper.updateOutsourceStorageDetail(updateDetail); - if(outUpdateResult<=0){ - throw new BusinessException("更新委外入库单详情失败!"); + outsourceOrderNo = outStorageDetails.get(0).getOutsourceOrderNo(); + for (OutsourceStorageDetail outStorageDetail: outStorageDetails) { + outStorageDetail.setHasStorageNum(detail.getHasStorageNum());//入库单详情已入库数已更新 + outStorageDetail.setUpdateBy(loginName); + outStorageDetail.setUpdateTime(DateUtils.getNowDate()); + int outUpdateResult = outsourceStorageDetailMapper.updateOutsourceStorageDetail(outStorageDetail); + if(outUpdateResult<=0){ + throw new BusinessException("更新委外入库单详情失败!"); + } + } + + /** 更新委外订单详情已入库数*/ + OutsourceOrderDetail tempOrderDetail = new OutsourceOrderDetail(); + tempOrderDetail.setOutsourceOrderNo(outsourceOrderNo); + tempOrderDetail.setMaterialNo(detail.getMaterialNo()); + List orderDetails = outsourceOrderDetailMapper.selectOutsourceOrderDetailByNos(tempOrderDetail); + for (OutsourceOrderDetail orderDetail: orderDetails) { + int hasStorageNum = Optional.ofNullable(orderDetail.getHasStorageNum()).orElse(0); + hasStorageNum = hasStorageNum + detail.getStorageNum(); + orderDetail.setHasStorageNum(hasStorageNum); + orderDetail.setUpdateBy(loginName); + orderDetail.setUpdateTime(DateUtils.getNowDate()); + int updateResult = outsourceOrderDetailMapper.updateOutsourceOrderDetail(orderDetail); + if(updateResult<=0){ + throw new BusinessException("更新委外订单详情失败!"); + } } /*更新库存查询信息*/ WarehouseStorageOrderDetail updateStorageOrderDetail = storageOrderDetailMapper.selectWarehouseStorageOrderDetailById(detail.getWarehouseStorageDetailId()); @@ -580,7 +610,7 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS oldStorageOrder.setUpdateBy(loginName); oldStorageOrder.setUpdateTime(DateUtils.getNowDate()); oldStorageOrder.setStorageTime(DateUtils.getNowDate()); - int updateResult = warehouseStorageOrderMapper.updateWarehouseStorageOrder(warehouseStorageOrder); + int updateResult = warehouseStorageOrderMapper.updateWarehouseStorageOrder(oldStorageOrder); if (updateResult <= 0){ throw new BusinessException("更新入库单失败,未影响任何行"); } diff --git a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml index ab7ebaab..925e5c4b 100644 --- a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml @@ -64,7 +64,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and warehouse_quality_status = #{warehouseQualityStatus} and warehouse_dept_type = #{warehouseDeptType} and warehouse_employee = #{warehouseEmployee} - and create_time between #{params.beginCreateTime} and #{params.endCreateTime} + and Date(create_time) between #{params.beginCreateTime} and #{params.endCreateTime} order by create_time desc @@ -315,7 +315,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and warehouse_quality_status = #{warehouseQualityStatus} and warehouse_dept_type = #{warehouseDeptType} and warehouse_employee = #{warehouseEmployee} - and create_time between #{params.beginCreateTime} and #{params.endCreateTime} + and Date(create_time) between #{params.beginCreateTime} and #{params.endCreateTime} and warehouse_order_type = '3' order by create_time desc