Browse Source

Merge remote-tracking branch 'origin/pre-production'

master
zhenghaoyu 8 months ago
parent
commit
754fa7c3c2
  1. 13
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/ZeroNumVO.java
  2. 5
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionSignforAppController.java
  3. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java
  4. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java
  5. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml
  6. 5
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/BillLadingScanDataQueueHandler.java
  7. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java
  8. 18
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  9. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java
  10. 44
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java
  11. 12
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java
  12. 7
      blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/DistributionDatarepair.java
  13. 12
      blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java
  14. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java
  15. 10
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml
  16. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java
  17. 1
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineWaybillOrderService.java
  18. 6
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadScanServiceImpl.java
  19. 294
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
  20. 9
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillOrderServiceImpl.java
  21. 22
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/TaskQuestController.java
  22. 6
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/excel/QuestContrastPackageExcelVO.java
  23. 7
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/TaskQuestServiceImpl.java

13
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/ZeroNumVO.java

@ -0,0 +1,13 @@
package com.logpm.trunkline.vo;
import lombok.Data;
import java.io.Serializable;
@Data
public class ZeroNumVO implements Serializable {
private String waybillNo;
private Integer num;
}

5
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionSignforAppController.java

@ -161,7 +161,10 @@ public class DistributionSignforAppController {
orderPackageCodes = orderPackageCodes + "," + packageCode; orderPackageCodes = orderPackageCodes + "," + packageCode;
} }
} }
updownTypeClient.downPackageOrDelTray(orderPackageCodes, myCurrentWarehouse.getId(), "签收下架解托"); if(StringUtils.isNotBlank(orderPackageCodes)){
updownTypeClient.downPackageOrDelTray(orderPackageCodes, myCurrentWarehouse.getId(), "签收下架解托");
}
} }
return r; return r;

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java

@ -487,7 +487,9 @@ public class DistributionDeliveryListController extends BladeController {
orderPackageCodes = orderPackageCodes + "," + packageCode; orderPackageCodes = orderPackageCodes + "," + packageCode;
} }
} }
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCodes,myCurrentWarehouse.getId(),"签收下架解托"); if(StringUtils.isNotBlank(orderPackageCodes)){
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCodes,myCurrentWarehouse.getId(),"签收下架解托");
}
} }
return r; return r;

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java

@ -324,7 +324,9 @@ public class DistributionSignforController extends BladeController {
orderPackageCodes = orderPackageCodes + "," +packageCode; orderPackageCodes = orderPackageCodes + "," +packageCode;
} }
} }
updownTypeClient.downPackageOrDelTray(orderPackageCodes,myCurrentWarehouse.getId(),"文员一键签收下架解托"); if(StringUtils.isNotBlank(orderPackageCodes)){
updownTypeClient.downPackageOrDelTray(orderPackageCodes,myCurrentWarehouse.getId(),"文员一键签收下架解托");
}
}catch (Exception e){ }catch (Exception e){
log.error("##############oneclick: 更新包件下架状态失败 packageCodes={}",packageCodes); log.error("##############oneclick: 更新包件下架状态失败 packageCodes={}",packageCodes);
} }

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml

@ -897,7 +897,7 @@
FROM logpm_distribution_stock_article AS ldsa FROM logpm_distribution_stock_article AS ldsa
LEFT JOIN logpm_distribution_parcel_list AS ldpl ON ldsa.id = ldpl.stock_article_id LEFT JOIN logpm_distribution_parcel_list AS ldpl ON ldsa.id = ldpl.stock_article_id
LEFT JOIN logpm_distribution_parcel_number AS ldpn ON ldpn.parcel_list_id = ldpl.id LEFT JOIN logpm_distribution_parcel_number AS ldpn ON ldpn.parcel_list_id = ldpl.id
WHERE ldsa.id = #{stockArticleId} WHERE ldsa.id = #{stockArticleId} AND ldpl.is_transfer = 0
</select> </select>
<select id="exportDistributionStockArticle" <select id="exportDistributionStockArticle"
resultType="com.logpm.distribution.entity.DistributionStockArticleEntity"> resultType="com.logpm.distribution.entity.DistributionStockArticleEntity">
@ -1197,10 +1197,10 @@
WHERE WHERE
ldpl.order_package_reservation_status = 10 ldpl.order_package_reservation_status = 10
and ldpl.conditions != 2 and ldpl.conditions != 2
and ldpl.is_transfer = 0
and ldpl.order_package_freeze_status = 10 and ldpl.order_package_freeze_status = 10
AND ldpl.order_package_loading_status = 10 AND order_package_status IN (10,20) AND ldpl.order_package_loading_status = 10 AND order_package_status IN (10,20)
and ldpl.stock_article_id = #{param.id} and ldpl.warehouse_id = #{warehouseId} and ldpl.stock_article_id = #{param.id} and ldpl.warehouse_id = #{warehouseId}
and ldpl.conditions !=2
<if test="param.waybillNumber != null and param.waybillNumber != ''"> <if test="param.waybillNumber != null and param.waybillNumber != ''">
and ldpl.waybill_number like concat('%',#{param.waybillNumber},'%') and ldpl.waybill_number like concat('%',#{param.waybillNumber},'%')
</if> </if>

5
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/BillLadingScanDataQueueHandler.java

@ -1,6 +1,7 @@
package com.logpm.distribution.receiver; package com.logpm.distribution.receiver;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient; import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient;
import com.rabbitmq.client.Channel; import com.rabbitmq.client.Channel;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
@ -32,7 +33,9 @@ public class BillLadingScanDataQueueHandler {
String coding = Objects.toString(o); String coding = Objects.toString(o);
Long warehouseId = (Long) warehouseIdObj; Long warehouseId = (Long) warehouseIdObj;
warehouseUpdownTypeClient.downPackageOrDelTray(coding, warehouseId, "签收下架解托"); if(StringUtils.isNotBlank(coding)){
warehouseUpdownTypeClient.downPackageOrDelTray(coding, warehouseId, "签收下架解托");
}
}else{ }else{
log.warn("自提订单扫描数据接收失败"); log.warn("自提订单扫描数据接收失败");

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java

@ -1388,7 +1388,9 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService {
} }
String collect = updatePackageList.stream().map(DistributionParcelListEntity::getOrderPackageCode).collect(Collectors.joining(",")); String collect = updatePackageList.stream().map(DistributionParcelListEntity::getOrderPackageCode).collect(Collectors.joining(","));
warehouseUpdownTypeClient.downPackageOrDelTray(collect, warehouseId, "装车下架解托"); if(StringUtils.isNotBlank(collect)){
warehouseUpdownTypeClient.downPackageOrDelTray(collect, warehouseId, "装车下架解托");
}
// 进行批量下架 // 进行批量下架
} }

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

