diff --git a/blade-service/logpm-trunkline/pom.xml b/blade-service/logpm-trunkline/pom.xml
index 8f65f27b2..b637c5515 100644
--- a/blade-service/logpm-trunkline/pom.xml
+++ b/blade-service/logpm-trunkline/pom.xml
@@ -65,6 +65,11 @@
3.2.0.RELEASE
compile
+
+ org.springblade
+ logpm-factory-data-api
+ 3.2.0.RELEASE
+
org.springframework.boot
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/dto/LoadScanBrandDTO.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/dto/LoadScanBrandDTO.java
new file mode 100644
index 000000000..702c3cc27
--- /dev/null
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/dto/LoadScanBrandDTO.java
@@ -0,0 +1,21 @@
+package com.logpm.trunkline.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author zhaoqiaobo
+ * @create 2024-04-07
+ */
+@Data
+public class LoadScanBrandDTO implements Serializable {
+ /**
+ * 品牌
+ */
+ private String brand;
+ /**
+ * 包件码
+ */
+ private String packageCode;
+}
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.java
index f1288fdef..0d40ababd 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.java
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.trunkline.dto.LoadCarsDTO;
+import com.logpm.trunkline.dto.LoadScanBrandDTO;
import com.logpm.trunkline.entity.TrunklineCarsLoadEntity;
import com.logpm.trunkline.vo.CarsLoadAllOrderVO;
import com.logpm.trunkline.vo.TripartiteTransferVO;
@@ -40,5 +41,6 @@ public interface TrunklineCarsLoadMapper extends BaseMapper carsOrderIdList, @Param("isCustomer") String isCustomer);
+ List fingPackageCodeByLoadId(@Param("loadId") Long loadId);
}
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml
index 36537c10e..aab47ff31 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml
@@ -494,6 +494,13 @@
+
update logpm_trunkline_cars_order
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
index efe564331..43d130b3a 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
@@ -1,5 +1,9 @@
package com.logpm.trunkline.service.impl;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -18,12 +22,74 @@ import com.logpm.distribution.entity.DistributionStockArticleEntity;
import com.logpm.distribution.feign.IDistributionParcelListClient;
import com.logpm.distribution.feign.IDistributionParcelNumberClient;
import com.logpm.distribution.feign.IDistributionStockArticleClient;
+import com.logpm.factorydata.enums.BrandEnums;
+import com.logpm.factorydata.enums.NodeEnums;
+import com.logpm.factorydata.util.FactoryDataMessageSender;
+import com.logpm.factorydata.vo.NodePushMsg;
import com.logpm.trunkline.bean.Resp;
-import com.logpm.trunkline.dto.*;
-import com.logpm.trunkline.entity.*;
+import com.logpm.trunkline.dto.BatchUnloadDTO;
+import com.logpm.trunkline.dto.InComingDTO;
+import com.logpm.trunkline.dto.LoadCarsDTO;
+import com.logpm.trunkline.dto.LoadScanBrandDTO;
+import com.logpm.trunkline.dto.LoadingPackageDTO;
+import com.logpm.trunkline.dto.LoadingZeroDTO;
+import com.logpm.trunkline.dto.ProductInfoDTO;
+import com.logpm.trunkline.dto.TrunklineCarsLoadDTO;
+import com.logpm.trunkline.dto.TrunklineCarsLoadLineDTO;
+import com.logpm.trunkline.dto.TrunklineCarsOrderDTO;
+import com.logpm.trunkline.dto.UnloadPackageDTO;
+import com.logpm.trunkline.dto.UnloadZeroDTO;
+import com.logpm.trunkline.entity.TrunklineAdvanceDetailEntity;
+import com.logpm.trunkline.entity.TrunklineCarsLoadContractEntity;
+import com.logpm.trunkline.entity.TrunklineCarsLoadEntity;
+import com.logpm.trunkline.entity.TrunklineCarsLoadFinanceEntity;
+import com.logpm.trunkline.entity.TrunklineCarsLoadLineEntity;
+import com.logpm.trunkline.entity.TrunklineCarsLoadLogEntity;
+import com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity;
+import com.logpm.trunkline.entity.TrunklineCarsOrderEntity;
+import com.logpm.trunkline.entity.TrunklineCostShareRecordEntity;
+import com.logpm.trunkline.entity.TrunklineLoadSignOrderEntity;
import com.logpm.trunkline.mapper.TrunklineCarsLoadMapper;
-import com.logpm.trunkline.service.*;
-import com.logpm.trunkline.vo.*;
+import com.logpm.trunkline.service.ICarsLoadAsyncService;
+import com.logpm.trunkline.service.IInComingService;
+import com.logpm.trunkline.service.IOpenOrderAsyncService;
+import com.logpm.trunkline.service.ITrunklineAdvanceDetailService;
+import com.logpm.trunkline.service.ITrunklineCarsLoadContractService;
+import com.logpm.trunkline.service.ITrunklineCarsLoadFinanceService;
+import com.logpm.trunkline.service.ITrunklineCarsLoadLineService;
+import com.logpm.trunkline.service.ITrunklineCarsLoadLogService;
+import com.logpm.trunkline.service.ITrunklineCarsLoadScanService;
+import com.logpm.trunkline.service.ITrunklineCarsLoadService;
+import com.logpm.trunkline.service.ITrunklineCarsLoadingLogService;
+import com.logpm.trunkline.service.ITrunklineCarsOrderService;
+import com.logpm.trunkline.service.ITrunklineCarsSignLogService;
+import com.logpm.trunkline.service.ITrunklineCarsUnloadLogService;
+import com.logpm.trunkline.service.ITrunklineCostShareRecordService;
+import com.logpm.trunkline.service.ITrunklineLoadSignOrderService;
+import com.logpm.trunkline.service.ITrunklineWaybillOrderService;
+import com.logpm.trunkline.vo.CarsLoadAllOrderVO;
+import com.logpm.trunkline.vo.CarsLoadOrderInfoVO;
+import com.logpm.trunkline.vo.CarsLoadWaybillInfoVO;
+import com.logpm.trunkline.vo.HasNotFinalNodeIdDataVO;
+import com.logpm.trunkline.vo.LoadScanFinalNodeIdVO;
+import com.logpm.trunkline.vo.LoadScanOrderVO;
+import com.logpm.trunkline.vo.LoadZeroListVO;
+import com.logpm.trunkline.vo.LoadingListGoodsVO;
+import com.logpm.trunkline.vo.LoadingListMainVO;
+import com.logpm.trunkline.vo.NodeNumDataVO;
+import com.logpm.trunkline.vo.OrderScanDetailVO;
+import com.logpm.trunkline.vo.SignOrderDetailVO;
+import com.logpm.trunkline.vo.SignPackageVO;
+import com.logpm.trunkline.vo.SignScanOrderVO;
+import com.logpm.trunkline.vo.TripartiteTransferVO;
+import com.logpm.trunkline.vo.TrunklineCarsLoadLoadingListVO;
+import com.logpm.trunkline.vo.TrunklineCarsLoadScanVO;
+import com.logpm.trunkline.vo.TrunklineCarsLoadVO;
+import com.logpm.trunkline.vo.TrunklineLoadSignOrderVO;
+import com.logpm.trunkline.vo.UnloadPackageVO;
+import com.logpm.trunkline.vo.UnloadScanOrderVO;
+import com.logpm.trunkline.vo.UnloadZeroVO;
+import com.logpm.trunkline.vo.ZeroSuppleVO;
import com.logpm.warehouse.entity.WarehouseWayBillDetail;
import com.logpm.warehouse.entity.WarehouseWaybillEntity;
import com.logpm.warehouse.feign.IWarehouseTrayTypeClient;
@@ -53,7 +119,14 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+import java.util.TreeSet;
@Slf4j
@Service
@@ -90,6 +163,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl loadCarsPageList(LoadCarsDTO loadCarsDTO) {
@@ -97,13 +171,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl pageList = baseMapper.loadCarsPageList(page,loadCarsDTO);
+ IPage pageList = baseMapper.loadCarsPageList(page, loadCarsDTO);
List records = pageList.getRecords();
- for (TrunklineCarsLoadVO trunklineCarsLoadVO:records){
+ for (TrunklineCarsLoadVO trunklineCarsLoadVO : records) {
Long loadId = trunklineCarsLoadVO.getId();
QueryWrapper queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("is_deleted",0)
- .eq("load_id",loadId)
+ queryWrapper.eq("is_deleted", 0)
+ .eq("load_id", loadId)
.orderByAsc("sort");
List list = trunklineCarsLoadLineService.list(queryWrapper);
trunklineCarsLoadVO.setCarsLoadLineList(list);
@@ -118,13 +192,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl pageList = baseMapper.arriveCarsPageList(page,loadCarsDTO);
+ IPage pageList = baseMapper.arriveCarsPageList(page, loadCarsDTO);
List records = pageList.getRecords();
- for (TrunklineCarsLoadVO trunklineCarsLoadVO:records){
+ for (TrunklineCarsLoadVO trunklineCarsLoadVO : records) {
Long loadId = trunklineCarsLoadVO.getId();
QueryWrapper queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("is_deleted",0)
- .eq("load_id",loadId)
+ queryWrapper.eq("is_deleted", 0)
+ .eq("load_id", loadId)
.orderByAsc("sort");
List list = trunklineCarsLoadLineService.list(queryWrapper);
trunklineCarsLoadVO.setCarsLoadLineList(list);
@@ -143,9 +217,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl brands = this.baseMapper.fingPackageCodeByLoadId(loadId);
+ NodeEnums node = null;
+ if (startCarType == 1) {
//车辆配载发车
//查询发站仓节点信息
TrunklineCarsLoadLineEntity carsLoadLineEntity = trunklineCarsLoadLineService.findStartNodeByLoadId(loadId);
String nodeStatus = carsLoadLineEntity.getNodeStatus();//节点状态 0未到达 1到车 2发车
Date startDate = carsLoadLineEntity.getStartDate();
Long nodeId = carsLoadLineEntity.getNodeId();
- if(!warehouseId.equals(nodeId)){
- log.warn("#############startCarByLoadId: 未有权限进行该操作 warehouseId={} nodeId={}",warehouseId,nodeId);
- throw new CustomerException(405,"未有权限进行该操作");
+ if (!warehouseId.equals(nodeId)) {
+ log.warn("#############startCarByLoadId: 未有权限进行该操作 warehouseId={} nodeId={}", warehouseId, nodeId);
+ throw new CustomerException(405, "未有权限进行该操作");
}
- if(!Objects.isNull(startDate)){
- log.warn("#############startCarByLoadId: 车辆已发车 startDate={}",startDate);
- throw new CustomerException(405,"车辆已发车");
+ if (!Objects.isNull(startDate)) {
+ log.warn("#############startCarByLoadId: 车辆已发车 startDate={}", startDate);
+ throw new CustomerException(405, "车辆已发车");
}
- if("20".equals(nodeStatus)){
- log.warn("#############startCarByLoadId: 车辆已发车 nodeStatus={}",nodeStatus);
- throw new CustomerException(405,"车辆已发车");
+ if ("20".equals(nodeStatus)) {
+ log.warn("#############startCarByLoadId: 车辆已发车 nodeStatus={}", nodeStatus);
+ throw new CustomerException(405, "车辆已发车");
}
- if(!"0".equals(loadStatus)){
- log.warn("#############startCarByLoadId: 车辆已发车 loadStatus={}",loadStatus);
- throw new CustomerException(405,"车辆已发车");
+ if (!"0".equals(loadStatus)) {
+ log.warn("#############startCarByLoadId: 车辆已发车 loadStatus={}", loadStatus);
+ throw new CustomerException(405, "车辆已发车");
}
Date date = new Date();
@@ -200,17 +274,20 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl brands, NodeEnums node, String address) {
+ if (CollUtil.isNotEmpty(brands)) {
+ for (LoadScanBrandDTO brand : brands) {
+ String packageCode = brand.getPackageCode();
+ if (StrUtil.isEmpty(packageCode)) {
+ continue;
+ }
+ NodePushMsg msg = new NodePushMsg();
+ msg.setNode(node);
+ msg.setBrand(BrandEnums.getByValue(brand.getBrand()));
+ msg.setOperator(AuthUtil.getUser().getNickName());
+ msg.setOperatorTime(new Date());
+ msg.setAddress(address);
+ List