|
|
|
@ -2259,7 +2259,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
distributionAppDeliveryListVO.setStockupArea("无数据"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//查询包件签收件数
|
|
|
|
|
Integer lad = distributionLoadscanMapper.selectCount(new QueryWrapper<DistributionLoadscanEntity>().lambda() |
|
|
|
|
.eq(DistributionLoadscanEntity::getDeliveryId, distributionAppDeliveryListVO.getId()) |
|
|
|
@ -2271,7 +2270,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
.eq(DistributionLoadscaninvnEntity::getDeliveryId, distributionAppDeliveryListVO.getId()) |
|
|
|
|
.eq(DistributionLoadscaninvnEntity::getSignforState, 2) |
|
|
|
|
).intValue(); |
|
|
|
|
|
|
|
|
|
//维护计划数
|
|
|
|
|
List<DistributionReservationEntity> reservationEntityList = baseMapper.selectReservationByDeliveryListId(distributionAppDeliveryListVO.getId()); |
|
|
|
|
if (Func.isNotEmpty(reservationEntityList)){ |
|
|
|
@ -2281,20 +2279,40 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
}else { |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
distributionAppDeliveryListVO.setSignNub(lad + nad); |
|
|
|
|
//查询完成客户数
|
|
|
|
|
Integer cusCount = baseMapper.selectCompletecusCount(distributionAppDeliveryListVO.getId()); |
|
|
|
|
//查询完成订单数
|
|
|
|
|
Integer ordCount = 0; |
|
|
|
|
List<DistributionAppStockArticleVO> distributionAppStockArticleVOS = baseMapper.selectDistributionAppDeliveryOrderO(distributionAppDeliveryListVO); |
|
|
|
|
for (DistributionAppStockArticleVO distributionAppStockArticleVO : distributionAppStockArticleVOS) { |
|
|
|
|
if (distributionAppStockArticleVO.getLoadingNub() >= distributionAppStockArticleVO.getReservationNum()) { |
|
|
|
|
ordCount += 1; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
AtomicInteger ordCount = new AtomicInteger(); |
|
|
|
|
// List<DistributionAppStockArticleVO> distributionAppStockArticleVOS = baseMapper.selectDistributionAppDeliveryOrderO(distributionAppDeliveryListVO);
|
|
|
|
|
List<DistributionStockArticleVO> deliveryStockArticleInfo = baseMapper.getDeliveryStockArticleInfo(distributionAppDeliveryListVO.getId()); |
|
|
|
|
// deliveryStockArticleInfo.forEach();
|
|
|
|
|
List<DistributionReservationEntity> distributionReservationEntities = baseMapper.selectReservationByDeliveryListId(distributionAppDeliveryListVO.getId()); |
|
|
|
|
distributionReservationEntities.forEach(r->{ |
|
|
|
|
List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionReservationMapper.selectStockArticleByReservationId(r.getId()); |
|
|
|
|
reservationStockarticleEntityList.forEach(rs->{ |
|
|
|
|
List<DistributionLoadscanEntity> loadscanEntityList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda() |
|
|
|
|
.eq(DistributionLoadscanEntity::getDeliveryId, distributionAppDeliveryListVO.getId()) |
|
|
|
|
.eq(DistributionLoadscanEntity::getOrderId, rs.getStockArticleId()) |
|
|
|
|
.eq(DistributionLoadscanEntity::getReservationId, rs.getReservationId()) |
|
|
|
|
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) |
|
|
|
|
); |
|
|
|
|
if (Func.isNotEmpty(loadscanEntityList)){ |
|
|
|
|
int loadSum = loadscanEntityList.stream().mapToInt(DistributionLoadscanEntity::getLoadedNub).sum(); |
|
|
|
|
if (rs.getReservationNum() == loadSum){ |
|
|
|
|
ordCount.getAndIncrement(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
// distributionReservationMapper.selectPackageByReservationAndStockArticle()
|
|
|
|
|
// for (DistributionAppStockArticleVO distributionAppStockArticleVO : distributionAppStockArticleVOS) {
|
|
|
|
|
// if (distributionAppStockArticleVO.getLoadingNub() >= distributionAppStockArticleVO.getReservationNum()) {
|
|
|
|
|
// ordCount += 1;
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
distributionAppDeliveryListVO.setLoadCusNub(cusCount); |
|
|
|
|
distributionAppDeliveryListVO.setLoadOrdNub(ordCount); |
|
|
|
|
distributionAppDeliveryListVO.setLoadOrdNub(ordCount.get()); |
|
|
|
|
//查询下面的预约单
|
|
|
|
|
List<DistributionSignforEntity> distributionSignforEntityList = distributionSignforMapper.selectList(new QueryWrapper<DistributionSignforEntity>().lambda() |
|
|
|
|
.eq(DistributionSignforEntity::getDeliveryId, distributionAppDeliveryListVO.getId()) |
|
|
|
@ -2346,7 +2364,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
distributionAppDeliveryListVO.setDriverName(stringBuilder.toString()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return page.setRecords(distributionAppDeliveryListVOS); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -2523,7 +2540,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
parcelListEntities.forEach(p->{ |
|
|
|
|
WarehouseTrayGoodsEntity warehouseTrayGoodsEntity = new WarehouseTrayGoodsEntity(); |
|
|
|
|
warehouseTrayGoodsEntity.setAssociationId(p.getId()); |
|
|
|
|
warehouseTrayGoodsEntity.setAssociationType("1"); |
|
|
|
|
warehouseTrayGoodsEntity.setAssociationValue(p.getOrderPackageCode()); |
|
|
|
|
warehouseTrayGoodsEntity.setAssociationType("3"); |
|
|
|
|
List<WarehouseTrayGoodsEntity> trayGoodsClientTrayList = warehouseTrayGoodsClient.getTrayList(warehouseTrayGoodsEntity); |
|
|
|
|
if (Func.isNotEmpty(trayGoodsClientTrayList)){ |
|
|
|
|
trayList.addAll(trayGoodsClientTrayList); |
|
|
|
@ -2537,7 +2555,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
if (Func.isNotEmpty(packageListLoadingScan)){ |
|
|
|
|
loadscanEntityList.addAll(packageListLoadingScan); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
}else if (reservationStockarticleEntity.getIsZero().equals(IsOrNoConstant.yes.getValue())){ |
|
|
|
|
//查询零担备货数量
|
|
|
|
|
List<DistributionStockEntity> zeroPackageListStockUpScan = distributionStockMapper.selectList(Wrappers.<DistributionStockEntity>query().lambda() |
|
|
|
@ -2559,8 +2576,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
} |
|
|
|
|
distributionAppReservationVO.setTrayNum(0); |
|
|
|
|
if (Func.isNotEmpty(trayList)){ |
|
|
|
|
Long count = trayList.stream().map(WarehouseTrayGoodsEntity::getTrayId).count(); |
|
|
|
|
distributionAppReservationVO.setTrayNum(count.intValue()); |
|
|
|
|
// Long count = trayList.stream().map(WarehouseTrayGoodsEntity::getTrayId).count();
|
|
|
|
|
Long aaa = trayList.stream().map(WarehouseTrayGoodsEntity::getTrayId).distinct().count(); |
|
|
|
|
distributionAppReservationVO.setTrayNum(aaa.intValue()); |
|
|
|
|
} |
|
|
|
|
List<DisStockListDetailEntity> stockListDetailEntityList = distributionReservationMapper.selectInventoryListByReservation(distributionAppReservationVO.getId()); |
|
|
|
|
// boolean inventoryStockupStatus = stockListDetailEntityList.stream().allMatch(i -> Func.isNotEmpty(i.getStockPackageCode()));
|
|
|
|
@ -3841,7 +3859,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
List<DistributionParcelListEntity> parcelListEntityList = distributionReservationMapper.selectPackageByReservationAndStockArticle(rs.getReservationId(), rs.getStockArticleId()); |
|
|
|
|
List<DistributionLoadscanEntity> packageLoadingList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda() |
|
|
|
|
.eq(DistributionLoadscanEntity::getDeliveryId, distributionAppDeliveryListDTO.getId()) |
|
|
|
|
.eq(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) |
|
|
|
|
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) |
|
|
|
|
.eq(DistributionLoadscanEntity::getReservationId, rs.getReservationId()) |
|
|
|
|
.in(DistributionLoadscanEntity::getPackageId, parcelListEntityList.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()))); |
|
|
|
|
if (Func.isNotEmpty(packageLoadingList)){ |
|
|
|
@ -3860,7 +3878,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
List<DistributionParcelNumberVO> parcelNumberVOS = distributionReservationMapper.selectReservationZeroOrderDetail(rs.getStockArticleId(), rs.getReservationId()); |
|
|
|
|
List<DistributionLoadscanEntity> loadscanEntities = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda() |
|
|
|
|
.eq(DistributionLoadscanEntity::getDeliveryId, distributionAppDeliveryListDTO.getId()) |
|
|
|
|
.eq(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) |
|
|
|
|
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) |
|
|
|
|
.eq(DistributionLoadscanEntity::getReservationId, rs.getReservationId()) |
|
|
|
|
.in(DistributionLoadscanEntity::getPackageId, parcelNumberVOS.stream().map(DistributionParcelNumberVO::getParcelListId).collect(Collectors.toList()))); |
|
|
|
|
if (Func.isNotEmpty(loadscanEntities)){ |
|
|
|
@ -4686,18 +4704,21 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
c.setIsScan(2); |
|
|
|
|
} |
|
|
|
|
TrayTypeDataVO trayTypeDataVO = warehouseTrayTypeClient.selectListByTrayCode(c.getTrayCode()); |
|
|
|
|
List<WarehouseTrayGoodsEntity> goodsLsit = trayTypeDataVO.getGoodsLsit(); |
|
|
|
|
if (Func.isNotEmpty(goodsLsit)) { |
|
|
|
|
List<Long> longs = goodsLsit.stream().map(WarehouseTrayGoodsEntity::getAssociationId).collect(Collectors.toList()); |
|
|
|
|
List<DistributionParcelListEntity> parcelListEntities = distributionParcelListService.listByIds(longs); |
|
|
|
|
List<DistributionParcelListEntity> reservationPackageList = distributionReservationMapper.selectPackageListByReservationId(Long.parseLong(distributionDeliveryList.getReservationId())); |
|
|
|
|
Map<Long, DistributionParcelListEntity> packageMap = reservationPackageList.stream().collect(Collectors.toMap(DistributionParcelListEntity::getId, Function.identity(), (k1, k2) -> k2)); |
|
|
|
|
boolean flag = parcelListEntities.stream().allMatch(p -> Func.isNotEmpty(packageMap.get(p.getId()))); |
|
|
|
|
if (flag) { |
|
|
|
|
c.setPackageList(DistributionParcelListWrapper.build().listVO(parcelListEntities)); |
|
|
|
|
a.add(c); |
|
|
|
|
if (Func.isNotEmpty(trayTypeDataVO)){ |
|
|
|
|
List<WarehouseTrayGoodsEntity> goodsLsit = trayTypeDataVO.getGoodsLsit(); |
|
|
|
|
if (Func.isNotEmpty(goodsLsit)) { |
|
|
|
|
List<Long> longs = goodsLsit.stream().map(WarehouseTrayGoodsEntity::getAssociationId).collect(Collectors.toList()); |
|
|
|
|
List<DistributionParcelListEntity> parcelListEntities = distributionParcelListService.listByIds(longs); |
|
|
|
|
List<DistributionParcelListEntity> reservationPackageList = distributionReservationMapper.selectPackageListByReservationId(Long.parseLong(distributionDeliveryList.getReservationId())); |
|
|
|
|
Map<Long, DistributionParcelListEntity> packageMap = reservationPackageList.stream().collect(Collectors.toMap(DistributionParcelListEntity::getId, Function.identity(), (k1, k2) -> k2)); |
|
|
|
|
boolean flag = parcelListEntities.stream().allMatch(p -> Func.isNotEmpty(packageMap.get(p.getId()))); |
|
|
|
|
if (flag) { |
|
|
|
|
c.setPackageList(DistributionParcelListWrapper.build().listVO(parcelListEntities)); |
|
|
|
|
a.add(c); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
return page.setRecords(a); |
|
|
|
|
} |
|
|
|
|