@ -779,7 +779,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
info.put("orderPackageCode", parcelListEntity.getOrderPackageCode()); info.put("orderPackageCode", parcelListEntity.getOrderPackageCode());
info.put("warehouseId", myCurrentWarehouse.getId()); info.put("warehouseId", myCurrentWarehouse.getId());
warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "扫描装车进行下架、解托"); if(StringUtils.isNotBlank(parcelListEntity.getOrderPackageCode())){
warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "扫描装车进行下架、解托");
}
Map<String, Object> map = new HashMap(); Map<String, Object> map = new HashMap();
String distrilbutionloadingscanDTOJson = JSONObject.toJSONString(distrilbutionloadingscanDTO); String distrilbutionloadingscanDTOJson = JSONObject.toJSONString(distrilbutionloadingscanDTO);
@ -2919,6 +2921,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
.eq(DistributionParcelListEntity::getStockArticleId, s.getId()) .eq(DistributionParcelListEntity::getStockArticleId, s.getId())
.ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue()) .ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue())
.ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue()) .ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue())
.eq(DistributionParcelListEntity::getIsTransfer, 0)
.notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()}) .notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()})
); );
if (Func.isEmpty(distributionParcelListEntities)) { if (Func.isEmpty(distributionParcelListEntities)) {
@ -3184,7 +3187,12 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
//添加该订单下可操作包件至计划中 //添加该订单下可操作包件至计划中
//没有进行包件选择 默认添加可配送的所有包件 //没有进行包件选择 默认添加可配送的所有包件
//添加订单下的所有在库订单的包件 //添加订单下的所有在库订单的包件
List<DistributionParcelListEntity> distributionParcelListEntities = distributionParcelListService.list(Wrappers.<DistributionParcelListEntity>query().lambda().eq(DistributionParcelListEntity::getStockArticleId, s.getId()).ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue()).ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue()).notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()})); List<DistributionParcelListEntity> distributionParcelListEntities = distributionParcelListService.list(Wrappers.<DistributionParcelListEntity>query().lambda()
.eq(DistributionParcelListEntity::getStockArticleId, s.getId())
.eq(DistributionParcelListEntity::getIsTransfer, 0)
.ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue())
.ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue())
.notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()}));
if (Func.isEmpty(distributionParcelListEntities)) { if (Func.isEmpty(distributionParcelListEntities)) {
log.error("##############添加空订单"); log.error("##############添加空订单");
throw new RuntimeException(s.getOrderCode() + "无可用包件!!!"); throw new RuntimeException(s.getOrderCode() + "无可用包件!!!");
@ -7908,7 +7916,11 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
//更新签收人 //更新签收人
Integer m = distributionSignforMapper.updateSignUser(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), user); Integer m = distributionSignforMapper.updateSignUser(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), user);
//包件解托下架 //包件解托下架
warehouseUpdownTypeClient.downPackageOrDelTray(packageObj.getOrderPackageCode(), warehouseId, "签收下架解托");
if(StringUtils.isNotBlank(packageObj.getOrderPackageCode())){
warehouseUpdownTypeClient.downPackageOrDelTray(packageObj.getOrderPackageCode(), warehouseId, "签收下架解托");
}
content = "包件在" + entityWarehouseId.getName() + "由" + distributionLoadscanEntity.getSigningUser() + "扫描签收,签收方式:司机未进行装车,由商家端进行签收,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + reservationEntity.getReservationCode(); content = "包件在" + entityWarehouseId.getName() + "由" + distributionLoadscanEntity.getSigningUser() + "扫描签收,签收方式:司机未进行装车,由商家端进行签收,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + reservationEntity.getReservationCode();
} }
} }

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java

@ -1489,6 +1489,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
.ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue()) .ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue())
.ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue()) .ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue())
.eq(DistributionParcelListEntity::getConditions, 1) .eq(DistributionParcelListEntity::getConditions, 1)
.eq(DistributionParcelListEntity::getIsTransfer, 0)
.notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()})); .notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()}));
distributionParcelListEntities.forEach(dp -> { distributionParcelListEntities.forEach(dp -> {
if (!dp.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())) { if (!dp.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())) {
@ -2173,6 +2174,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
.ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue()) .ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue())
.ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue()) .ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue())
.ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue()) .ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue())
.eq(DistributionParcelListEntity::getIsTransfer, 0)
.ne(DistributionParcelListEntity::getOrderPackageStatus, OrderPackageStatusConstant.yiqianshou.getValue())); .ne(DistributionParcelListEntity::getOrderPackageStatus, OrderPackageStatusConstant.yiqianshou.getValue()));
if (Func.isEmpty(distributionParcelListEntities)) { if (Func.isEmpty(distributionParcelListEntities)) {
log.error("#########################此订单下包件列表查询为空:{}", s.getOrderCode()); log.error("#########################此订单下包件列表查询为空:{}", s.getOrderCode());
@ -2947,6 +2949,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
.ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue()) .ne(DistributionParcelListEntity::getOrderPackageLoadingStatus, OrderPackageLoadingStatusConstant.yizhuangche.getValue())
.ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue()) .ne(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.yiyueyue.getValue())
.eq(DistributionParcelListEntity::getConditions, 1) .eq(DistributionParcelListEntity::getConditions, 1)
.eq(DistributionParcelListEntity::getIsTransfer, 0)
.notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()})); .notIn(DistributionParcelListEntity::getOrderPackageStatus, new String[]{OrderPackageStatusConstant.yichuku.getValue(), OrderPackageStatusConstant.yiqianshou.getValue()}));
if (Func.isEmpty(distributionParcelListEntities)) { if (Func.isEmpty(distributionParcelListEntities)) {
log.error("#########################无可用包件,订单ID为‘;:{}", s.getId()); log.error("#########################无可用包件,订单ID为‘;:{}", s.getId());
@ -2981,6 +2984,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
}); });
} else { } else {
//维护选中的包件信息 //维护选中的包件信息
List<Long> packageIds = packageList.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()); List<Long> packageIds = packageList.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList());
packageLockIds.addAll(packageIds); packageLockIds.addAll(packageIds);

44
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java

