From b0fa4d007e5dbba38d4da91c218ddc900dceea2b Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 3 Jan 2024 11:58:43 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A3=85=E8=BD=A6=E4=B8=8B=E6=9E=B6=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/IWarehouseUpdownTypeClient.java | 4 ++ .../mapper/DistributionParcelListMapper.java | 2 +- .../mapper/DistributionParcelListMapper.xml | 2 +- .../DistributionDeliveryListServiceImpl.java | 15 +++--- .../feign/WarehouseUpdownTypeClient.java | 16 ++++++ .../service/IWarehouseUpdownTypeService.java | 8 +++ .../impl/WarehouseUpdownTypeServiceImpl.java | 50 +++++++++++++++++++ 7 files changed, 87 insertions(+), 10 deletions(-) diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseUpdownTypeClient.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseUpdownTypeClient.java index 63fef6e51..545dea1b9 100644 --- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseUpdownTypeClient.java +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseUpdownTypeClient.java @@ -44,6 +44,10 @@ public interface IWarehouseUpdownTypeClient { @GetMapping(TOP + "/downPackage") R downPackage(@RequestParam("orderPackageCodes") String orderPackageCodes, @RequestParam("warehouseId") Long warehouseId); + + @GetMapping(TOP + "/downDeliveryPackage") + R downDeliveryPackage(@RequestParam("orderPackageCodes") String orderPackageCodes, @RequestParam("warehouseId") Long warehouseId); + @PostMapping(TOP + "/downZeroOrder") R downZeroOrder(@RequestBody List zeroOrders); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java index ac2963e32..279124fc4 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java @@ -129,7 +129,7 @@ public interface DistributionParcelListMapper extends BaseMapper - UPDATE logpm_distribution_parcel_list SET order_package_loading_status = 20 WHERE id IN + UPDATE logpm_distribution_parcel_list SET order_package_loading_status = 20,order_package_status = 60 , order_package_grounding_status = 10 WHERE id IN #{item} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 2246d3cab..54d4ee6a7 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -68,10 +68,7 @@ import org.springblade.common.constant.loading.LoadingIsInsertConstant; import org.springblade.common.constant.loading.LoadingStatusConstant; import org.springblade.common.constant.order.OrderReservationStatusConstant; import org.springblade.common.constant.order.OrderStatusConstant; -import org.springblade.common.constant.orderpackage.OrderPackageFreezeStatusConstant; -import org.springblade.common.constant.orderpackage.OrderPackageLoadingStatusConstant; -import org.springblade.common.constant.orderpackage.OrderPackageReservationStatusConstant; -import org.springblade.common.constant.orderpackage.OrderPackageStatusConstant; +import org.springblade.common.constant.orderpackage.*; import org.springblade.common.constant.printTemplate.PrintTemplateStatusConstant; import org.springblade.common.constant.reservation.*; import org.springblade.common.constant.signing.SignforStatusConstant; @@ -639,19 +636,21 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImplquery().lambda().eq(DistributionParcelListEntity::getOrderPackageCode, distrilbutionloadingscanDTO.getBarcode())); @@ -809,7 +808,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl packageIds = updatePackageList.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()); if (Func.isNotEmpty(packageIds)){ diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseUpdownTypeClient.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseUpdownTypeClient.java index 953d8ec4b..c6f6105ec 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseUpdownTypeClient.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseUpdownTypeClient.java @@ -61,6 +61,22 @@ public class WarehouseUpdownTypeClient implements IWarehouseUpdownTypeClient { } } + @Override + public R downDeliveryPackage(String orderPackageCodes,Long warehouseId) { + List upShelfPackageList = new ArrayList<>(); + String[] split = orderPackageCodes.split(","); + for(String orderPackageCode:split){ + UpShelfPackageDTO dto = new UpShelfPackageDTO(); + dto.setOrderPackageCode(orderPackageCode); + upShelfPackageList.add(dto); + } + if(upShelfPackageList.size() > 0){ + return warehouseUpdownTypeService.downDeliveryPackage(upShelfPackageList,warehouseId); + }else{ + return R.fail(403,"处理失败"); + } + } + @Override public R downPackageOrDelTray(String orderPackageCodes,Long warehouseId) { diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownTypeService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownTypeService.java index 04b4efd15..e6de16f03 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownTypeService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownTypeService.java @@ -76,4 +76,12 @@ public interface IWarehouseUpdownTypeService extends BaseService findZeroAllocation(String orderCode, Long warehouseId); R findAllAllocationId(Long warehouseId); + + /** + * 配送下架 + * @param upShelfPackageList + * @param warehouseId + * @return + */ + R downDeliveryPackage(List upShelfPackageList, Long warehouseId); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java index 34386ffe1..281fee18c 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java @@ -1239,6 +1239,56 @@ public class WarehouseUpdownTypeServiceImpl extends BaseServiceImpl upShelfPackageList,Long warehouseId) { + int num = 0; + for (UpShelfPackageDTO upShelfPackageDTO:upShelfPackageList){ + String orderPackageCode = upShelfPackageDTO.getOrderPackageCode(); + //查询包件在哪个库位上 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("association_type","3") + .eq("warehouse_id",warehouseId) + .eq("association_value",orderPackageCode); + WarehouseUpdownGoodsEntity updownGoodsEntity = warehouseUpdownGoodsService.getOne(queryWrapper); + if(Objects.isNull(updownGoodsEntity)){ + log.warn("##############downPackage: 包件没有上架记录 orderPackageCode={}",orderPackageCode); + continue; + } + Long allocationId = updownGoodsEntity.getAllocationId(); + DistributionParcelListEntity parcelListEntity = distributionParcelListClient.findByPacketBarCodeAndWarehouseId(orderPackageCode,warehouseId); + Integer quantity = parcelListEntity.getQuantity(); + Long updownGoodsId = updownGoodsEntity.getId(); + Long updownTypeId = updownGoodsEntity.getUpdownTypeId(); + WarehouseUpdownTypeEntity updownTypeEntity = baseMapper.selectById(updownTypeId); + QueryWrapper taryAllocationEntityQueryWrapper = new QueryWrapper<>(); + taryAllocationEntityQueryWrapper.eq("allocation_id",allocationId) + .eq("is_deleted",0); + WarehouseTaryAllocationEntity taryAllocationEntity = warehouseTaryAllocationService.getOne(taryAllocationEntityQueryWrapper); +// BasicdataTrayEntity trayEntity = warehouseTaryAllocationService.getTrayByAllocationId(allocationId); + if(!Objects.isNull(taryAllocationEntity)){ + //有托盘,托盘下托 + warehouseTrayTypeService.downPackageByOrderPackageCode(orderPackageCode,"包件下架:同步下托",warehouseId); + } + Integer residue = warehouseUpdownGoodsService.deleteByUpdownGoodsId(updownGoodsId); + if(residue == 0){ + //删除上架方式 + removeById(updownTypeId); + //修改库位状态为空闲 + basicdataGoodsAllocationClient.updateAllocationStatus(allocationId,"1"); + //如果有托盘还要删除托盘与库位的绑定 + if(!Objects.isNull(taryAllocationEntity)){ + warehouseTaryAllocationService.deleteById(taryAllocationEntity); + } + } + warehouseUpdownGoodsLogService.saveAllocationAndPackage(updownTypeEntity,parcelListEntity,"2",0,"包件下架:包件下架"); + updateUpdownTypeNum(updownTypeEntity); + + num = num + quantity; + warehouseGoodsAllocationClient.updateAllocationCache(allocationId.toString()); + } + return Resp.scanSuccess("下架成功","成功下架"+num+"件"); + } + @Override public R downPackageOrDelTray(List upShelfPackageList,Long warehouseId) {