|
|
|
@ -58,6 +58,7 @@ import org.springblade.common.constant.DistributionTypeConstant;
|
|
|
|
|
import org.springblade.common.constant.Inventory.InventoryLoadingStatusConstant; |
|
|
|
|
import org.springblade.common.constant.delivery.DeliveryLoadingStatusConstant; |
|
|
|
|
import org.springblade.common.constant.delivery.DeliveryStatusConstant; |
|
|
|
|
import org.springblade.common.constant.loading.LoadingAbnormalAuditingStatusConstant; |
|
|
|
|
import org.springblade.common.constant.loading.LoadingIsInsertConstant; |
|
|
|
|
import org.springblade.common.constant.loading.LoadingStatusConstant; |
|
|
|
|
import org.springblade.common.constant.order.OrderStatusConstant; |
|
|
|
@ -78,6 +79,7 @@ import org.springblade.core.log.exception.ServiceException;
|
|
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl; |
|
|
|
|
import org.springblade.core.mp.support.Condition; |
|
|
|
|
import org.springblade.core.mp.support.Query; |
|
|
|
|
import org.springblade.core.redis.cache.BladeRedis; |
|
|
|
|
import org.springblade.core.secure.BladeUser; |
|
|
|
|
import org.springblade.core.secure.utils.AuthUtil; |
|
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
@ -144,6 +146,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
private final IWarehouseUpdownTypeClient warehouseUpdownTypeClient; |
|
|
|
|
private final IBasicPrintTemplateClient basicPrintTemplateClient; |
|
|
|
|
private final IWarehouseTrayTypeClient warehouseTrayTypeClient; |
|
|
|
|
private final IDistributionLoadscanAbnormalService distributionLoadscanAbnormalService; |
|
|
|
|
// private final BladeRedis redis;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public IPage<DistributionDeliveryListEntity> selectDistributionDeliveryListPage(IPage<DistributionDeliveryListEntity> page, DistributionDeliveryListDTO distributionDeliveryList) { |
|
|
|
@ -431,7 +436,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
.eq(DistributionLoadscanEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) |
|
|
|
|
.eq(DistributionLoadscanEntity::getOrderPackageCode, distrilbutionloadingscanDTO.getBarcode()) |
|
|
|
|
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); |
|
|
|
|
|
|
|
|
|
if (Func.isNotEmpty(distributionLoadscanEntitiesflag) && distributionLoadscanEntitiesflag.size() == 1) { |
|
|
|
|
return Resp.scanSuccess("重复扫码", "重复扫码"); |
|
|
|
|
} |
|
|
|
@ -460,15 +464,20 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
loadscanEntity.setPackageId(parcelListEntity.getId()); |
|
|
|
|
loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); |
|
|
|
|
loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); |
|
|
|
|
loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); |
|
|
|
|
DistributionReservationEntity reservationEntity = distributionDeliveryListMapper.selectReservationByPackageAndDeliveryId(parcelListEntity.getOrderPackageCode(), distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
|
|
|
|
|
loadscanEntity.setReservationId(reservationEntity.getId()); |
|
|
|
|
|
|
|
|
|
loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); |
|
|
|
|
loadscanEntity.setScanTime(new Date()); |
|
|
|
|
BladeUser user = AuthUtil.getUser(); |
|
|
|
|
loadscanEntity.setScanUser(user.getUserName()); |
|
|
|
|
loadscanEntity.setLoadingId(distrilbutionloadingscanDTO.getLoadingId()); |
|
|
|
|
loadscanEntity.setIsAbnormalLoading("1"); |
|
|
|
|
//出库
|
|
|
|
|
warehouseUpdownTypeClient.downPackage(distrilbutionloadingscanDTO.getBarcode()); |
|
|
|
|
|
|
|
|
|
distributionLoadscanService.save(loadscanEntity); |
|
|
|
|
//查询本车次是否第一次扫码,没有则更新上车时间
|
|
|
|
|
Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
@ -476,6 +485,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); |
|
|
|
|
|
|
|
|
|
//这里还需要一个维护状态的方法
|
|
|
|
|
//异步维护状态
|
|
|
|
|
distributionAsyncService.checkLoadingByPackage(parcelListEntity, distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
|
|
|
|
|
} else if (parcelListEntityList.size() == 0) { |
|
|
|
|
//查找出该包件信息
|
|
|
|
@ -521,8 +532,15 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
if (voGoodsLsit.size() == trayGoodIds.size()) { |
|
|
|
|
List<DistributionParcelListEntity> parcelListEntities = distributionParcelListService.listByIds(trayGoodIds); |
|
|
|
|
boolean trayLoadingStatus = parcelListEntities.stream().allMatch(p -> p.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.yizhuangche.getValue())); |
|
|
|
|
if (trayLoadingStatus){ |
|
|
|
|
return Resp.scanFail("托盘装车完毕","托盘装车完毕"); |
|
|
|
|
// if (trayLoadingStatus){
|
|
|
|
|
// return Resp.scanFail("托盘装车完毕","托盘货物已装车完毕");
|
|
|
|
|
// }
|
|
|
|
|
List<DistributionLoadscanEntity> loadscanEntityList = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda() |
|
|
|
|
.eq(DistributionLoadscanEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) |
|
|
|
|
.ne(DistributionLoadscanEntity::getScanStatus, 1) |
|
|
|
|
.eq(DistributionLoadscanEntity::getTrayNo, distrilbutionloadingscanDTO.getBarcode())); |
|
|
|
|
if (Func.isNotEmpty(loadscanEntityList) && loadscanEntityList.size() > 0 && trayLoadingStatus) { |
|
|
|
|
return Resp.scanFail("重复扫描", "重复扫描"); |
|
|
|
|
} |
|
|
|
|
if (Func.isEmpty(parcelListEntities) || parcelListEntities.size() <= 0) { |
|
|
|
|
return Resp.scanFail("操作失败", "该托盘上无货物信息"); |
|
|
|
@ -572,11 +590,11 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
loadscanEntity.setMsg("司机按照预约整托装车"); |
|
|
|
|
loadscanEntity.setTrayNo(trayTypeDataVO.getTrayCode()); |
|
|
|
|
reservationLoadscanEntities.add(loadscanEntity); |
|
|
|
|
|
|
|
|
|
Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
//更新签收表的装车数量
|
|
|
|
|
Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); |
|
|
|
|
} |
|
|
|
|
//TODO 需要一个维护状态的异步方法
|
|
|
|
|
} |
|
|
|
|
distributionLoadscanService.saveBatch(reservationLoadscanEntities); |
|
|
|
|
//这里则进行整托装车的数据构建
|
|
|
|
@ -592,6 +610,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
List<DistributionLoadscanEntity> deliveryLoadscanEntities = new ArrayList<>(); |
|
|
|
|
for (DistributionParcelListEntity parcelListEntity : parcelListEntities) { |
|
|
|
|
if (parcelListEntity.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.weizhuancghe.getValue())) { |
|
|
|
|
//查询出这个包件属于哪个客户
|
|
|
|
|
DistributionReservationEntity reservationEntity = distributionDeliveryListMapper.selectReservationByPackageAndDeliveryId(parcelListEntity.getOrderPackageCode(), distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); |
|
|
|
|
parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yichuku.getValue()); |
|
|
|
|
distributionParcelListService.updateById(parcelListEntity); |
|
|
|
@ -613,10 +633,14 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
} |
|
|
|
|
loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); |
|
|
|
|
loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); |
|
|
|
|
//查询出这个包件属于哪个客户
|
|
|
|
|
|
|
|
|
|
loadscanEntity.setReservationId(distrilbutionloadingscanDTO.getReservationId()); |
|
|
|
|
loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
loadscanEntity.setTrainNumber(distributionDeliveryListEntity.getTrainNumber()); |
|
|
|
|
loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); |
|
|
|
|
loadscanEntity.setPackageId(parcelListEntity.getId()); |
|
|
|
|
loadscanEntity.setReservationId(reservationEntity.getId()); |
|
|
|
|
loadscanEntity.setScanTime(new Date()); |
|
|
|
|
BladeUser user = AuthUtil.getUser(); |
|
|
|
|
loadscanEntity.setScanUser(user.getUserName()); |
|
|
|
@ -633,7 +657,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
//更新签收表的装车数量
|
|
|
|
|
Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); |
|
|
|
|
} |
|
|
|
|
//TODO 需要一个维护状态的异步方法
|
|
|
|
|
} |
|
|
|
|
distributionLoadscanService.saveBatch(deliveryLoadscanEntities); |
|
|
|
|
//这里则进行整托装车的数据构建
|
|
|
|
@ -641,6 +664,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
return Resp.scanFail("整托装车失败", "存在其他客户货物"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
//进行装车状态维护
|
|
|
|
|
//TODO 需要一个维护状态的异步方法
|
|
|
|
|
distributionAsyncService.checkLoadingByDelivery(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
} else { |
|
|
|
|
log.error("托盘存放货物类型不单一:{}", trayTypeDataVO); |
|
|
|
|
} |
|
|
|
@ -3499,6 +3525,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 批量打印预约单 |
|
|
|
|
* |
|
|
|
|
* @param ids |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
@ -3547,9 +3574,158 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
public IPage<DistributionAppReservationVO> getAppDeliveryreservationTraysPage(IPage<DistributionAppReservationVO> page, DistributionAppDeliveryListDTO distributionDeliveryList) { |
|
|
|
|
// ---------------------------------2023-09-25 新增托盘详情---------------------------------------------------------------------------------------
|
|
|
|
|
List<DistributionAppReservationVO> customList = distributionDeliveryInfoMapper.selectAppTarysListPage(page, Long.parseLong(distributionDeliveryList.getReservationId())); |
|
|
|
|
customList.forEach(c -> { |
|
|
|
|
TrayTypeDataVO trayTypeDataVO = warehouseTrayTypeClient.selectListByTrayCode(c.getTrayCode()); |
|
|
|
|
List<DistributionParcelListEntity> parcelListEntities = distributionParcelListService.listByIds(trayTypeDataVO.getGoodsLsit()); |
|
|
|
|
c.setPackageList(DistributionParcelListWrapper.build().listVO(parcelListEntities)); |
|
|
|
|
}); |
|
|
|
|
return page.setRecords(customList); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public R abnormalLoading(DistrilbutionloadingscanDTO distrilbutionloadingscanDTO) { |
|
|
|
|
DistributionDeliveryListEntity deliveryListEntity = distributionDeliveryListMapper.selectById(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
if (Func.isEmpty(deliveryListEntity)) { |
|
|
|
|
log.error("配送计划null:{}", deliveryListEntity); |
|
|
|
|
return Resp.scanFail("操作失败", "服务器正忙..."); |
|
|
|
|
} |
|
|
|
|
List<DistributionParcelListEntity> parcelListEntities = distributionParcelListService.list(Wrappers.<DistributionParcelListEntity>query().lambda() |
|
|
|
|
.eq(DistributionParcelListEntity::getOrderPackageCode, distrilbutionloadingscanDTO.getBarcode())); |
|
|
|
|
if (Func.isNotEmpty(parcelListEntities) && parcelListEntities.size() == 1){ |
|
|
|
|
DistributionParcelListEntity parcelListEntity = parcelListEntities.get(0); |
|
|
|
|
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleService.getById(parcelListEntity.getStockArticleId()); |
|
|
|
|
if (Func.isEmpty(stockArticleEntity)){ |
|
|
|
|
log.error("###############订单异常:{}",stockArticleEntity); |
|
|
|
|
return Resp.scanFail("操作失败", "服务器正忙..."); |
|
|
|
|
} |
|
|
|
|
DistributionDeliverySelfEntity distributionDeliverySelfEntity = new DistributionDeliverySelfDTO(); |
|
|
|
|
if (StringUtils.isBlank(distrilbutionloadingscanDTO.getLoadingId())) { |
|
|
|
|
if (deliveryListEntity.getKind().equals("1")) { |
|
|
|
|
distributionDeliverySelfEntity = distributionDeliverySelfMapper.selectOne(new QueryWrapper<DistributionDeliverySelfEntity>().lambda() |
|
|
|
|
.eq(DistributionDeliverySelfEntity::getIsMaster, ServiceConstant.IS_MASTER_YES) |
|
|
|
|
.eq(DistributionDeliverySelfEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) |
|
|
|
|
); |
|
|
|
|
} else { |
|
|
|
|
DistributionDeliveryTripartiteEntity distributionDeliveryTripartiteEntity = distributionDeliveryTripartiteMapper.selectOne(new QueryWrapper<DistributionDeliveryTripartiteEntity>().lambda() |
|
|
|
|
.eq(DistributionDeliveryTripartiteEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()) |
|
|
|
|
); |
|
|
|
|
BeanUtils.copyProperties(distributionDeliveryTripartiteEntity, distributionDeliverySelfEntity); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if (deliveryListEntity.getKind().equals("1")) { |
|
|
|
|
distributionDeliverySelfEntity = distributionDeliverySelfMapper.selectById(distrilbutionloadingscanDTO.getLoadingId()); |
|
|
|
|
} else { |
|
|
|
|
DistributionDeliveryTripartiteEntity distributionDeliveryTripartiteEntity = distributionDeliveryTripartiteMapper.selectById(distrilbutionloadingscanDTO.getLoadingId()); |
|
|
|
|
BeanUtils.copyProperties(distributionDeliveryTripartiteEntity, distributionDeliverySelfEntity); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
List<DistributionLoadscanAbnormalEntity> loadscanAbnormalEntityList = distributionLoadscanAbnormalService.list(Wrappers.<DistributionLoadscanAbnormalEntity>query().lambda() |
|
|
|
|
.eq(DistributionLoadscanAbnormalEntity::getDeliveryListId, distrilbutionloadingscanDTO.getDeliveryId()) |
|
|
|
|
.eq(DistributionLoadscanAbnormalEntity::getPackageCode, distrilbutionloadingscanDTO.getBarcode()) |
|
|
|
|
.ne(DistributionLoadscanAbnormalEntity::getAuditingStatus, "1")); |
|
|
|
|
if (Func.isNotEmpty(loadscanAbnormalEntityList) && loadscanAbnormalEntityList.size() == 1){ |
|
|
|
|
return Resp.scanFail("操作失败", "重复添加"); |
|
|
|
|
} |
|
|
|
|
DistributionLoadscanAbnormalEntity distributionLoadscanAbnormalEntity = new DistributionLoadscanAbnormalEntity(); |
|
|
|
|
BladeUser user = AuthUtil.getUser(); |
|
|
|
|
DistributionLoadscanEntity loadscanEntity = new DistributionLoadscanEntity(); |
|
|
|
|
DistributionReservationEntity reservationEntity = null; |
|
|
|
|
switch (deliveryListEntity.getType()) { |
|
|
|
|
case "1": |
|
|
|
|
//商配 需要满足订单的收货单位和当前配送计划中的预约客户名称一样
|
|
|
|
|
List<DistributionReservationEntity> shangpeiReservationEntityList = distributionDeliveryListMapper.selectReservationByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
Map<String, DistributionReservationEntity> reservationEntityMap = shangpeiReservationEntityList.stream().filter(r -> Func.isNotEmpty(r.getConsignee())).collect(Collectors.toMap(DistributionReservationEntity::getReceivingUnit, Function.identity(), (k1, k2) -> k2)); |
|
|
|
|
if (Func.isEmpty(reservationEntityMap.get(stockArticleEntity.getConsigneeUnit()))){ |
|
|
|
|
return Resp.scanFail("操作失败", "配送任务无该客户"); |
|
|
|
|
} |
|
|
|
|
reservationEntity = reservationEntityMap.get(stockArticleEntity.getConsigneeUnit()); |
|
|
|
|
//查询是否已经异常装车了
|
|
|
|
|
//构建异常装车数据
|
|
|
|
|
|
|
|
|
|
//完成对该客户的异常装车数据和数量维护
|
|
|
|
|
break; |
|
|
|
|
case "2": |
|
|
|
|
List<DistributionReservationEntity> shipeiReservationEntityList = distributionDeliveryListMapper.selectReservationByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
Map<String, DistributionReservationEntity> shipeiReservationEntityMap = shipeiReservationEntityList.stream().collect(Collectors.toMap(DistributionReservationEntity::getConsignee, Function.identity(), (k1, k2) -> k2)); |
|
|
|
|
DistributionReservationEntity distributionReservationEntity = shipeiReservationEntityMap.get(stockArticleEntity.getCustomerName()); |
|
|
|
|
if (Func.isEmpty(distributionReservationEntity)){ |
|
|
|
|
return Resp.scanFail("操作失败","配送任务无该客户"); |
|
|
|
|
} |
|
|
|
|
if (distributionReservationEntity.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) |
|
|
|
|
|| stockArticleEntity.getCustomerTelephone().equals(distributionReservationEntity.getDeliveryPhone()) |
|
|
|
|
|| distributionReservationEntity.getMallName().equals(stockArticleEntity.getMallName())){ |
|
|
|
|
return Resp.scanFail("操作失败","配送任务无该客户"); |
|
|
|
|
} |
|
|
|
|
reservationEntity = distributionReservationEntity; |
|
|
|
|
//市配
|
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
distributionLoadscanAbnormalEntity.setAuditingStatus(LoadingAbnormalAuditingStatusConstant.daishenhe.getValue()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setTrainNumber(deliveryListEntity.getTrainNumber()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setDriverId(Long.parseLong(distributionDeliverySelfEntity.getDriverId())); |
|
|
|
|
distributionLoadscanAbnormalEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setDeliveryListId(deliveryListEntity.getId()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setReservationId(reservationEntity.getId()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setDeliveryType(deliveryListEntity.getType()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setScanUser(user.getUserName()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setScanTime(new Date()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setLoadingQuantity(parcelListEntity.getQuantity()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setPackageCode(parcelListEntity.getOrderPackageCode()); |
|
|
|
|
distributionLoadscanAbnormalEntity.setPackageId(parcelListEntity.getId()); |
|
|
|
|
distributionLoadscanAbnormalService.save(distributionLoadscanAbnormalEntity); |
|
|
|
|
//修改包件状态 维护订单状态
|
|
|
|
|
parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.yizhuangche.getValue()); |
|
|
|
|
parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yichuku.getValue()); |
|
|
|
|
distributionParcelListService.updateById(parcelListEntity); |
|
|
|
|
//添加包件数据至扫描表中
|
|
|
|
|
if (Func.isNotEmpty(distributionDeliverySelfEntity.getDeliveryId())) { |
|
|
|
|
loadscanEntity.setDriverId(distributionDeliverySelfEntity.getDriverId()); |
|
|
|
|
} |
|
|
|
|
if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverName())) { |
|
|
|
|
loadscanEntity.setDriverName(distributionDeliverySelfEntity.getDriverName()); |
|
|
|
|
} |
|
|
|
|
if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleNub())) { |
|
|
|
|
loadscanEntity.setVehicleName(distributionDeliverySelfEntity.getVehicleNub()); |
|
|
|
|
} |
|
|
|
|
if (Func.isNotEmpty(distributionDeliverySelfEntity.getVehicleId())) { |
|
|
|
|
loadscanEntity.setVehicleId(distributionDeliverySelfEntity.getVehicleId()); |
|
|
|
|
} |
|
|
|
|
if (Func.isNotEmpty(distributionDeliverySelfEntity.getDriverPhone())) { |
|
|
|
|
loadscanEntity.setDriverPhone(distributionDeliverySelfEntity.getDriverPhone()); |
|
|
|
|
} |
|
|
|
|
loadscanEntity.setTrainNumber(deliveryListEntity.getTrainNumber()); |
|
|
|
|
loadscanEntity.setScanStatus(LoadingStatusConstant.saomiao.getValue()); |
|
|
|
|
loadscanEntity.setScanType("1"); |
|
|
|
|
loadscanEntity.setOneClick(1); |
|
|
|
|
loadscanEntity.setPackageId(parcelListEntity.getId()); |
|
|
|
|
loadscanEntity.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); |
|
|
|
|
loadscanEntity.setPackageNub(parcelListEntity.getQuantity()); |
|
|
|
|
// DistributionReservationEntity reservationEntity = distributionDeliveryListMapper.selectReservationByPackageAndDeliveryId(parcelListEntity.getOrderPackageCode(), distrilbutionloadingscanDTO.getDeliveryId());
|
|
|
|
|
loadscanEntity.setReservationId(reservationEntity.getId()); |
|
|
|
|
loadscanEntity.setDeliveryId(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
loadscanEntity.setOrderId(parcelListEntity.getStockArticleId()); |
|
|
|
|
loadscanEntity.setScanTime(new Date()); |
|
|
|
|
loadscanEntity.setScanUser(user.getUserName()); |
|
|
|
|
loadscanEntity.setLoadingId(distrilbutionloadingscanDTO.getLoadingId()); |
|
|
|
|
loadscanEntity.setIsAbnormalLoading("1"); |
|
|
|
|
//出库
|
|
|
|
|
warehouseUpdownTypeClient.downPackage(distrilbutionloadingscanDTO.getBarcode()); |
|
|
|
|
//查询本车次是否第一次扫码,没有则更新上车时间
|
|
|
|
|
Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); |
|
|
|
|
//更新签收表的装车数量
|
|
|
|
|
Integer j = distributionSignforMapper.updateloadByReservationId(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), loadscanEntity.getPackageNub()); |
|
|
|
|
//异步维护此异常装车包件的订单状态
|
|
|
|
|
distributionAsyncService.checkOrderLoadingStatus(parcelListEntity); |
|
|
|
|
}else { |
|
|
|
|
log.error("#################出现相同的包件信息:{}",parcelListEntities); |
|
|
|
|
return Resp.scanFail("操作失败", "服务器正忙..."); |
|
|
|
|
} |
|
|
|
|
return Resp.scanSuccess("操作成功","操作成功"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public Map<String, String> getDriverCar(String kind, Long deliveryListEntityId) { |
|
|
|
|
Map<String, String> map = new HashMap<>(); |
|
|
|
|
String dirverName = null; |
|
|
|
@ -3797,6 +3973,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 构建预约数据 |
|
|
|
|
* |
|
|
|
|
* @param map |
|
|
|
|
* @param distributionReservationEntity |
|
|
|
|
*/ |
|
|
|
|