@ -2633,7 +2633,9 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
//更新签收人 //更新签收人
Integer m = distributionSignforMapper.updateSignUser(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), AuthUtil.getUser()); Integer m = distributionSignforMapper.updateSignUser(loadscanEntity.getDeliveryId(), loadscanEntity.getReservationId(), AuthUtil.getUser());
//下架解托 //下架解托
warehouseUpdownTypeClient.downPackageOrDelTray(loadscanEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托"); if(StringUtils.isNotBlank(loadscanEntity.getOrderPackageCode())){
warehouseUpdownTypeClient.downPackageOrDelTray(loadscanEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托");
}
//维护订单状态 //维护订单状态
String content = "包件在" + myCurrentWarehouse.getName() + "由" + loadscanEntity.getSigningUser() + "扫描签收,装车方式:扫描装车,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + distributionReservationEntity.getReservationCode(); String content = "包件在" + myCurrentWarehouse.getName() + "由" + loadscanEntity.getSigningUser() + "扫描签收,装车方式:扫描装车,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + distributionReservationEntity.getReservationCode();
JSONObject trunklinePackageTrackLog = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), parcelListEntity.getOrderPackageCode(), content, WorkNodeEnums.DISTRIBUTION_SIGN_FOR.getCode(), deliveryListEntity.getId().toString(), parcelListEntity.getWarehouseEntryTimeEnd()); JSONObject trunklinePackageTrackLog = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), parcelListEntity.getOrderPackageCode(), content, WorkNodeEnums.DISTRIBUTION_SIGN_FOR.getCode(), deliveryListEntity.getId().toString(), parcelListEntity.getWarehouseEntryTimeEnd());
@ -2711,8 +2713,14 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
Integer j = distributionSignforMapper.updateSignforByReservationId(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), distributionLoadscanEntity.getPackageNub()); Integer j = distributionSignforMapper.updateSignforByReservationId(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), distributionLoadscanEntity.getPackageNub());
//更新签收人 //更新签收人
Integer m = distributionSignforMapper.updateSignUser(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), AuthUtil.getUser()); Integer m = distributionSignforMapper.updateSignUser(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), AuthUtil.getUser());
//包件解托下架
warehouseUpdownTypeClient.downPackageOrDelTray(collect.get(0).getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托"); if(StringUtils.isNotBlank(collect.get(0).getOrderPackageCode())){
//包件解托下架
warehouseUpdownTypeClient.downPackageOrDelTray(collect.get(0).getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托");
}
packageLockIds.add(distributionLoadscanEntity.getPackageId()); packageLockIds.add(distributionLoadscanEntity.getPackageId());
String content = "包件在" + myCurrentWarehouse.getName() + "由" + distributionLoadscanEntity.getSigningUser() + "扫描签收,装车方式:补录装车,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + distributionReservationEntity.getReservationCode(); String content = "包件在" + myCurrentWarehouse.getName() + "由" + distributionLoadscanEntity.getSigningUser() + "扫描签收,装车方式:补录装车,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + distributionReservationEntity.getReservationCode();
@ -2995,8 +3003,14 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
Integer j = distributionSignforMapper.updateSignforNum(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), distributionLoadscanEntity.getPackageNub()); Integer j = distributionSignforMapper.updateSignforNum(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), distributionLoadscanEntity.getPackageNub());
//更新签收人 //更新签收人
Integer m = distributionSignforMapper.updateSignUser(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), AuthUtil.getUser()); Integer m = distributionSignforMapper.updateSignUser(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), AuthUtil.getUser());
//下架解托
warehouseUpdownTypeClient.downPackageOrDelTray(distributionLoadscanEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托"); if(StringUtils.isNotBlank(distributionLoadscanEntity.getOrderPackageCode())){
//下架解托
warehouseUpdownTypeClient.downPackageOrDelTray(distributionLoadscanEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托");
}
content = "包件在" + myCurrentWarehouse.getName() + "由" + AuthUtil.getNickName() + "后台签收,装车方式:扫描装车,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + distributionReservationEntity.getReservationCode(); content = "包件在" + myCurrentWarehouse.getName() + "由" + AuthUtil.getNickName() + "后台签收,装车方式:扫描装车,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + distributionReservationEntity.getReservationCode();
try { try {
trunklinePackageTrackLog = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), distributionLoadscanEntity.getOrderPackageCode(), content, WorkNodeEnums.DISTRIBUTION_SIGN_FOR.getCode(), deliveryListEntity.getId().toString(), parcelListEntity.getWarehouseEntryTimeEnd()); trunklinePackageTrackLog = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), distributionLoadscanEntity.getOrderPackageCode(), content, WorkNodeEnums.DISTRIBUTION_SIGN_FOR.getCode(), deliveryListEntity.getId().toString(), parcelListEntity.getWarehouseEntryTimeEnd());
@ -3405,8 +3419,15 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
//进行签收数量的修改 //进行签收数量的修改
Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId()); Integer i = distributionDeliveryListMapper.updateloadingTimeById(distrilbutionloadingscanDTO.getDeliveryId());
//修改签收数量 //修改签收数量
//包件下架解托
warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托"); if(StringUtils.isNotBlank(parcelListEntity.getOrderPackageCode())){
//包件下架解托
warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托");
}
List<JSONObject> jsonObjects = new ArrayList<>(); List<JSONObject> jsonObjects = new ArrayList<>();
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
jsonObject.put("code", distributionLoadscanEntity.getOrderPackageCode()); jsonObject.put("code", distributionLoadscanEntity.getOrderPackageCode());
@ -3489,7 +3510,14 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
distributionLoadscanEntity.setIsAbnormalLoading(2); distributionLoadscanEntity.setIsAbnormalLoading(2);
distributionLoadscanEntity.setIsAbnormalSigning(2); distributionLoadscanEntity.setIsAbnormalSigning(2);
distributionLoadscanEntity.setAbnormalNote("异常签收"); distributionLoadscanEntity.setAbnormalNote("异常签收");
warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托");
if(StringUtils.isNotBlank(parcelListEntity.getOrderPackageCode())){
warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托");
}
if (Func.isEmpty(loadscanEntity)) { if (Func.isEmpty(loadscanEntity)) {
loadingId = distributionLoadscanEntity.getId(); loadingId = distributionLoadscanEntity.getId();
distributionLoadscanService.save(distributionLoadscanEntity); distributionLoadscanService.save(distributionLoadscanEntity);

12
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java

@ -1193,7 +1193,10 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
} }
if (Func.isNotEmpty(builder)){ if (Func.isNotEmpty(builder)){
String string = builder.deleteCharAt(builder.length() - 1).toString(); String string = builder.deleteCharAt(builder.length() - 1).toString();
warehouseUpdownTypeClient.downPackageOrDelTray(string, myCurrentWarehouse.getId(), "签收下架解托");
if(StringUtils.isNotBlank(string)){
warehouseUpdownTypeClient.downPackageOrDelTray(string, myCurrentWarehouse.getId(), "签收下架解托");
}
} }
if (!logList.isEmpty()) { if (!logList.isEmpty()) {
trunklinePackageTrackLogClient.addPackageTrackLog(logList); trunklinePackageTrackLogClient.addPackageTrackLog(logList);
@ -3427,7 +3430,12 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
distributionBillLadingScanService.save(distributionBillLadingScan); distributionBillLadingScanService.save(distributionBillLadingScan);
//进行下架解托 //进行下架解托
warehouseUpdownTypeClient.downPackageOrDelTray(distributionBillLadingScan.getPacketBarCode(),myCurrentWarehouse.getId(),"自提下架解托"); if(StringUtils.isNotBlank(distributionBillLadingScan.getPacketBarCode())){
warehouseUpdownTypeClient.downPackageOrDelTray(distributionBillLadingScan.getPacketBarCode(),myCurrentWarehouse.getId(),"自提下架解托");
}
String content = "包件在" + myCurrentWarehouse.getName() + "由" + AuthUtil.getNickName() + "扫描签收,自提任务号:" + billLadingEntity.getPickupBatch() ; String content = "包件在" + myCurrentWarehouse.getName() + "由" + AuthUtil.getNickName() + "扫描签收,自提任务号:" + billLadingEntity.getPickupBatch() ;
//日志记录 //日志记录
List<JSONObject> logList = new ArrayList<>(); List<JSONObject> logList = new ArrayList<>();

7
blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/DistributionDatarepair.java

@ -16,6 +16,7 @@ import com.xxl.job.core.handler.annotation.XxlJob;
import io.jsonwebtoken.lang.Objects; import io.jsonwebtoken.lang.Objects;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springblade.common.constant.RabbitConstant; import org.springblade.common.constant.RabbitConstant;
import org.springblade.common.utils.CommonUtil; import org.springblade.common.utils.CommonUtil;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
@ -111,8 +112,10 @@ public class DistributionDatarepair {
packageMap.forEach((k, v) -> { packageMap.forEach((k, v) -> {
String orderPackageCodes = v.stream().map(DistributionParcelListEntity::getOrderPackageCode).collect(Collectors.joining(",")); String orderPackageCodes = v.stream().map(DistributionParcelListEntity::getOrderPackageCode).collect(Collectors.joining(","));
stringBuffer.append("仓库:" + k).append("包件解托" + orderPackageCodes); stringBuffer.append("仓库:" + k).append("包件解托" + orderPackageCodes);
;
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCodes, k, "签收下架解托"); if(StringUtils.isNotBlank(orderPackageCodes)){
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCodes, k, "签收下架解托");
}
}); });
} }
log.info("执行包件下架操作>>>>>>>>>>>>>" + stringBuffer.toString()); log.info("执行包件下架操作>>>>>>>>>>>>>" + stringBuffer.toString());

