|
|
|
@ -10083,55 +10083,88 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
if (DeliveryStartStatusConstant.yifache.getValue().equals(deliveryListEntity.getIsStart())) { |
|
|
|
|
return Resp.scanFail("已发车无法进行异常装车", "已发车无法进行异常装车"); |
|
|
|
|
} |
|
|
|
|
if (Objects.isNull(distrilbutionloadingscanDTO.getReservationId())) { |
|
|
|
|
return Resp.scanFail("请指定客户进行异常装车", "请指定客户进行异常装车"); |
|
|
|
|
} |
|
|
|
|
List<DistributionReservationEntity> reservationEntityList = distributionDeliveryListMapper.selectReservationByDeliveryListId(deliveryId); |
|
|
|
|
if (!reservationEntityList.isEmpty()) { |
|
|
|
|
boolean shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shipie.getValue())); |
|
|
|
|
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId()); |
|
|
|
|
if (shangpeiFlag) { |
|
|
|
|
//查看是否存在满足条件的预约单
|
|
|
|
|
boolean flag = reservationEntityList.stream().anyMatch(r -> Func.isNotEmpty(r.getConsignee()) |
|
|
|
|
&& r.getConsignee().equals(stockArticleEntity.getCustomerName()) |
|
|
|
|
&& r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) |
|
|
|
|
&& r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) |
|
|
|
|
&& r.getMallName().equals(stockArticleEntity.getMallName()) |
|
|
|
|
&& r.getId().equals(distrilbutionloadingscanDTO.getReservationId()) |
|
|
|
|
); |
|
|
|
|
//存在多个,操作人指定具体客户即可
|
|
|
|
|
if (flag) { |
|
|
|
|
List<DistributionReservationEntity> reservationEntities = reservationEntityList.stream().filter(r -> Func.isNotEmpty(r.getConsignee()) && r.getConsignee().equals(stockArticleEntity.getCustomerName()) && r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) && r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) && r.getMallName().equals(stockArticleEntity.getMallName()) |
|
|
|
|
&& r.getId().equals(distrilbutionloadingscanDTO.getReservationId())).collect(Collectors.toList()); |
|
|
|
|
return R.fail(5000, "异常装车"); |
|
|
|
|
if (!Objects.isNull(distrilbutionloadingscanDTO.getReservationId())) { |
|
|
|
|
if (!reservationEntityList.isEmpty()) { |
|
|
|
|
boolean shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shipie.getValue())); |
|
|
|
|
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId()); |
|
|
|
|
if (shangpeiFlag) { |
|
|
|
|
//查看是否存在满足条件的预约单
|
|
|
|
|
boolean flag = reservationEntityList.stream().anyMatch(r -> Func.isNotEmpty(r.getConsignee()) |
|
|
|
|
&& r.getConsignee().equals(stockArticleEntity.getCustomerName()) |
|
|
|
|
&& r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) |
|
|
|
|
&& r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) |
|
|
|
|
&& r.getMallName().equals(stockArticleEntity.getMallName()) |
|
|
|
|
); |
|
|
|
|
//存在多个,操作人指定具体客户即可
|
|
|
|
|
if (flag) { |
|
|
|
|
return R.fail(5000, "异常装车"); |
|
|
|
|
} else { |
|
|
|
|
return Resp.scanFail("窜货","窜货"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
return Resp.scanFail("窜货","窜货"); |
|
|
|
|
shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shangpei.getValue())); |
|
|
|
|
if (shangpeiFlag) { |
|
|
|
|
//查询是否满足商配异常装车
|
|
|
|
|
boolean flag = reservationEntityList.stream().anyMatch(r -> |
|
|
|
|
r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && |
|
|
|
|
r.getMallName().equals(stockArticleEntity.getMallName()) && |
|
|
|
|
r.getId().equals(distrilbutionloadingscanDTO.getReservationId()) |
|
|
|
|
); |
|
|
|
|
if (flag) { |
|
|
|
|
List<DistributionReservationEntity> reservationEntities = reservationEntityList.stream().filter(r -> Func.isNotEmpty(r.getConsignee()) |
|
|
|
|
&& r.getConsignee().equals(stockArticleEntity.getCustomerName()) |
|
|
|
|
&& r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) |
|
|
|
|
&& r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) |
|
|
|
|
&& r.getMallName().equals(stockArticleEntity.getMallName()) |
|
|
|
|
|
|
|
|
|
).collect(Collectors.toList()); |
|
|
|
|
return R.fail(5000, "异常装车"); |
|
|
|
|
} else { |
|
|
|
|
return Resp.scanFail("窜货","窜货"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
log.error("配送计划预约类型错误:{}", reservationEntityList); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shangpei.getValue())); |
|
|
|
|
} |
|
|
|
|
}else { |
|
|
|
|
if (!reservationEntityList.isEmpty()) { |
|
|
|
|
boolean shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shipie.getValue())); |
|
|
|
|
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId()); |
|
|
|
|
if (shangpeiFlag) { |
|
|
|
|
//查询是否满足商配异常装车
|
|
|
|
|
boolean flag = reservationEntityList.stream().anyMatch(r -> |
|
|
|
|
r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && |
|
|
|
|
r.getMallName().equals(stockArticleEntity.getMallName()) && |
|
|
|
|
r.getId().equals(distrilbutionloadingscanDTO.getReservationId()) |
|
|
|
|
//查看是否存在满足条件的预约单
|
|
|
|
|
boolean flag = reservationEntityList.stream().anyMatch(r -> Func.isNotEmpty(r.getConsignee()) |
|
|
|
|
&& r.getConsignee().equals(stockArticleEntity.getCustomerName()) |
|
|
|
|
&& r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) |
|
|
|
|
&& r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) |
|
|
|
|
&& r.getMallName().equals(stockArticleEntity.getMallName()) |
|
|
|
|
); |
|
|
|
|
//存在多个,操作人指定具体客户即可
|
|
|
|
|
if (flag) { |
|
|
|
|
List<DistributionReservationEntity> reservationEntities = reservationEntityList.stream().filter(r -> Func.isNotEmpty(r.getConsignee()) |
|
|
|
|
&& r.getConsignee().equals(stockArticleEntity.getCustomerName()) |
|
|
|
|
&& r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) |
|
|
|
|
&& r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) |
|
|
|
|
&& r.getMallName().equals(stockArticleEntity.getMallName()) |
|
|
|
|
|
|
|
|
|
).collect(Collectors.toList()); |
|
|
|
|
return R.fail(5000, "异常装车"); |
|
|
|
|
return Resp.scanFail("请指定客户进行异常装车", "请指定客户进行异常装车"); |
|
|
|
|
} else { |
|
|
|
|
return Resp.scanFail("窜货","窜货"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
log.error("配送计划预约类型错误:{}", reservationEntityList); |
|
|
|
|
shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shangpei.getValue())); |
|
|
|
|
if (shangpeiFlag) { |
|
|
|
|
//查询是否满足商配异常装车
|
|
|
|
|
boolean flag = reservationEntityList.stream().anyMatch(r -> |
|
|
|
|
r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && |
|
|
|
|
r.getMallName().equals(stockArticleEntity.getMallName()) |
|
|
|
|
); |
|
|
|
|
if (flag) { |
|
|
|
|
return Resp.scanFail("请指定客户进行异常装车", "请指定客户进行异常装车"); |
|
|
|
|
} else { |
|
|
|
|
return Resp.scanFail("窜货","窜货"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
log.error("配送计划预约类型错误:{}", reservationEntityList); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
return Resp.scanFail("查询客户信息错误","查询客户信息错误"); |
|
|
|
|
} |
|
|
|
|