Browse Source

异常装车判定BUG修复

dist.1.3.0
汤建军 6 months ago
parent
commit
0dd44ba257
  1. 107
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

107
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

@ -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("查询客户信息错误","查询客户信息错误");
}

Loading…
Cancel
Save