12
blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java

@ -35,6 +35,7 @@ import com.logpm.warehouse.feign.IWarehouseWaybillClient;
import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient; import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springblade.common.constant.RabbitConstant; import org.springblade.common.constant.RabbitConstant;
import org.springblade.common.constant.TenantNum; import org.springblade.common.constant.TenantNum;
import org.springblade.common.constant.order.*; import org.springblade.common.constant.order.*;
@ -347,15 +348,20 @@ public class SyncOrderInfoServiceImpl implements ISyncOrderInfoService {
distributionParcelListClient.update(parcelListEntity); distributionParcelListClient.update(parcelListEntity);
distributionStockArticleClient.updateOrderInfo(orderCode,warehouseId); distributionStockArticleClient.updateOrderInfo(orderCode,warehouseId);
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCode,warehouseId,"系统出库下架解托"); if(StringUtils.isNotBlank(orderPackageCode)){
// warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "签收下架解托");
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCode,warehouseId,"系统出库下架解托");
}
} }
} }
@Override @Override
public void dealWithPackageUpdown(String orderPackageCode, Long allocationId,Long warehouseId) { public void dealWithPackageUpdown(String orderPackageCode, Long allocationId,Long warehouseId) {
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCode,warehouseId,"系统下架解托"); if(StringUtils.isNotBlank(orderPackageCode)){
warehouseUpdownTypeClient.downPackageOrDelTray(orderPackageCode,warehouseId,"系统下架解托");
warehouseUpdownTypeClient.upShelfPackage(orderPackageCode,allocationId,warehouseId,"系统上架");
}
warehouseUpdownTypeClient.upShelfPackage(orderPackageCode,allocationId,warehouseId,"系统上架");
} }

2
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java

@ -169,4 +169,6 @@ public interface TrunklineCarsLoadScanMapper extends BaseMapper<TrunklineCarsLoa
void updateFinalNodeIdByLoadIdAndWarehouseIdAndOrderCodeAndWaybillNo(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId, @Param("orderCode") String orderCode, @Param("waybillNo") String waybillNo, @Param("finalNodeId") Long finalNodeId, @Param("finalNodeName") String finalNodeName); void updateFinalNodeIdByLoadIdAndWarehouseIdAndOrderCodeAndWaybillNo(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId, @Param("orderCode") String orderCode, @Param("waybillNo") String waybillNo, @Param("finalNodeId") Long finalNodeId, @Param("finalNodeName") String finalNodeName);
List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId); List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId);
List<ZeroNumVO> findZeroStartNum(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId);
} }

10
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml

@ -903,4 +903,14 @@
and scan_status = '1' and scan_status = '1'
</update> </update>
<select id="findZeroStartNum" resultType="com.logpm.trunkline.vo.ZeroNumVO">
select waybill_no waybillNo,
sum(num) num
from logpm_trunkline_cars_load_scan
where load_id = #{loadId}
and warehouse_id = #{warehouseId}
group by waybill_no
</select>
</mapper> </mapper>

2
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java

@ -164,4 +164,6 @@ public interface ITrunklineCarsLoadScanService extends BaseService<TrunklineCars
void updateFinalNodeIdByLoadIdAndWarehouseIdAndOrderCodeAndWaybillNo(Long loadId, Long warehouseId, String orderCode, String waybillNo, Long finalNodeId,String finalNodeName); void updateFinalNodeIdByLoadIdAndWarehouseIdAndOrderCodeAndWaybillNo(Long loadId, Long warehouseId, String orderCode, String waybillNo, Long finalNodeId,String finalNodeName);
List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(Long loadId, Long warehouseId); List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(Long loadId, Long warehouseId);
List<ZeroNumVO> findZeroStartNum(Long loadId, Long warehouseId);
} }

1
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineWaybillOrderService.java

