|
|
|
@ -1202,6 +1202,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
DistributionDeliveryListVO deliveryListVO = Func.copy(deliveryListEntity, DistributionDeliveryListVO.class); |
|
|
|
|
//这里对于同一个配送任务下的预约信息是一致的,这里进行去重的操作,
|
|
|
|
|
DistributionReservationVO reservationVOS = distributionReservationMapper.getReservationInfo(id); |
|
|
|
|
if (Func.isNotEmpty(reservationVOS)){ |
|
|
|
|
deliveryListVO.setReservationInfo(reservationVOS); |
|
|
|
|
//1、查询出订单信息
|
|
|
|
|
List<DistributionStockArticleEntity> stockArticleVOS = distributionDeliveryListMapper.getDeliveryDisuccStockArticleInfo(id); |
|
|
|
@ -1222,8 +1223,11 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
deliveryListVO.setStockArticleList(stockArticleVOList); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//2、查询出备货信息
|
|
|
|
|
DistributionStockupVO stockupEntity = distributionStockupMapper.getDeliveryStockupInfo(id); |
|
|
|
|
if (Func.isNotEmpty(stockupEntity)){ |
|
|
|
|
deliveryListVO.setStockupInfo(stockupEntity); |
|
|
|
|
//3、查询司机信息
|
|
|
|
|
if (deliveryListEntity.getKind().equals(ServiceConstant.DELIVERLIST_KIND_SELF)) { |
|
|
|
@ -1235,6 +1239,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
DistributionDeliveryTripartiteVO deliveryTripartiteVO = distributionDeliveryTripartiteMapper.getDeliveryTripartiteInfo(id); |
|
|
|
|
deliveryListVO.setDeliveryTripartiteVO(deliveryTripartiteVO); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
//4、结果封装
|
|
|
|
|
return deliveryListVO; |
|
|
|
|
} |
|
|
|
@ -1382,6 +1387,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
DistributionReservationPackageEntity packageEntity = new DistributionReservationPackageEntity(); |
|
|
|
|
packageEntity.setStockArticleId(s.getId()); |
|
|
|
|
packageEntity.setReservationId(distributionReservationEntity.getId()); |
|
|
|
|
packageEntity.setPacketBarCode(p.getOrderPackageCode()); |
|
|
|
|
packageEntity.setPacketBarStatus(ReservationPackageStatusConstant.xinzeng.getValue()); |
|
|
|
|
packageEntity.setParceListId(p.getId()); |
|
|
|
|
p.setOrderPackageReservationStatus(OrderPackageReservationStatusConstant.yiyueyue.getValue()); |
|
|
|
@ -1430,7 +1436,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
AtomicInteger packageTotal = new AtomicInteger(); |
|
|
|
|
AtomicInteger reduceOrder = new AtomicInteger(); |
|
|
|
|
// List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionReservationMapper.selectStockArticleByReservationId(reservationEntity.getId());
|
|
|
|
|
List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionDeliveryListMapper.selectStockArticleById(deliveryListEntityId); |
|
|
|
|
List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionDeliveryListMapper.selectStockArticleById(deliveryListEntityId,k); |
|
|
|
|
Map<Long, List<DistributionReservationStockarticleEntity>> oldStockArticle = reservationStockarticleEntityList.stream().collect(Collectors.groupingBy(DistributionReservationStockarticleEntity::getStockArticleId)); |
|
|
|
|
v.forEach(s -> { |
|
|
|
|
//根据配送和客户名称查询预约
|
|
|
|
@ -1447,20 +1453,22 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
reservationPackageEntity.setPacketBarCode(p.getOrderPackageCode()); |
|
|
|
|
reservationPackageEntity.setPacketBarStatus(ReservationPackageStatusConstant.xinzeng.getValue()); |
|
|
|
|
reservationPackageEntity.setParceListId(p.getId()); |
|
|
|
|
distributionReservationPackageService.save(reservationPackageEntity); |
|
|
|
|
//统计包件数量
|
|
|
|
|
packageNum.getAndAdd(p.getQuantity()); |
|
|
|
|
p.setOrderPackageReservationStatus(OrderPackageReservationStatusConstant.yiyueyue.getValue()); |
|
|
|
|
distributionParcelListService.updateById(p); |
|
|
|
|
}); |
|
|
|
|
//查询该订单有效的预约包件数量是否和订单总件数一样,一样订单状态为已预约,否则为部分预约
|
|
|
|
|
int number = distributionReservationPackageMapper.selectPackageNum(s.getId()); |
|
|
|
|
if (Func.equals(number, s.getTotalNumber())) { |
|
|
|
|
s.setReservationStatus(OrderReservationStatusConstant.yiyueyue.getValue()); |
|
|
|
|
} else { |
|
|
|
|
s.setReservationStatus(OrderReservationStatusConstant.bufenyuyue.getValue()); |
|
|
|
|
} |
|
|
|
|
// int number = distributionReservationPackageMapper.selectPackageNum(s.getId());
|
|
|
|
|
// if (Func.equals(number, s.getTotalNumber())) {
|
|
|
|
|
// s.setReservationStatus(OrderReservationStatusConstant.yiyueyue.getValue());
|
|
|
|
|
// } else {
|
|
|
|
|
// s.setReservationStatus(OrderReservationStatusConstant.bufenyuyue.getValue());
|
|
|
|
|
// }
|
|
|
|
|
DistributionReservationStockarticleEntity reservationStockarticleEntity = new DistributionReservationStockarticleEntity(); |
|
|
|
|
reservationStockarticleEntity.setReservationId(reservationEntity.getId()); |
|
|
|
|
// reservationStockarticleEntity.setStockArticleStatus(distributionReservationPackageService.judgmentStatus());
|
|
|
|
|
reservationStockarticleEntity.setStockArticleId(s.getId()); |
|
|
|
|
reservationStockarticleEntity.setStockArticleStatus(ReservationOrderStatusConstant.zengjia.getValue()); |
|
|
|
|
reservationStockarticleEntity.setReservationNum(packageNum.get()); |
|
|
|
@ -1559,6 +1567,27 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
DistributionReservationEntity reservationEntity = baseMapper.selectReservationByDeliveryListIdAndCustomer(deliveryListEntity.getId(), f); |
|
|
|
|
reservationEntity.setReservationStatus(ReservationStatusConstant.yiquexiao.getValue()); |
|
|
|
|
distributionReservationMapper.updateById(reservationEntity); |
|
|
|
|
//这里还需要将减少的预约单下的所有订单、包件进行取消状态
|
|
|
|
|
List<DistributionReservationStockarticleEntity> entities = distributionReservationStockarticleMapper.selectList(Wrappers.<DistributionReservationStockarticleEntity>query().lambda() |
|
|
|
|
.ne(DistributionReservationStockarticleEntity::getStockArticleStatus, "2") |
|
|
|
|
.eq(DistributionReservationStockarticleEntity::getReservationId, reservationEntity.getId())); |
|
|
|
|
entities.forEach(e->{ |
|
|
|
|
e.setStockArticleStatus(ReservationOrderStatusConstant.quxiao.getValue()); |
|
|
|
|
distributionReservationStockarticleService.updateById(e); |
|
|
|
|
//这个订单的包件预约进行取消
|
|
|
|
|
List<DistributionReservationPackageEntity> packageEntityList = distributionReservationPackageMapper.selectList(Wrappers.<DistributionReservationPackageEntity>query().lambda().eq(DistributionReservationPackageEntity::getStockArticleId, e.getStockArticleId()).ne(DistributionReservationPackageEntity::getPacketBarStatus, "2")); |
|
|
|
|
packageEntityList.forEach(p->{ |
|
|
|
|
p.setPacketBarStatus(ReservationPackageStatusConstant.quxiao.getValue()); |
|
|
|
|
distributionReservationPackageService.updateById(p); |
|
|
|
|
DistributionParcelListEntity parcelListEntity = distributionParcelListService.getById(p.getParceListId()); |
|
|
|
|
parcelListEntity.setOrderPackageReservationStatus(OrderPackageReservationStatusConstant.daiyuyue.getValue()); |
|
|
|
|
distributionParcelListService.updateById(parcelListEntity); |
|
|
|
|
}); |
|
|
|
|
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleService.getById(e.getStockArticleId()); |
|
|
|
|
stockArticleEntity.setReservationStatus(distributionReservationPackageService.judgmentStatus(Func.copy(stockArticleEntity,DistributionStockArticleDTO.class))); |
|
|
|
|
distributionStockArticleService.updateById(stockArticleEntity); |
|
|
|
|
//修改预约状态和包件状态
|
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
String kind = deliveryListEntity.getKind(); |
|
|
|
|
switch (kind) { |
|
|
|
@ -1827,6 +1856,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
if (Func.isNotEmpty(stockupInfo.getForkliftName())) { |
|
|
|
|
deliveryStockupInfo.setAssignStatusName(StockAssignStatusConstant.weizhipai.getValue()); |
|
|
|
|
deliveryStockupInfo.setStockupStatus(StockupStatusConstant.weibeihuo.getValue()); |
|
|
|
|
deliveryStockupInfo.setForkliftName(stockupInfo.getForkliftName()); |
|
|
|
|
deliveryStockupInfo.setForkliftId(stockupInfo.getForkliftId()); |
|
|
|
|
//不存在备货人员,此时该任务的状态处于未指派、待分配的状态
|
|
|
|
|
} else { |
|
|
|
|
deliveryStockupInfo.setAssignStatusName(StockAssignStatusConstant.yizhipai.getValue()); |
|
|
|
@ -1856,6 +1887,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
deliveryStockupInfo.setOutboundDate(stockupInfo.getOutboundDate()); |
|
|
|
|
distributionStockupMapper.updateById(deliveryStockupInfo); |
|
|
|
|
} |
|
|
|
|
deliveryListEntity.setTaskTime(deliveryListDTO.getTaskTime()); |
|
|
|
|
//对配送进行更改
|
|
|
|
|
this.updateById(deliveryListEntity); |
|
|
|
|
return R.status(true); |
|
|
|
|