Browse Source

回库广播

pre-production
汤建军 2 months ago
parent
commit
760a35e5dd
  1. 35
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionScanServiceImpl.java

35
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionScanServiceImpl.java

@ -44,7 +44,9 @@ import org.springblade.common.constant.common.IsOrNoConstant;
import org.springblade.common.constant.loading.LoadingAbnormalAuditingStatusConstant;
import org.springblade.common.constant.loading.LoadingAbnormalTypeConstant;
import org.springblade.common.enums.BizOperationEnums;
import org.springblade.common.enums.PackageTypeEnums;
import org.springblade.common.model.NodeFanoutMsg;
import org.springblade.common.model.PackageData;
import org.springblade.common.model.ReservationVO;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.redis.cache.BladeRedis;
@ -57,10 +59,7 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -175,12 +174,12 @@ public class WarehouseRetentionScanServiceImpl extends BaseServiceImpl<Warehouse
this.save(warehouseRetentionScan);
redis.setEx(AuthUtil.getTenantId() + ":warehouse:" + warehouseRetentionScan.getWarehouseId() + ":orderPackageCode:" + warehouseRetentionScan.getOrderPackageCode()+ ":retentionSave:",warehouseRetentionScan.getTaskCode(),60L*3L);
distributionSignforClient.updateIsHaveAbnormalPackage(warehouseRetentionScan.getReservationId());
NodeFanoutMsg<ReservationVO> nodeFanoutMsg = buildNodeFanoutMsgByRestention(warehouseRetentionScan.getReservationId(),distributionLoadscanAbnormalEntity.getWarehouseId());
NodeFanoutMsg<ReservationVO> nodeFanoutMsg = buildNodeFanoutMsgByRestention(warehouseRetentionScan.getReservationId(),warehouseRetentionScan);
reservationClient.planRetention(nodeFanoutMsg,AuthUtil.getUser());
return R.success("操作成功");
}
private NodeFanoutMsg<ReservationVO> buildNodeFanoutMsgByRestention(Long reservationId,Long warehouseId) {
private NodeFanoutMsg<ReservationVO> buildNodeFanoutMsgByRestention(Long reservationId,WarehouseRetentionScanEntity warehouseRetentionScan) {
NodeFanoutMsg<ReservationVO> nodeFanoutMsg = new NodeFanoutMsg<>();
nodeFanoutMsg.setNode(WorkNodeEnums.DISTRIBUTION_RETENTION);
@ -188,15 +187,15 @@ public class WarehouseRetentionScanServiceImpl extends BaseServiceImpl<Warehouse
nodeFanoutMsg.setOperator(AuthUtil.getNickName());
nodeFanoutMsg.setOperatorTime(new Date());
nodeFanoutMsg.setTenantId(AuthUtil.getTenantId());
ReservationVO reservationVO = getReservationVO(reservationId);
ReservationVO reservationVO = getReservationVO(reservationId,warehouseRetentionScan);
nodeFanoutMsg.setWarehouse(reservationVO.getWarehouseName());
nodeFanoutMsg.setWarehouseId(warehouseId);
nodeFanoutMsg.setWarehouseId(warehouseRetentionScan.getWarehouseId());
nodeFanoutMsg.setMain(reservationVO);
return nodeFanoutMsg;
}
private ReservationVO getReservationVO(Long reservationId) {
private ReservationVO getReservationVO(Long reservationId,WarehouseRetentionScanEntity warehouseRetentionScan) {
List<DistributionReservationEntity> reservationList = reservationClient.getReservationList(reservationId + "");
DistributionReservationEntity reservationEntity = reservationList.get(0);
ReservationVO reservationVO = new ReservationVO();
@ -213,6 +212,24 @@ public class WarehouseRetentionScanServiceImpl extends BaseServiceImpl<Warehouse
reservationVO.setReceivingUnit(reservationEntity.getReceivingUnit());
reservationVO.setId(reservationEntity.getId());
reservationVO.setReservationStockListNum(reservationEntity.getReservationStockListNum());
PackageData packageData = new PackageData();
switch (warehouseRetentionScan.getConditions()){
case 1:
packageData.setPackageType(PackageTypeEnums.CMP);
packageData.setOrderCode(warehouseRetentionScan.getOrderCode());
packageData.setPackageCode(warehouseRetentionScan.getOrderPackageCode());
packageData.setWaybillNumber(warehouseRetentionScan.getWaybillNumber());
break;
case 2:
packageData.setPackageType(PackageTypeEnums.LTL);
packageData.setPackageCode(warehouseRetentionScan.getOrderPackageCode());
break;
case 3:
packageData.setPackageType(PackageTypeEnums.INV);
packageData.setPackageCode(warehouseRetentionScan.getOrderPackageCode());
break;
}
reservationVO.setPackageDataList(Arrays.asList(packageData));
return reservationVO;
}

Loading…
Cancel
Save