@ -25,4 +25,5 @@ public interface ITrunklineWaybillOrderService extends BaseService<TrunklineWayb
void deleteByWaybillNo(String waybillNo); void deleteByWaybillNo(String waybillNo);
TrunklineWaybillOrderEntity findEntityByWaybillNoAndOrderCode(String waybillNo, String orderCode);
} }

6
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadScanServiceImpl.java

@ -16,6 +16,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -398,4 +399,9 @@ public class TrunklineCarsLoadScanServiceImpl extends BaseServiceImpl<TrunklineC
return baseMapper.findAbnormalZeroScanList(loadId,warehouseId); return baseMapper.findAbnormalZeroScanList(loadId,warehouseId);
} }
@Override
public List<ZeroNumVO> findZeroStartNum(Long loadId, Long warehouseId) {
return baseMapper.findZeroStartNum(loadId,warehouseId);
}
} }

294
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java

@ -51,6 +51,7 @@ import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.StringUtils;
import org.springblade.common.annotations.RepeatSubmit; import org.springblade.common.annotations.RepeatSubmit;
import org.springblade.common.constant.*; import org.springblade.common.constant.*;
import org.springblade.common.constant.carsload.CarsLoadLogTypeConstant; import org.springblade.common.constant.carsload.CarsLoadLogTypeConstant;
@ -368,6 +369,51 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
try { try {
//查询零担发车件数
List<ZeroNumVO> zeroNumVOList = trunklineCarsLoadScanService.findZeroStartNum(loadId,warehouseId);
if(CollUtil.isNotEmpty(zeroNumVOList)){
zeroNumVOList.forEach(zeroNumVO -> {
String waybillNo = zeroNumVO.getWaybillNo();
Integer num = zeroNumVO.getNum();
WarehouseWaybillEntity waybill = warehouseWaybillClient.findByWaybillNo(waybillNo);
Integer totalCount = waybill.getTotalCount();
Integer waybillStatusInt = Integer.parseInt(waybill.getWaybillStatus());
TrunklineWaybillOrderEntity waybillOrderEntity = trunklineWaybillOrderService.findEntityByWaybillNoAndOrderCode(waybillNo,waybillNo);
if(!Objects.isNull(waybillOrderEntity)){
Integer handleNumber = waybillOrderEntity.getHandleNumber();
if(Objects.isNull(handleNumber)){
handleNumber = 0;
}
int i = handleNumber + num;
if(waybillStatusInt < 30){
if(totalCount == i){
waybill.setWaybillStatus("40");
waybillOrderEntity.setHandleNumber(i);
warehouseWaybillClient.updateEntity(waybill);
trunklineWaybillOrderService.updateById(waybillOrderEntity);
}else{
waybill.setWaybillStatus("30");
waybillOrderEntity.setHandleNumber(i);
warehouseWaybillClient.updateEntity(waybill);
trunklineWaybillOrderService.updateById(waybillOrderEntity);
}
}else if(waybillStatusInt == 30){
if(totalCount == i){
waybill.setWaybillStatus("40");
waybillOrderEntity.setHandleNumber(i);
warehouseWaybillClient.updateEntity(waybill);
trunklineWaybillOrderService.updateById(waybillOrderEntity);
}else{
waybillOrderEntity.setHandleNumber(i);
trunklineWaybillOrderService.updateById(waybillOrderEntity);
}
}
}
});
}
//更新关联订单数据的发车数量 //更新关联订单数据的发车数量
trunklineCarsOrderService.updateStartNumByLoadIdAndWarehouseId(loadId, warehouseId); trunklineCarsOrderService.updateStartNumByLoadIdAndWarehouseId(loadId, warehouseId);
//删除没有装车的计划数据 //删除没有装车的计划数据
@ -755,6 +801,41 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
try { try {
//查询零担发车件数
List<ZeroNumVO> zeroNumVOList = trunklineCarsLoadScanService.findZeroStartNum(loadId,warehouseId);
if(CollUtil.isNotEmpty(zeroNumVOList)){
zeroNumVOList.forEach(zeroNumVO -> {
String waybillNo = zeroNumVO.getWaybillNo();
Integer num = zeroNumVO.getNum();
WarehouseWaybillEntity waybill = warehouseWaybillClient.findByWaybillNo(waybillNo);
Integer totalCount = waybill.getTotalCount();
Integer waybillStatusInt = Integer.parseInt(waybill.getWaybillStatus());
TrunklineWaybillOrderEntity waybillOrderEntity = trunklineWaybillOrderService.findEntityByWaybillNoAndOrderCode(waybillNo,waybillNo);
if(!Objects.isNull(waybillOrderEntity)){
Integer handleNumber = waybillOrderEntity.getHandleNumber();
if(waybillStatusInt == 40 || waybillStatusInt == 30){
if(Objects.isNull(handleNumber)){
handleNumber = 0;
}
int i = handleNumber - num;
if(i==0){
waybill.setWaybillStatus("20");
waybillOrderEntity.setHandleNumber(totalCount);
}else{
waybill.setWaybillStatus("30");
waybillOrderEntity.setHandleNumber(i);
}
warehouseWaybillClient.updateEntity(waybill);
trunklineWaybillOrderService.updateById(waybillOrderEntity);
}
}
});
}
//更新关联订单数据的发车数量 //更新关联订单数据的发车数量
trunklineCarsOrderService.updateStartNumToPlanNumByLoadIdAndWarehouseId(loadId, warehouseId); trunklineCarsOrderService.updateStartNumToPlanNumByLoadIdAndWarehouseId(loadId, warehouseId);
@ -1003,6 +1084,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
Long nowWarehouseId = carsLoadEntity.getNowWarehouseId();//当前节点id Long nowWarehouseId = carsLoadEntity.getNowWarehouseId();//当前节点id
String carsNo = carsLoadEntity.getCarsNo();
if (!warehouseId.equals(nowWarehouseId)) { if (!warehouseId.equals(nowWarehouseId)) {
log.warn("#############cancelArriveCarByLoadId: 配载未到达当前仓 loadId={} nowWarehouseId={}", loadId, nowWarehouseId); log.warn("#############cancelArriveCarByLoadId: 配载未到达当前仓 loadId={} nowWarehouseId={}", loadId, nowWarehouseId);
@ -1182,30 +1264,41 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
distributionParcelNumberClient.addBatch(ls); distributionParcelNumberClient.addBatch(ls);
if(isTransfer == 0){ // if(isTransfer == 0){
QueryWrapper<TrunklineWaybillOrderEntity> queryWrapper1 = new QueryWrapper<>(); // //查询零担发车件数
queryWrapper1.eq("waybill_no",stockArticleEntity.getWaybillNumber()) // List<ZeroNumVO> zeroNumVOList = trunklineCarsLoadScanService.findZeroStartNum(loadId,warehouseId);
.eq("order_code",stockArticleEntity.getWaybillNumber()); // if(CollUtil.isNotEmpty(zeroNumVOList)){
TrunklineWaybillOrderEntity one = trunklineWaybillOrderService.getOne(queryWrapper1); // zeroNumVOList.forEach(zeroNumVO -> {
if(!Objects.isNull(one)){ // String waybillNo = zeroNumVO.getWaybillNo();
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(stockArticleEntity.getWaybillNumber()); // Integer num = zeroNumVO.getNum();
Integer totalCount = waybillEntity.getTotalCount(); // WarehouseWaybillEntity waybill = warehouseWaybillClient.findByWaybillNo(waybillNo);
Integer waybillStatusInt = Integer.parseInt(waybillEntity.getWaybillStatus()); // Integer totalCount = waybill.getTotalCount();
if(waybillStatusInt <= 30){ // Integer waybillStatusInt = Integer.parseInt(waybill.getWaybillStatus());
Integer handleNumber = one.getHandleNumber(); // TrunklineWaybillOrderEntity waybillOrderEntity = trunklineWaybillOrderService.findEntityByWaybillNoAndOrderCode(waybillNo,waybillNo);
int total = handleNumber + unloadNum; // if(!Objects.isNull(waybillOrderEntity)){
if(total < totalCount){ // Integer handleNumber = waybillOrderEntity.getHandleNumber();
waybillEntity.setWaybillStatus("50"); // if(waybillStatusInt <= 40){
one.setHandleNumber(total); // if(Objects.isNull(handleNumber)){
}else{ // handleNumber = 0;
waybillEntity.setWaybillStatus("60"); // }
one.setHandleNumber(totalCount); // int i = handleNumber - num;
} // if(i==0){
warehouseWaybillClient.updateEntity(waybillEntity); // waybill.setWaybillStatus("20");
trunklineWaybillOrderService.updateById(one); // waybillOrderEntity.setHandleNumber(totalCount);
} // }else{
} // waybill.setWaybillStatus("30");
} // waybillOrderEntity.setHandleNumber(i);
// }
//
// warehouseWaybillClient.updateEntity(waybill);
// trunklineWaybillOrderService.updateById(waybillOrderEntity);
// }
//
// }
//
// });
// }
// }
} }
} else { } else {
Integer hQuantity = newStockArticleEntity.getHandQuantity() + unloadNum; Integer hQuantity = newStockArticleEntity.getHandQuantity() + unloadNum;
@ -1231,38 +1324,77 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
newStockArticleEntity.setIncomingNum(incomingNum); newStockArticleEntity.setIncomingNum(incomingNum);
distributionStockArticleClient.saveOrUpdate(newStockArticleEntity); distributionStockArticleClient.saveOrUpdate(newStockArticleEntity);
String waybillNumber = newStockArticleEntity.getWaybillNumber(); // String waybillNumber = newStockArticleEntity.getWaybillNumber();
WarehouseWaybillEntity warehouseWaybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNumber); // WarehouseWaybillEntity warehouseWaybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNumber);
Long destinationWarehouseId = warehouseWaybillEntity.getDestinationWarehouseId(); // Long destinationWarehouseId = warehouseWaybillEntity.getDestinationWarehouseId();
if(warehouseId.equals(destinationWarehouseId)){ // if(warehouseId.equals(destinationWarehouseId)){
QueryWrapper<TrunklineWaybillOrderEntity> queryWrapper1 = new QueryWrapper<>(); // QueryWrapper<TrunklineWaybillOrderEntity> queryWrapper1 = new QueryWrapper<>();
queryWrapper1.eq("waybill_no",stockArticleEntity.getWaybillNumber()) // queryWrapper1.eq("waybill_no",stockArticleEntity.getWaybillNumber())
.eq("order_code",stockArticleEntity.getWaybillNumber()); // .eq("order_code",stockArticleEntity.getWaybillNumber());
TrunklineWaybillOrderEntity one = trunklineWaybillOrderService.getOne(queryWrapper1); // TrunklineWaybillOrderEntity one = trunklineWaybillOrderService.getOne(queryWrapper1);
if(!Objects.isNull(one)){ // if(!Objects.isNull(one)){
Integer totalCount = warehouseWaybillEntity.getTotalCount(); // Integer totalCount = warehouseWaybillEntity.getTotalCount();
Integer waybillStatusInt = Integer.parseInt(warehouseWaybillEntity.getWaybillStatus()); // Integer waybillStatusInt = Integer.parseInt(warehouseWaybillEntity.getWaybillStatus());
if(waybillStatusInt <= 30){ // if(waybillStatusInt <= 30){
Integer handleNumber = one.getHandleNumber(); // Integer handleNumber = one.getHandleNumber();
int total = handleNumber + unloadNum; // int total = handleNumber + unloadNum;
if(total < totalCount){ // if(total < totalCount){
warehouseWaybillEntity.setWaybillStatus("50"); // warehouseWaybillEntity.setWaybillStatus("50");
one.setHandleNumber(total); // one.setHandleNumber(total);
}else{ // }else{
warehouseWaybillEntity.setWaybillStatus("60"); // warehouseWaybillEntity.setWaybillStatus("60");
one.setHandleNumber(totalCount); // one.setHandleNumber(totalCount);
} // }
warehouseWaybillClient.updateEntity(warehouseWaybillEntity); // warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
trunklineWaybillOrderService.updateById(one); // trunklineWaybillOrderService.updateById(one);
} // }
} // }
} // }
} }
} }
} }
} }
}); });
WarehouseWaybillEntity warehouseWaybillEntity = warehouseWaybillClient.findByWaybillNo(orderCode);
String waybillNo = warehouseWaybillEntity.getWaybillNo();
Long waybillId = warehouseWaybillEntity.getId();
int unloadNum = orderCodeList.stream().mapToInt(TrunklineCarsLoadScanEntity::getUnloadNum).sum();
Long destinationWarehouseId = warehouseWaybillEntity.getDestinationWarehouseId();
if(warehouseId.equals(destinationWarehouseId)){
QueryWrapper<TrunklineWaybillOrderEntity> queryWrapper1 = new QueryWrapper<>();
queryWrapper1.eq("waybill_no",orderCode)
.eq("order_code",orderCode);
TrunklineWaybillOrderEntity one = trunklineWaybillOrderService.getOne(queryWrapper1);
if(!Objects.isNull(one)){
Integer handleNumber = one.getHandleNumber();
Integer totalCount = warehouseWaybillEntity.getTotalCount();
Integer waybillStatusInt = Integer.parseInt(warehouseWaybillEntity.getWaybillStatus());
int total = handleNumber + unloadNum;
if(waybillStatusInt < 50){
if(total != totalCount){
warehouseWaybillEntity.setWaybillStatus("50");
one.setHandleNumber(total);
warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
trunklineWaybillOrderService.updateById(one);
}else{
warehouseWaybillEntity.setWaybillStatus("60");
one.setHandleNumber(total);
warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
trunklineWaybillOrderService.updateById(one);
}
}else if(waybillStatusInt == 50){
if(total == totalCount){
warehouseWaybillEntity.setWaybillStatus("60");
one.setHandleNumber(total);
warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
trunklineWaybillOrderService.updateById(one);
}
}
}
}
}); });
} }
@ -2649,7 +2781,10 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
remark = "有数据,不在当前仓,异常装车"; remark = "有数据,不在当前仓,异常装车";
audio = "包件未入库"; audio = "包件未入库";
updownTypeClient.downPackageOrDelTray(orderPackageCode, fromWarehouseId, "干线装车下架解托"); if(StringUtils.isNotBlank(orderPackageCode)){
updownTypeClient.downPackageOrDelTray(orderPackageCode, fromWarehouseId, "干线装车下架解托");
}
} }
} else { } else {
@ -2735,7 +2870,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
distributionParcelListClient.updateOrderPackageCodeById(packageId, "60"); distributionParcelListClient.updateOrderPackageCodeById(packageId, "60");
distributionStockArticleClient.submitHandleNumByOrderId(1, articleId); distributionStockArticleClient.submitHandleNumByOrderId(1, articleId);
if (StringUtil.isBlank(trayCode)) { if (StringUtil.isBlank(trayCode) && StringUtil.isBlank(orderPackageCode)) {
updownTypeClient.downPackageOrDelTray(orderPackageCode, warehouseId, "干线装车下架解托"); updownTypeClient.downPackageOrDelTray(orderPackageCode, warehouseId, "干线装车下架解托");
} }
} }
@ -6663,7 +6798,6 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
}); });
DistributionStockArticleEntity updateStockArticle = new DistributionStockArticleEntity(); DistributionStockArticleEntity updateStockArticle = new DistributionStockArticleEntity();
updateStockArticle.setId(distributionStockArticle.getId()); updateStockArticle.setId(distributionStockArticle.getId());
updateStockArticle.setHandQuantity(distributionStockArticle.getHandQuantity()+num); updateStockArticle.setHandQuantity(distributionStockArticle.getHandQuantity()+num);
@ -6687,6 +6821,34 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
updateStockArticle.setId(distributionStockArticle.getId()); updateStockArticle.setId(distributionStockArticle.getId());
updateStockArticle.setHandQuantity(distributionStockArticle.getHandQuantity()+num); updateStockArticle.setHandQuantity(distributionStockArticle.getHandQuantity()+num);
updateStockArticleList.add(updateStockArticle); updateStockArticleList.add(updateStockArticle);
if(warehouseId.equals(fromWarehouseId)){
Long waybillId = distributionStockArticle.getWaybillId();
String waybillNo = distributionStockArticle.getWaybillNumber();
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo);
QueryWrapper<TrunklineWaybillOrderEntity> queryWrapper1 = new QueryWrapper<>();
queryWrapper1.eq("waybill_id",waybillId)
.eq("order_code",waybillNo);
TrunklineWaybillOrderEntity one = trunklineWaybillOrderService.getOne(queryWrapper1);
if(!Objects.isNull(one)){
Integer totalCount = waybillEntity.getTotalCount();
Integer waybillStatusInt = Integer.parseInt(waybillEntity.getWaybillStatus());
if(waybillStatusInt <= 40){
Integer handleNumber = one.getHandleNumber();
int total = handleNumber - num;
if(total == 0){
waybillEntity.setWaybillStatus("20");
one.setHandleNumber(total);
}else{
waybillEntity.setWaybillStatus("30");
one.setHandleNumber(totalCount);
}
warehouseWaybillClient.updateEntity(waybillEntity);
trunklineWaybillOrderService.updateById(one);
}
}
}
} }
}); });
} }
@ -7279,7 +7441,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
distributionParcelListClient.update(distributionParcelListEntity); distributionParcelListClient.update(distributionParcelListEntity);
} }
updownTypeClient.downPackageOrDelTray(orderPackageCode, nowWarehouseId, "干线卸车下架解托"); if(StringUtils.isNotBlank(orderPackageCode)){
updownTypeClient.downPackageOrDelTray(orderPackageCode, nowWarehouseId, "干线卸车下架解托");
}
} }
}else{ }else{
//需要补装车扫记录 //需要补装车扫记录
@ -7454,13 +7618,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
distributionParcelListClient.update(distributionParcelListEntity); distributionParcelListClient.update(distributionParcelListEntity);
} }
updownTypeClient.downPackageOrDelTray(orderPackageCode, wid, "干线卸车下架解托"); if(StringUtils.isNotBlank(orderPackageCode)){
updownTypeClient.downPackageOrDelTray(orderPackageCode, wid, "干线卸车下架解托");
}
} }
//无装车记录异常日志记录 //无装车记录异常日志记录
try { try {
carsLoadAsyncService.abnormalListUnloadByLoadIdAndWarehouseId(loadId, warehouseId, warehouseName, loadScanId, AuthUtil.getTenantId(), AuthUtil.getUserId(), AuthUtil.getNickName(), Func.firstLong(AuthUtil.getDeptId())); carsLoadAsyncService.abnormalListUnloadByLoadIdAndWarehouseId(loadId, warehouseId, warehouseName, loadScanId, AuthUtil.getTenantId(), AuthUtil.getUserId(), AuthUtil.getNickName(), Func.firstLong(AuthUtil.getDeptId()));
} catch (Exception e) { } catch (Exception e) {
log.warn("###############unloadPackage: 存入异常列表记录失败"); log.warn("###############unloadPackage: 存入异常列表记录失败");
@ -7970,7 +8134,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
distributionParcelListClient.update(distributionParcelListEntity); distributionParcelListClient.update(distributionParcelListEntity);
} }
updownTypeClient.downPackageOrDelTray(orderPackageCode, nowWarehouseId, "干线卸车下架解托"); if(StringUtils.isNotBlank(orderPackageCode)){
updownTypeClient.downPackageOrDelTray(orderPackageCode, nowWarehouseId, "干线卸车下架解托");
}
} }
}else{ }else{
//需要补装车扫记录 //需要补装车扫记录
@ -8134,7 +8300,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
} }
distributionParcelListClient.update(distributionParcelListEntity); distributionParcelListClient.update(distributionParcelListEntity);
} }
updownTypeClient.downPackageOrDelTray(orderPackageCode, wid, "干线卸车下架解托");
if(StringUtils.isNotBlank(orderPackageCode)){
updownTypeClient.downPackageOrDelTray(orderPackageCode, wid, "干线卸车下架解托");
}
} }
//无装车记录异常日志记录 //无装车记录异常日志记录
@ -8181,7 +8353,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
trayName = trayEntity.getPalletName(); trayName = trayEntity.getPalletName();
} }
if (unbindTray == 1) { if (unbindTray == 1) {
updownTypeClient.downPackageOrDelTray(orderPackageCode, fromWarehouseId, "干线卸车下架解托"); if(StringUtils.isNotBlank(orderPackageCode)){
updownTypeClient.downPackageOrDelTray(orderPackageCode, fromWarehouseId, "干线卸车下架解托");
}
} }
trunklineCarsLoadScanService.updateById(carsLoadScanEntity); trunklineCarsLoadScanService.updateById(carsLoadScanEntity);

9
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillOrderServiceImpl.java

@ -1,5 +1,6 @@
package com.logpm.trunkline.service.impl; package com.logpm.trunkline.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.logpm.trunkline.entity.TrunklineAdvanceEntity; import com.logpm.trunkline.entity.TrunklineAdvanceEntity;
import com.logpm.trunkline.entity.TrunklineWaybillOrderEntity; import com.logpm.trunkline.entity.TrunklineWaybillOrderEntity;
import com.logpm.trunkline.mapper.TrunklineWaybillOrderMapper; import com.logpm.trunkline.mapper.TrunklineWaybillOrderMapper;
@ -54,4 +55,12 @@ public class TrunklineWaybillOrderServiceImpl extends BaseServiceImpl<TrunklineW
public void deleteByWaybillNo(String waybillNo) { public void deleteByWaybillNo(String waybillNo) {
baseMapper.deleteByWaybillNo(waybillNo); baseMapper.deleteByWaybillNo(waybillNo);
} }
@Override
public TrunklineWaybillOrderEntity findEntityByWaybillNoAndOrderCode(String waybillNo, String orderCode) {
QueryWrapper<TrunklineWaybillOrderEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("waybill_no",waybillNo)
.eq("order_code",orderCode);
return baseMapper.selectOne(queryWrapper);
}
} }

