From 5d7e3f3cd4cfb91488623d9575f1ef1782e25eef Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 24 Jan 2024 11:56:58 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E6=8F=90=E5=8F=96=E6=B6=88=E3=80=81?= =?UTF-8?q?=E5=95=86=E9=85=8D=E8=AE=A1=E5=88=92=E5=8F=96=E6=B6=88=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/DistributionParcelListMapper.java | 7 +++ .../mapper/DistributionParcelListMapper.xml | 6 ++ .../mapper/DistrilbutionBillLadingMapper.java | 21 +++++++ .../mapper/DistrilbutionBillLadingMapper.xml | 21 +++++++ .../service/IDisStockListDetailService.java | 6 ++ .../IDistributionParcelListService.java | 6 ++ .../impl/DisStockListDetailServiceImpl.java | 10 +++ .../DistributionDeliveryListServiceImpl.java | 5 +- .../DistributionParcelListServiceImpl.java | 5 ++ .../DistrilbutionBillLadingServiceImpl.java | 62 ++++++++++++++++++- 10 files changed, 146 insertions(+), 3 deletions(-) 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 e435f8137..0e1921e9d 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 @@ -171,4 +171,11 @@ public interface DistributionParcelListMapper extends BaseMapper> selectAllErrorReservationOrder(); List findByWaybillNumber(@Param("waybillNumber") String waybillNumber); + + /** + * 还原包件状态 -- 未出库 + * @param packageIds + * @return + */ + Integer restorePakcageByIds(@Param("packageIds")List packageIds); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml index b93980109..e0722c2ed 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml @@ -1073,6 +1073,12 @@ where order_code = #{orderCode} and warehouse_id = #{warehouseId} + + UPDATE logpm_distribution_parcel_list SET order_package_status = 20,order_package_reservation_status = 10,order_package_loading_status = 10 WHERE id IN + + #{item} + + select dbl.id,GROUP_CONCAT(DISTINCT dsa.service_number) serviceNumber,GROUP_CONCAT(DISTINCT dsa.waybill_number) waybillNumber,GROUP_CONCAT(DISTINCT dsa.consignee_unit) @@ -449,5 +455,20 @@ LEFT JOIN logpm_distribution_stockup_info ldsi on dbl.id = ldsi.reservation_id and ldsi.stock_up_type = #{distrilbutionBillLading.stockupType} where ldsi.stockup_id = #{distrilbutionBillLading.id}; + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDisStockListDetailService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDisStockListDetailService.java index 2bdc628bf..2fcbee1c4 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDisStockListDetailService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDisStockListDetailService.java @@ -68,4 +68,10 @@ public interface IDisStockListDetailService extends BaseService disStockListDetail) throws Exception; + /** + * 取消库存品包件信息 + * @param stockListId + * @param billLadingId + */ + void cancelInventoryPackageByReservationIdAnStockListId(Long stockListId, Long billLadingId); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java index 2a38c4b8f..20ecd7fe8 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java @@ -180,4 +180,10 @@ public interface IDistributionParcelListService extends BaseService findByWaybillNumber(String waybillId); + /** + * 批量还原包件状态 + * @param packageIds + * @return + */ + Integer restorePakcageByIds(List packageIds); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DisStockListDetailServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DisStockListDetailServiceImpl.java index c4d510a3d..f9d949057 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DisStockListDetailServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DisStockListDetailServiceImpl.java @@ -20,6 +20,7 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -248,6 +249,15 @@ public class DisStockListDetailServiceImpl extends BaseServiceImpl updateWrapper = new UpdateWrapper<>(); + updateWrapper.lambda().eq(DisStockListDetailEntity::getStockListId,stockListId) + .eq(DisStockListDetailEntity::getReservationId,billLadingId) + .set(DisStockListDetailEntity::getStockPackageStatus,2); + this.update(updateWrapper); + } + /** * 赋值模板转换 * @param id 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 5ba83b2be..237b99bf5 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 @@ -6743,6 +6743,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl packageIds) { + return baseMapper.restorePakcageByIds(packageIds); + } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java index 2a10959bb..93bdd4798 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java @@ -21,6 +21,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -667,14 +668,71 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl ids) { + String method = "##########类DistrilbutionBillLadingServiceImpl执行方法cancelBillLoding,"; + BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); + if (Func.isEmpty(myCurrentWarehouse)){ + //未授权 + return 1; + } + //查询关联包件进行状态恢复 + List distributionParcelListEntities = baseMapper.selectBillLadingPackage(ids); + if (Func.isNotEmpty(distributionParcelListEntities)){ + List signingPakcage = distributionParcelListEntities.stream().filter(f -> f.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())).collect(Collectors.toList()); + if (Func.isEmpty(signingPakcage)){ + //存在签收包件 + return 3; + } + List packageIds = distributionParcelListEntities.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()); + //将这些包件还原成可操作状态 + Integer num = distributionParcelListService.restorePakcageByIds(packageIds); + //维护订单状态 + String orderCodes = distributionParcelListEntities.stream().map(DistributionParcelListEntity::getOrderCode).distinct().collect(Collectors.joining(",")); + distributionStockArticleService.maintenanceOrderInfo(orderCodes,myCurrentWarehouse.getId()); + }else { + log.error(method+"查询无包件信息:{}",ids); + //自提无包件信息 + return 2; + } + //取消库存品 + //查询自提库存品信息 + List distributionStockListEntities = baseMapper.selectBillLadingInventory(ids); + if (Func.isNotEmpty(distributionStockListEntities)){ + //已经备货的库存品 存在库存品包件 + distributionStockListEntities.forEach(ddd->{ + //进行库存品包件取消 + if (ddd.getStockStatus().equals("3")){ + disStockListDetailService.cancelInventoryPackageByReservationIdAnStockListId(ddd.getStockListId(),ddd.getBillLadingId()); + } + //恢复库存品数量 - return R.status(true); + + + } + ); + + + + + + //对所有的库存品相关进行取消标识 + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.lambda() + .set(DistributionDeliveryDetailsEntity::getConditions,3) + .set(DistributionDeliveryDetailsEntity::getQuantity,0) + .in(DistributionDeliveryDetailsEntity::getBillLadingId,ids); + distributionDeliveryDetailsService.update(updateWrapper); + } + return 0; } /**