diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java index 830f8dec8..2c51f8806 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java @@ -27,6 +27,8 @@ import com.mhd.system.api.domain.WarehouseFeignPO; import com.mhd.system.api.domain.cache.AssociationWarehouseCacheDO; import com.mhd.system.api.domain.cache.SystemServiceCacheUtil; import com.mhd.system.api.model.LoginUser; +import com.mhd.wms.application.service.stockReceiptOrder.StockReceiptOrderApplicationService; +import com.mhd.wms.application.service.stockShelfOrder.StockShelfOrderApplicationService; import com.mhd.wms.domain.handoverTaskOrder.entity.HandoverTaskOrder; import com.mhd.wms.domain.handoverTaskOrder.repository.facade.IHandoverTaskOrderService; import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail; @@ -55,6 +57,7 @@ import com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper; import com.mhd.wms.domain.stockReceiptOrder.service.StockReceiptOrderDomainService; import com.mhd.wms.domain.stockShelfOrder.entity.StockShelfOrder; import com.mhd.wms.domain.stockShelfOrder.repository.facade.IStockShelfOrderService; +import com.mhd.wms.domain.stockShelfOrder.repository.todo.StockShelfOrderDO; import com.mhd.wms.domain.stockShelfOrder.service.StockShelfOrderDomainService; import com.mhd.wms.interfaces.dto.stockInOrder.StockInOrderDTO; import com.mhd.wms.domain.stockOutOrder.entity.StockOutOrder; @@ -133,6 +136,10 @@ public class StockInOrderApplicationService { private StockInOrderMapper stockInOrderMapper; @Autowired private PickingMaterialDetailMapper pickingMaterialDetailMapper; + @Autowired + private StockReceiptOrderApplicationService stockReceiptOrderApplicationService; + @Autowired + private StockShelfOrderApplicationService stockShelfOrderApplicationService; private static final String PUSH_API_URL = "http://10.102.192.15/nagu-erp-api/transfer/pushData"; private static final String API_NAME = "save_order_i"; private static final String VERIFY = "ESLuxAmB6VXCgbqP1eFzxTPVRagkQ62BUkfhElrgQ6XmE/g2reHVflY/SiCSU7JD"; @@ -577,6 +584,16 @@ public class StockInOrderApplicationService { StockShelfOrder stockShelfOrder = stockShelfOrderService.getOne(new LambdaQueryWrapper() .eq(StockShelfOrder::getInOrderNumber, inOrderNumber) .eq(StockShelfOrder::getDelFlag, 1), false); + + //上架任务下发 + StockShelfOrderDO stockShelfOrderDO = new StockShelfOrderDO(); + Long inOrderId = stockInOrderDO.getInOrderId(); + StockInOrder stockInOrder = stockInOrderService.getById(inOrderId); + stockShelfOrderDO.setOperatorsBy(stockInOrder.getWorkUserId()); + List ids = new ArrayList<>(); + ids.add(stockShelfOrder.getShelfOrderId()); + stockShelfOrderDO.setShelfOrderIds(ids); + stockShelfOrderApplicationService.taskDistribution(stockShelfOrderDO); Boolean b1 = stockShelfOrderDomainService.completeUpShelf(stockShelfOrder.getShelfOrderId()); return b && b1; } @@ -595,6 +612,26 @@ public class StockInOrderApplicationService { if (workUserId == null || workUserName == null) { throw new ServiceException("作业人员id或名称为空!"); } + + //pda任务中心下发 + StockReceiptOrderDO stockReceiptOrderDO = new StockReceiptOrderDO(); + stockReceiptOrderDO.setOperatorsBy(workUserId); + stockReceiptOrderDO.setOperatorsName(workUserName); + Long inOrderId = stockInOrder.getInOrderId(); + StockInOrder stock = stockInOrderService.getById(inOrderId); + String inOrderNumber = stock.getInOrderNumber(); + StockReceiptOrder stockReceiptOrder = stockReceiptOrderService.getOne(new LambdaQueryWrapper() + .eq(StockReceiptOrder::getInOrderNumber, inOrderNumber) + .eq(StockReceiptOrder::getDelFlag, 1), false); + if (stockReceiptOrder == null) { + throw new ServiceException("收货单不存在!"); + } + List ids = new ArrayList<>(); + ids.add(stockReceiptOrder.getReceiptOrderId()); + stockReceiptOrderDO.setReceiptOrderIds(ids); + stockReceiptOrderApplicationService.taskDistribution(stockReceiptOrderDO); + + stockInOrderService.update(null, new LambdaUpdateWrapper() .set(StockInOrder::getWorkUserId, workUserId) .set(StockInOrder::getWorkUserName, workUserName) diff --git a/mhd_wms/src/main/resources/mapper/OutMaterialDetail/OutMaterialDetailMapper.xml b/mhd_wms/src/main/resources/mapper/OutMaterialDetail/OutMaterialDetailMapper.xml index f73d0359a..02df3d80f 100644 --- a/mhd_wms/src/main/resources/mapper/OutMaterialDetail/OutMaterialDetailMapper.xml +++ b/mhd_wms/src/main/resources/mapper/OutMaterialDetail/OutMaterialDetailMapper.xml @@ -104,6 +104,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + @@ -117,6 +121,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" a.lot_no , a.stock_quantity , a.stock_unit ,a.in_order_number , + a.OUT_WEIGHT,a.OUT_VOLUME,a.OUT_QUANTITY, a.material_detail_id, a.organization_id, a.organization_name, a.top_organization_id, a.unique_id, a.out_order_number, a.material_base_info_id, a.line_number, a.material_code, a.material_name, a.bar_code, a.weight_limit, a.volume_limit, a.quantity, a.already_allocation_quantity, a.allocation_quantity, a.picking_quantity, a.check_quantity, ROUND(GREATEST(0, IFNULL(a.quantity, 0) - IFNULL(a.check_quantity, 0), IFNULL(a.picking_quantity, 0) - IFNULL(a.check_quantity, 0)), 2) AS wait_check_quantity, a.pack_id, a.pack_code, a.pack_name, a.pack_detail_id, a.unit_code, a.unit_name, a.material_warehouse_control_id, a.serial_number_manage,