22
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/TaskQuestController.java

@ -50,13 +50,18 @@ import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringUtil; import org.springblade.core.tool.utils.StringUtil;
import org.springblade.system.cache.UserCache;
import org.springblade.system.entity.User;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* 盘点任务 控制器 * 盘点任务 控制器
@ -228,8 +233,23 @@ public class TaskQuestController extends BladeController {
@ApiOperation(value = "导出已盘数据明细维度", notes = "传入questDetailDTO") @ApiOperation(value = "导出已盘数据明细维度", notes = "传入questDetailDTO")
public void exportPanDataWithPackage(QuestDetailDTO questDetailDTO, HttpServletResponse response){ public void exportPanDataWithPackage(QuestDetailDTO questDetailDTO, HttpServletResponse response){
String questNum = questDetailDTO.getQuestNum(); String questNum = questDetailDTO.getQuestNum();
List<QuestContrastPackageExcelVO> ls = new ArrayList();
List<QuestContrastPackageExcelVO> list = taskQuestService.exportPanDataWithPackage(questDetailDTO); List<QuestContrastPackageExcelVO> list = taskQuestService.exportPanDataWithPackage(questDetailDTO);
ExcelUtil.export(response, "盘点任务【"+questNum+"】数据" + DateUtil.time(), "盘点明细数据表", list, QuestContrastPackageExcelVO.class); //把list中所有元素通过inventoryUser进行分组
Map<Long, List<QuestContrastPackageExcelVO>> groupedByInventoryUser = list.stream()
.collect(Collectors.groupingBy(QuestContrastPackageExcelVO::getInventoryUser));
groupedByInventoryUser.keySet().forEach(inventoryUser -> {
List<QuestContrastPackageExcelVO> questContrastPackageExcelVOS = groupedByInventoryUser.get(inventoryUser);
User user = UserCache.getUser(inventoryUser);
if(!Objects.isNull(user)){
questContrastPackageExcelVOS.forEach(questContrastPackageExcelVO -> {
questContrastPackageExcelVO.setInventoryUserStr(user.getName());
});
}
ls.addAll(questContrastPackageExcelVOS);
});
ExcelUtil.export(response, "盘点任务【"+questNum+"】数据" + DateUtil.time(), "盘点明细数据表", ls, QuestContrastPackageExcelVO.class);
} }

6
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/excel/QuestContrastPackageExcelVO.java

@ -1,5 +1,6 @@
package com.logpm.warehouse.excel; package com.logpm.warehouse.excel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ColumnWidth;
import lombok.Data; import lombok.Data;
@ -98,8 +99,11 @@ public class QuestContrastPackageExcelVO implements Serializable {
@ExcelProperty(value = "盘点时间") @ExcelProperty(value = "盘点时间")
private Date inventoryTime; private Date inventoryTime;
@ExcelIgnore
private Long inventoryUser;
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty(value = "盘点人") @ExcelProperty(value = "盘点人")
private String inventoryUser; private String inventoryUserStr;
} }

