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 f9717b2b1..f4c1923f6 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 @@ -58,6 +58,7 @@ import com.logpm.oldproject.dto.SignPushDataContactDTO; import com.logpm.oldproject.dto.SignPushDataDTO; import com.logpm.oldproject.dto.SignPushDataUnitDTO; import com.logpm.oldproject.feign.IOldSignPushClient; +import com.logpm.trunkline.feign.ITrunklinePackageTrackLogClient; import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient; import lombok.extern.log4j.Log4j2; import org.apache.logging.log4j.util.Strings; @@ -183,6 +184,9 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl selectDistrilbutionBillLadingPage(IPage page, DistrilbutionBillLadingVO distrilbutionBillLading) { @@ -318,6 +322,12 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl logs = new ArrayList<>(); + BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); + if (Func.isEmpty(myCurrentWarehouse)){ + log.error("自提操作未进行仓库选择"); + return false; + } if (ObjectUtils.isNotNull(distrilbutionBillLading.getId())) { //判断是否已签收 DistrilbutionBillLadingEntity billLadingEntity = baseMapper.selectById(distrilbutionBillLading.getId()); @@ -329,7 +339,10 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl jsonObjects = updateBillPackeg(distrilbutionBillLading, myCurrentWarehouse,billLadingEntity.getPickupBatch()); + if (!jsonObjects.isEmpty()) { + logs.addAll(jsonObjects); + } } //修改零担数据 updetaParcelNum(distrilbutionBillLading); @@ -355,51 +368,16 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list = distributionDeliveryChargeService.list(Wrappers.query().lambda() .eq(DistributionDeliveryChargeEntity::getBillLading, distrilbutionBillLading.getId()) ); -// List deliveryChargeEntities = new ArrayList<>(); -// if (!list.isEmpty()) { -// list.forEach(i -> { -// String s = distrilbutionBillLading.getFei().get(i.getCost()); -// if (StringUtils.isNotBlank(s)) { -// //修改 -// DistributionDeliveryChargeEntity distributionDeliveryCharge = new DistributionDeliveryChargeEntity(); -// distributionDeliveryCharge.setId(i.getId()); -// distributionDeliveryCharge.setMoney(new BigDecimal(s)); -// distributionDeliveryCharge.setCost(i.getCost()); -// deliveryChargeEntities.add(distributionDeliveryCharge); -//// distributionDeliveryChargeService.updateById(distributionDeliveryCharge); -// distrilbutionBillLading.getFei().remove(i.getCost()); -// } else { -// //删除 -// distributionDeliveryChargeService.removeById(i.getId()); -// } -// }); -// } -// if (!deliveryChargeEntities.isEmpty()){ -// distributionDeliveryChargeService.updateBatchById(deliveryChargeEntities); -// } //修改订单数据 if (!distrilbutionBillLading.getStockArticleList().isEmpty()) { - boolean flag = handleOrder(distrilbutionBillLading); -// boolean order = getOrder(distrilbutionBillLading.getStockArticleList(), distrilbutionBillLading.getId()); + List jsonObjects = handleOrder(distrilbutionBillLading,billLadingEntity.getPickupBatch()); + if (!jsonObjects.isEmpty()) { + logs.addAll(jsonObjects); + } String orderIds = distrilbutionBillLading.getStockArticleList().stream().map(DistributionStockArticleEntity::getId).map(String::valueOf).collect(Collectors.joining(",")); distrilbutionBillLading.setStockArticleId(orderIds); this.updateById(distrilbutionBillLading); - - if (!flag) { - throw new ServiceException("修改失败!!"); - } } - - /* else{ - updateOrder(distrilbutionBillLading); - } - if(distrilbutionBillLading.getStockArticleList().isEmpty() && distrilbutionBillLading.getStockDTOList().isEmpty()){ - //取消全部订单 - updateOrder(distrilbutionBillLading); - updateStockBill(distrilbutionBillLading); - //取消自提任务 - baseMapper.deleteById(billLadingEntity.getId()); - }*/ //修改库存品 if (!distrilbutionBillLading.getStockDTOList().isEmpty()) { List stockDTOList = distrilbutionBillLading.getStockDTOList(); @@ -450,13 +428,6 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl 0) { //存在备货 throw new RuntimeException("该库存品已备货无法减少"); -// if (sum >= deliveryDetails.getQuantity()) { -// //满足备货或者备货数量超过 -// -// }else { -// -// -// } } else { //对于包件进行随机删除 @@ -566,97 +537,6 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl ids = new ArrayList<>(); -// //有 -// //修改 -// listDetails.forEach(i -> { -// boolean b = distrilbutionBillLading.getStockDTOList().stream().anyMatch(a -> i.getStockListId().equals(a.getId())); -// //查询是否存签收扫描数量 -// List list1 = distributionStockService.list(Wrappers.query().lambda() -// .eq(DistributionStockEntity::getBillLadingId, distrilbutionBillLading.getId()) -// .eq(DistributionStockEntity::getStockListId, i.getStockListId()) -// .eq(DistributionStockEntity::getType, "2") -// ); -// if (b) { -// //有 -// Iterator iterator = distrilbutionBillLading.getStockDTOList().iterator(); -// while (iterator.hasNext()) { -// DistributionStockListDTO next = iterator.next(); -// if (i.getStockListId().equals(next.getId())) { -// DistributionDeliveryDetailsEntity deliveryDetails = new DistributionDeliveryDetailsEntity(); -// deliveryDetails.setQuantity(next.getInventoryQuantity()); -// deliveryDetails.setId(i.getId()); -// distributionDeliveryDetailsService.updateById(deliveryDetails); -// Integer inventoryQuantity = next.getInventoryQuantity(); //修改数量 -// Integer quantity = i.getQuantity();//原来的数量 -// int num = 0; -// -// if (inventoryQuantity > quantity) { -// num = inventoryQuantity - quantity; //多 添加了数量 -// //修改库存占用数量 -// distributionAsyncService.getInventoryNumUpdate(i.getStockListId(), num, 1); -// //kk备货 -// if ("20".equals(i.getConditions())) { -// //xiugai -// DistributionDeliveryDetailsEntity d = new DistributionDeliveryDetailsEntity(); -// d.setId(i.getId()); -// d.setConditions(BillLadingStatusConstant.daitihuo.getValue()); -// d.setInventoryStatus("3"); -// distributionDeliveryDetailsService.updateById(d); -// } -// } else if (inventoryQuantity < quantity) { -// num = quantity - inventoryQuantity; //少 减少了数量 -// /*if(list1.size() < 1){ -// -// }else{ -// //有备货 -// }*/ -// -// if ("20".equals(i.getConditions())) { -// //todo 已完成 -// -// } else { -// //todo 未完成 -// int size = list1.size(); //扫描的数量 -// int i1 = quantity - size; //未扫的数量 -// if (i1 > num) { -// //可以减少 -// //修改库存占用数量 -// distributionAsyncService.getInventoryNumUpdate(i.getStockListId(), num, 2); -// } else { -// //todo 未扫小于减少 -// -// } -// -// } -// -// } -// iterator.remove(); -// } -// -// } -// } else { -// -// if (list1.isEmpty()) { -// //取消库存占用数量 -// distributionAsyncService.getInventoryNumUpdate(i.getStockListId(), i.getQuantity(), 2); -// } -// //没有 删除 -// ids.add(i.getId()); -// -// } -// }); -// //删除没有的库存品 -// if (!ids.isEmpty()) { -// ids.forEach(a -> { -// DistributionDeliveryDetailsEntity deliveryDetails = new DistributionDeliveryDetailsEntity(); -// deliveryDetails.setId(a); -// deliveryDetails.setInventoryStatus("2"); -// distributionDeliveryDetailsService.updateById(deliveryDetails); -// }); -// } -// } } else { updateStockBill(distrilbutionBillLading); } @@ -666,11 +546,6 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl updateBillPackeg(DistrilbutionBillLadingDTO distrilbutionBillLading,BasicdataWarehouseEntity warehouse,String pickupBatch) { List packageIds = new ArrayList<>(); List finalPackageIds = packageIds; + List aaa = new ArrayList<>(); distrilbutionBillLading.getBillPackageEntityList().stream().collect(Collectors.groupingBy(DistrilbutionBillPackageEntity::getStockArticleId)) .forEach((k, v) -> { List list = distrilbutionBillPackageService.list(Wrappers.query().lambda() @@ -1660,6 +1546,9 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl collect = packageEntityList.stream().map(i -> i.getParceListId()).collect(Collectors.toList()); @@ -1682,6 +1571,12 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl distributionParcelListEntities = distributionParcelListService.listByIds(collect); + for (DistributionParcelListEntity distributionParcelListEntity : distributionParcelListEntities) { + String content = "包件在"+warehouse.getName()+"由"+AuthUtil.getNickName()+"取消计划自提,操作方式:订单取消勾选包件,自提批次号:"+pickupBatch; + JSONObject js = handleLogJSONObject(warehouse, AuthUtil.getUser(), distributionParcelListEntity.getOrderPackageCode(), content, WorkNodeEnums.PLAN_BILLOFLADING.getCode()); + aaa.add(js); + } packageIds.addAll(collect); if (!update) { throw new ServiceException("修改失败!!!"); @@ -1710,7 +1605,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl handleOrder(DistrilbutionBillLadingDTO distrilbutionBillLading,String pickupBatch) { BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); if (Func.isEmpty(myCurrentWarehouse)) { - return false; + throw new RuntimeException("未授权!!!"); } + List aaa = new ArrayList<>(); List stockArticleList = distrilbutionBillLading.getStockArticleList(); //查询此自提单已经存在的包件信息 List entityList = distrilbutionBillStockService.list(Wrappers.query().lambda() @@ -1879,38 +1775,28 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl>>>>>>>>>>>>>>>>>>>>自提取消订单错误stockArticleEntityId:{}", distrilbutionBillStock.getStockArticleId()); - return false; } //查询是取消零担还是取消订制品 if (IsOrNoConstant.no.getValue().equals(stockArticleEntity.getIsZero())) { - distrilbutionBillPackageService.update(Wrappers.update() - .eq("stock_article_id", distrilbutionBillStock.getStockArticleId()) - .eq("bill_lading_id", distrilbutionBillStock.getBillLadingId()) - .set("packet_bar_status", ReservationPackageStatusConstant.quxiao.getValue()) + List list = distrilbutionBillPackageService.list(Wrappers.query().lambda() + .eq(DistrilbutionBillPackageEntity::getBillLadingId, distrilbutionBillLading.getId()) + .eq(DistrilbutionBillPackageEntity::getStockArticleId, distrilbutionBillStock.getStockArticleId()) + .ne(DistrilbutionBillPackageEntity::getPacketBarStatus, "2") ); + + if (!list.isEmpty()) { + for (DistrilbutionBillPackageEntity billPackageEntity : list) { + String content = "包件在"+myCurrentWarehouse.getName()+"由"+AuthUtil.getNickName()+"取消计划自提,操作方式:移除订单,自提批次号:"+pickupBatch; + JSONObject js = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), billPackageEntity.getPacketBarCode(), content, WorkNodeEnums.PLAN_BILLOFLADING.getCode()); + aaa.add(js); + + billPackageEntity.setPacketBarStatus(2); + distrilbutionBillPackageService.updateById(billPackageEntity); + } + } + + } -// else if (IsOrNoConstant.yes.getValue().equals(stockArticleEntity.getIsZero())){ -// //维护零担品类的数量 -// //查询零担信息 -// List reservationZeroPackageEntities = distributionZeroPackageService.list(Wrappers.query().lambda() -// .eq(DistributionReservationZeroPackageEntity::getReservationId, distrilbutionBillStock.getBillLadingId()) -// .eq(DistributionReservationZeroPackageEntity::getStockArticleId, distrilbutionBillStock.getStockArticleId()) -// .ne(DistributionReservationZeroPackageEntity::getZeroPackageStatus, ReservationPackageStatusConstant.quxiao.getValue()) -// ); -// if (!reservationZeroPackageEntities.isEmpty()){ -// List collect = reservationZeroPackageEntities.stream().map(DistributionReservationZeroPackageEntity::getParcelListId).collect(Collectors.toList()); -// distributionZeroPackageService.recoverZeroPackage(distrilbutionBillStock.getBillLadingId(),collect); -// distributionZeroPackageService.update(Wrappers.update().lambda() -// .eq(DistributionReservationZeroPackageEntity::getReservationId,distrilbutionBillStock.getBillLadingId()) -// .eq(DistributionReservationZeroPackageEntity::getStockArticleId,distrilbutionBillStock.getStockArticleId()) -// .set(DistributionReservationZeroPackageEntity::getZeroPackageStatus,ReservationPackageStatusConstant.quxiao.getValue()) -// .set(DistributionReservationZeroPackageEntity::getQuantity,0) -// ); -// } -// }else { -// log.error(">>>>>>>>>>>>>>>>>>>>>自提取消订单错误stockArticleEntityId:{}",distrilbutionBillStock.getStockArticleId()); -// return false; -// } distrilbutionBillStock.setOrderStatus("2"); distrilbutionBillStockService.updateById(distrilbutionBillStock); orderCodes.add(stockArticleEntity.getOrderCode()); @@ -1928,7 +1814,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl { DistrilbutionBillPackageEntity billPackageEntity = new DistrilbutionBillPackageEntity(); @@ -1986,6 +1873,9 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl collect = parcelListEntities.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()); @@ -1995,7 +1885,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl zeroPackageEntities = new ArrayList<>(); @@ -2007,7 +1897,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl { //查询包件 @@ -2028,13 +1918,6 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl