|
|
|
@ -4211,6 +4211,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
distributionAsyncService.recordsReservationDeliveryLog(newReservationEntities, myCurrentWarehouse, AuthUtil.getUser(), deliveryListEntity, WorkNodeEnums.PLAN_DISTRIBUTION.getCode(), content); |
|
|
|
|
} |
|
|
|
|
List<DistributionReservationEntity> oldReservationEntities = new ArrayList<>(); |
|
|
|
|
if (!oldReservation.isEmpty()) { |
|
|
|
|
oldReservation.forEach((m, n) -> { |
|
|
|
|
//这里就是取消的预约单,进行状态回退
|
|
|
|
|
DistributionReservationEntity reservationEntity = n.get(0); |
|
|
|
@ -4229,7 +4230,22 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
oldReservationEntities.add(reservationEntity); |
|
|
|
|
oldIds.add(reservationEntity.getId()); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (!oldIds.isEmpty()) { |
|
|
|
|
//查询这些计划是否存在有装车数
|
|
|
|
|
long packageCount = distributionLoadscanService.count(Wrappers.<DistributionLoadscanEntity>query().lambda() |
|
|
|
|
.in(DistributionLoadscanEntity::getReservationId, oldIds) |
|
|
|
|
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) |
|
|
|
|
); |
|
|
|
|
long inventorycount = distributionLoadscaninvnService.count(Wrappers.<DistributionLoadscaninvnEntity>query().lambda() |
|
|
|
|
.in(DistributionLoadscaninvnEntity::getReservationId, oldIds) |
|
|
|
|
.ne(DistributionLoadscaninvnEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) |
|
|
|
|
); |
|
|
|
|
if ((packageCount + inventorycount) > 0) { |
|
|
|
|
String s = oldReservationEntities.stream().filter(f -> oldIds.contains(f.getId())).map(DistributionReservationEntity::getReservationCode).collect(Collectors.joining(",")); |
|
|
|
|
throw new CustomerException(s+"存在装车或签收数据,无法移除"); |
|
|
|
|
} |
|
|
|
|
String content = "包件在" + myCurrentWarehouse.getName() + "由" + AuthUtil.getUser().getNickName() + "取消配车计划,操作方式:车次移除预约计划,车次号:" + deliveryListEntity.getTrainNumber(); |
|
|
|
|
distributionAsyncService.recordsReservationDeliveryLog(oldReservationEntities, myCurrentWarehouse, AuthUtil.getUser(), deliveryListEntity, WorkNodeEnums.CANCEL_DISTRIBUTION.getCode(), content); |
|
|
|
|
} |
|
|
|
@ -5190,9 +5206,16 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
if (Objects.isNull(myCurrentWarehouse)) { |
|
|
|
|
return R.fail(403, "未授权!!!"); |
|
|
|
|
} |
|
|
|
|
if (Objects.isNull(distributionDeliveryListDTO.get("deliveryListId"))) { |
|
|
|
|
return R.fail("deliveryListId参数缺失"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
String deliveryListId = (String) distributionDeliveryListDTO.get("deliveryListId"); |
|
|
|
|
DistributionDeliveryListEntity deliveryListEntity = this.getById(deliveryListId); |
|
|
|
|
Integer loadingNum = baseMapper.selectLoadingNum(Long.parseLong(deliveryListId)); |
|
|
|
|
if (loadingNum > 0){ |
|
|
|
|
return R.fail("存在装车或签收数据无法进行配送取消!!!"); |
|
|
|
|
} |
|
|
|
|
List<DistributionSignforEntity> distributionSignforEntities = distributionSignforServicer.getBaseMapper().selectList(Wrappers.<DistributionSignforEntity>query().lambda().eq(DistributionSignforEntity::getDeliveryId, deliveryListEntity.getId())); |
|
|
|
|
BladeUser user = AuthUtil.getUser(); |
|
|
|
|
List<DistributionReservationEntity> reservationList = new ArrayList<>(); |
|
|
|
@ -5213,7 +5236,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
List<DistributionReservationPackageEntity> reservationPackageEntityList = distributionReservationPackageMapper.selectList(Wrappers.<DistributionReservationPackageEntity>query().lambda().eq(DistributionReservationPackageEntity::getReservationId, reservationEntity.getId()).eq(DistributionReservationPackageEntity::getStockArticleId, o.getStockArticleId()).ne(DistributionReservationPackageEntity::getPacketBarStatus, ReservationPackageStatusConstant.quxiao.getValue())); |
|
|
|
|
reservationPackageEntityList.forEach(p -> { |
|
|
|
|
DistributionParcelListEntity parcelListEntity = distributionParcelListService.getById(p.getParceListId()); |
|
|
|
|
//TODO 这里取消应该有一个取消的任务
|
|
|
|
|
parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.weizhuancghe.getValue()); |
|
|
|
|
parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yiruku.getValue()); |
|
|
|
|
distributionParcelListService.updateById(parcelListEntity); |
|
|
|
|