7
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/TaskQuestServiceImpl.java

@ -1009,9 +1009,9 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
BeanUtil.copyProperties(i, questDetailVO); BeanUtil.copyProperties(i, questDetailVO);
if (StringUtil.isNotBlank(questDetailVO.getGroundingPositionCode())) { // if (StringUtil.isNotBlank(questDetailVO.getGroundingPositionCode())) {
questDetailVO.setPositionCode(questDetailVO.getGroundingPositionCode()); // questDetailVO.setPositionCode(questDetailVO.getGroundingPositionCode());
} // }
if (!i.getQuestStatus().equals(0)) { if (!i.getQuestStatus().equals(0)) {
R<List<User>> listR = userSearchClient.listByUser(String.valueOf(i.getUpdateUser())); R<List<User>> listR = userSearchClient.listByUser(String.valueOf(i.getUpdateUser()));
if (ObjectUtils.isNotNull(listR.getData())) { if (ObjectUtils.isNotNull(listR.getData())) {
@ -1021,7 +1021,6 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
if (user != null) { if (user != null) {
questDetailVO.setInventoryPerson(user.getName()); questDetailVO.setInventoryPerson(user.getName());
} }
} }
} }
questDetailVO.setInventoryDate(i.getUpdateTime()); questDetailVO.setInventoryDate(i.getUpdateTime());

Loading…
Cancel
Save