Bladeren bron

提交解绑车辆bug

chenxiaofei 5 maanden geleden
bovenliggende
commit
45d9831fc5

+ 8 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/dto/VehicleExceptionQueryReq.java

@@ -34,6 +34,14 @@ public class VehicleExceptionQueryReq {
     /**
     /**
      * 开始时间
      * 开始时间
      */
      */
+    @Schema(description = "开始时间")
+    private String startDate;
+    /**
+     * 结算时间
+     */
+    @Schema(description = "结算时间")
+    private String endDate;
+
     @Schema(description = "页码", example = "1")
     @Schema(description = "页码", example = "1")
     private Integer pageNum = 1;
     private Integer pageNum = 1;
     /**
     /**

+ 2 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtLogisticsOrderRepository.java

@@ -116,10 +116,10 @@ public class KwtLogisticsOrderRepository extends ServiceImpl<KwtLogisticsOrderMa
         );
         );
     }
     }
 
 
-    public KwtLogisticsOrder queryByLogisticOrderNo(String lOrderNo) {
+    public KwtLogisticsOrder queryByLogisticOrderId(String lOrderNo) {
         return getOne(Wrappers.<KwtLogisticsOrder>lambdaQuery()
         return getOne(Wrappers.<KwtLogisticsOrder>lambdaQuery()
                 .eq(KwtLogisticsOrder::getDelFlag,0)
                 .eq(KwtLogisticsOrder::getDelFlag,0)
-                .eq(KwtLogisticsOrder::getLOrderNo, lOrderNo)
+                .eq(KwtLogisticsOrder::getId, lOrderNo)
                 .last("limit 1"));
                 .last("limit 1"));
     }
     }
 
 

+ 3 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtVehicleExceptionRepository.java

@@ -33,13 +33,15 @@ public class KwtVehicleExceptionRepository extends ServiceImpl<KwtVehicleExcepti
      * @return 分页结果
      * @return 分页结果
      */
      */
     public IPage<KwtVehicleException> queryExceptionImagePage(Long entId, Integer exceptionType,
     public IPage<KwtVehicleException> queryExceptionImagePage(Long entId, Integer exceptionType,
-                                                              String truckNo, int pageNum, int pageSize) {
+                                                              String truckNo,String startDate,String endDate, int pageNum, int pageSize) {
         return page(new Page<>(pageNum, pageSize),
         return page(new Page<>(pageNum, pageSize),
                 Wrappers.<KwtVehicleException>lambdaQuery()
                 Wrappers.<KwtVehicleException>lambdaQuery()
                         .eq(KwtVehicleException::getDelFlag, 0)
                         .eq(KwtVehicleException::getDelFlag, 0)
                         .eq(Objects.nonNull(entId), KwtVehicleException::getEntId, entId)
                         .eq(Objects.nonNull(entId), KwtVehicleException::getEntId, entId)
                         .eq(Objects.nonNull(exceptionType), KwtVehicleException::getExceptionType, exceptionType)
                         .eq(Objects.nonNull(exceptionType), KwtVehicleException::getExceptionType, exceptionType)
                         .like(StringUtils.isNotBlank(truckNo), KwtVehicleException::getTruckNo, truckNo)
                         .like(StringUtils.isNotBlank(truckNo), KwtVehicleException::getTruckNo, truckNo)
+                        .ge(StringUtils.isNotBlank(startDate),KwtVehicleException::getCreateTime,startDate)
+                        .le(StringUtils.isNotBlank(endDate),KwtVehicleException::getCreateTime,endDate)
                         .orderByDesc(KwtVehicleException::getExceptionTime));
                         .orderByDesc(KwtVehicleException::getExceptionTime));
     }
     }
 
 

+ 1 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtWaybillOrderRepository.java

@@ -241,7 +241,6 @@ public class KwtWaybillOrderRepository extends ServiceImpl<KwtWaybillOrderMapper
 
 
     /**
     /**
      * 分页查询地图车辆列表(进行中任务)
      * 分页查询地图车辆列表(进行中任务)
-     * @param entIds 企业ID集合
      * @param startDate 开始日期
      * @param startDate 开始日期
      * @param endDate 结束日期
      * @param endDate 结束日期
      * @param taskingStatus 任务状态列表
      * @param taskingStatus 任务状态列表
@@ -250,12 +249,11 @@ public class KwtWaybillOrderRepository extends ServiceImpl<KwtWaybillOrderMapper
      * @param pageSize 每页数量
      * @param pageSize 每页数量
      * @return 分页结果
      * @return 分页结果
      */
      */
-    public IPage<KwtWaybillOrder> queryMapVehicleListPage(Set<Long> entIds, Date startDate, Date endDate,
+    public IPage<KwtWaybillOrder> queryMapVehicleListPage(Date startDate, Date endDate,
                                                            List<Integer> taskingStatus, Set<Long> wayOrderIds,String truckNo, int pageNum, int pageSize) {
                                                            List<Integer> taskingStatus, Set<Long> wayOrderIds,String truckNo, int pageNum, int pageSize) {
         return page(new Page<>(pageNum, pageSize),
         return page(new Page<>(pageNum, pageSize),
                 Wrappers.<KwtWaybillOrder>lambdaQuery()
                 Wrappers.<KwtWaybillOrder>lambdaQuery()
                         .eq(KwtWaybillOrder::getDelFlag, 0)
                         .eq(KwtWaybillOrder::getDelFlag, 0)
-                        .in(CollectionUtils.isNotEmpty(entIds), KwtWaybillOrder::getEntId, entIds)
                         .in(KwtWaybillOrder::getStatus, taskingStatus)
                         .in(KwtWaybillOrder::getStatus, taskingStatus)
                         .in(CollectionUtils.isNotEmpty(wayOrderIds), KwtWaybillOrder::getId, wayOrderIds)
                         .in(CollectionUtils.isNotEmpty(wayOrderIds), KwtWaybillOrder::getId, wayOrderIds)
                         .ge(Objects.nonNull(startDate), KwtWaybillOrder::getCreateTime, startDate)
                         .ge(Objects.nonNull(startDate), KwtWaybillOrder::getCreateTime, startDate)

+ 2 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwfTaskService.java

@@ -97,10 +97,10 @@ public class KwfTaskService {
         }else {
         }else {
             totalCount = kwtWaybillOrderStream.size();
             totalCount = kwtWaybillOrderStream.size();
         }
         }
-        List<Integer> tasking = CarWaybillEnum.getTasking();
+        List<Integer> tasking = Arrays.asList(CarWaybillV1Enum.CANCELLED.getCode(), CarWaybillV1Enum.COMPLETED.getCode());
         //处理中的任务数
         //处理中的任务数
         long taskingCount = waybillOrder.stream()
         long taskingCount = waybillOrder.stream()
-                .filter(w -> tasking.contains(w.getStatus()) && StringUtils.isNotBlank(w.getTruckNo()))
+                .filter(w -> !tasking.contains(w.getStatus()) && StringUtils.isNotBlank(w.getTruckNo()))
                 .count();
                 .count();
         //已经完成的任务数
         //已经完成的任务数
         long completedCount = waybillOrder.stream()
         long completedCount = waybillOrder.stream()

+ 2 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/VehicleExceptionService.java

@@ -66,6 +66,8 @@ public class VehicleExceptionService {
                 req.getEntId(),
                 req.getEntId(),
                 req.getExceptionType(),
                 req.getExceptionType(),
                 req.getTruckNo(),
                 req.getTruckNo(),
+                req.getStartDate(),
+                req.getEndDate(),
                 req.getPageNum(),
                 req.getPageNum(),
                 req.getPageSize()
                 req.getPageSize()
         );
         );

+ 30 - 21
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/kwfTruckTraceService.java

@@ -60,6 +60,7 @@ import com.sckw.transport.response.CollectZjxlResponse;
 import com.sckw.transport.service.zj.VehicleCollectService;
 import com.sckw.transport.service.zj.VehicleCollectService;
 import lombok.RequiredArgsConstructor;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
+import org.antlr.v4.runtime.misc.Array2DHashSet;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -133,8 +134,10 @@ public class kwfTruckTraceService {
         MapVehicleQueryReq queryReq = new MapVehicleQueryReq();
         MapVehicleQueryReq queryReq = new MapVehicleQueryReq();
         queryReq.setCarrierEntId(req.getCarrierEntId());
         queryReq.setCarrierEntId(req.getCarrierEntId());
         queryReq.setLogisticOrderNo(req.getLogisticOrderNo());
         queryReq.setLogisticOrderNo(req.getLogisticOrderNo());
-        Set<Long> wayOrderIds = getWayOrderIds(queryReq);
-        if (CollectionUtils.isEmpty(wayOrderIds) && (StringUtils.isNotBlank(req.getLogisticOrderNo()) || Objects.nonNull(req.getCarrierEntId()))) {
+        Set<Long> entList = new HashSet<>();
+        entList.add(LoginUserHolder.getEntId());
+        Set<Long> wayOrderIds = getWayOrderIds(queryReq,entList);
+        if (CollectionUtils.isEmpty(wayOrderIds) && (StringUtils.isNotBlank(req.getLogisticOrderNo()) || Objects.nonNull(req.getCarrierEntId()) || Objects.nonNull(LoginUserHolder.getEntId()))) {
             return PageDataResult.empty(req.getPageNum(), req.getPageSize());
             return PageDataResult.empty(req.getPageNum(), req.getPageSize());
         }
         }
         Page<KwtWaybillOrder> page = kwtWaybillOrderRepository.findPage(wayOrderIds,req.getTruckNo(),req.getPageNum(), req.getPageSize(), startDate, endDate);
         Page<KwtWaybillOrder> page = kwtWaybillOrderRepository.findPage(wayOrderIds,req.getTruckNo(),req.getPageNum(), req.getPageSize(), startDate, endDate);
@@ -992,14 +995,14 @@ public class kwfTruckTraceService {
         }
         }
         
         
         // 前置条件:根据承运单位和托运单位筛选出符合条件的运单ID
         // 前置条件:根据承运单位和托运单位筛选出符合条件的运单ID
-        Set<Long> wayOrderIds = getWayOrderIds(req);
-        if (CollectionUtils.isEmpty(wayOrderIds) && (StringUtils.isNotBlank(req.getLogisticOrderNo()) || Objects.nonNull(req.getCarrierEntId()) || Objects.nonNull(req.getConsignEntId()))) {
+        Set<Long> wayOrderIds = getWayOrderIds(req,allEnt);
+        if (CollectionUtils.isEmpty(wayOrderIds) && (StringUtils.isNotBlank(req.getLogisticOrderNo()) || Objects.nonNull(req.getCarrierEntId()) || Objects.nonNull(req.getConsignEntId()) || Objects.nonNull(LoginUserHolder.getEntId()))) {
             return PageDataResult.empty(req.getPageNum(), req.getPageSize());
             return PageDataResult.empty(req.getPageNum(), req.getPageSize());
         }
         }
 
 
         // 使用 MyBatis-Plus 分页查询(如果有前置筛选条件,则添加运单ID的IN条件)
         // 使用 MyBatis-Plus 分页查询(如果有前置筛选条件,则添加运单ID的IN条件)
 
 
-        IPage<KwtWaybillOrder> page = kwtWaybillOrderRepository.queryMapVehicleListPage(allEnt,startDate, endDate, taskingStatus, wayOrderIds,req.getTrackNo(), req.getPageNum(),req.getPageSize() );
+        IPage<KwtWaybillOrder> page = kwtWaybillOrderRepository.queryMapVehicleListPage(startDate, endDate, taskingStatus, wayOrderIds,req.getTrackNo(), req.getPageNum(),req.getPageSize() );
         
         
         List<KwtWaybillOrder> waybillOrders = page.getRecords();
         List<KwtWaybillOrder> waybillOrders = page.getRecords();
         if (CollectionUtils.isEmpty(waybillOrders)) {
         if (CollectionUtils.isEmpty(waybillOrders)) {
@@ -1156,28 +1159,34 @@ public class kwfTruckTraceService {
     }
     }
 
 
     @NotNull
     @NotNull
-    private Set<Long> getWayOrderIds(MapVehicleQueryReq req) {
+    private Set<Long> getWayOrderIds(MapVehicleQueryReq req,Set<Long> allEnt) {
         Set<Long> wayOrderIds = Sets.newHashSet();
         Set<Long> wayOrderIds = Sets.newHashSet();
-        List<Long> entIds = new ArrayList<>();
+       // List<Long> entIds = new ArrayList<>();
         if (req.getConsignEntId() != null){
         if (req.getConsignEntId() != null){
-            entIds.add(req.getConsignEntId());
+            allEnt.add(req.getConsignEntId());
         }
         }
         if (req.getCarrierEntId() != null){
         if (req.getCarrierEntId() != null){
-            entIds.add(req.getCarrierEntId());
+            allEnt.add(req.getCarrierEntId());
         }
         }
-        if (CollectionUtils.isNotEmpty(entIds)) {
+        if (CollectionUtils.isNotEmpty(allEnt)) {
             // 第一步:从物流订单单位表查询符合条件的物流订单ID
             // 第一步:从物流订单单位表查询符合条件的物流订单ID
             // 同时有托运和承运单位条件,将企业ID和类型组合后批量查询
             // 同时有托运和承运单位条件,将企业ID和类型组合后批量查询
             List<KwtLogisticsOrderUnit> allUnits = kwtLogisticsOrderUnitRepository.list(
             List<KwtLogisticsOrderUnit> allUnits = kwtLogisticsOrderUnitRepository.list(
                     Wrappers.<KwtLogisticsOrderUnit>lambdaQuery()
                     Wrappers.<KwtLogisticsOrderUnit>lambdaQuery()
                             .eq(KwtLogisticsOrderUnit::getDelFlag, 0)
                             .eq(KwtLogisticsOrderUnit::getDelFlag, 0)
-                            .in(KwtLogisticsOrderUnit::getEntId, entIds)
+                            .in(KwtLogisticsOrderUnit::getEntId, allEnt)
                             .in(KwtLogisticsOrderUnit::getUnitType, Arrays.asList(1, 2)));
                             .in(KwtLogisticsOrderUnit::getUnitType, Arrays.asList(1, 2)));
             if (CollectionUtils.isEmpty(allUnits)) {
             if (CollectionUtils.isEmpty(allUnits)) {
                 return Set.of();
                 return Set.of();
             }
             }
+            Set<Long> logisticsOrderIds = allUnits.stream()
+                    .filter(x -> Objects.equals(x.getEntId(), LoginUserHolder.getEntId()))
+                    .map(KwtLogisticsOrderUnit::getLOrderId)
+                    .collect(Collectors.toSet());
+
             Set<Long> lOrderIds = allUnits.stream()
             Set<Long> lOrderIds = allUnits.stream()
                     .map(KwtLogisticsOrderUnit::getLOrderId)
                     .map(KwtLogisticsOrderUnit::getLOrderId)
+                    .filter(logisticsOrderIds::contains)
                     .collect(Collectors.toSet());
                     .collect(Collectors.toSet());
             if (CollectionUtils.isEmpty(lOrderIds)) {
             if (CollectionUtils.isEmpty(lOrderIds)) {
                 return Set.of();
                 return Set.of();
@@ -1204,7 +1213,7 @@ public class kwfTruckTraceService {
         }
         }
         if (StringUtils.isNotBlank(req.getLogisticOrderNo())) {
         if (StringUtils.isNotBlank(req.getLogisticOrderNo())) {
             // 获取物流订单ID
             // 获取物流订单ID
-            KwtLogisticsOrder logOrder = kwtLogisticsOrderRepository.queryByLogisticOrderNo(req.getLogisticOrderNo());
+            KwtLogisticsOrder logOrder = kwtLogisticsOrderRepository.queryByLogisticOrderId(req.getLogisticOrderNo());
             if (Objects.isNull(logOrder)) {
             if (Objects.isNull(logOrder)) {
                 return Set.of();
                 return Set.of();
             }
             }
@@ -1481,15 +1490,15 @@ public class kwfTruckTraceService {
         //根据企业类型查询企业
         //根据企业类型查询企业
 
 
         allEnt.add(LoginUserHolder.getEntId());
         allEnt.add(LoginUserHolder.getEntId());
-        EntCacheResDto entCacheResDto = remoteSystemService.queryEntTreeById(LoginUserHolder.getUserId());
-        if (Objects.nonNull(entCacheResDto)) {
-            EntCacheResDto entCacheResDto1 = remoteSystemService.queryEntTreeById(entCacheResDto.getId());
-            List<EntCacheResDto> child = entCacheResDto1.getChild();
-            if (com.sckw.core.utils.CollectionUtils.isNotEmpty(child)) {
-                allEnt.addAll(child.stream()
-                        .map(EntCacheResDto::getId).toList());
-            }
-        }
+//        EntCacheResDto entCacheResDto = remoteSystemService.queryEntTreeById(LoginUserHolder.getUserId());
+//        if (Objects.nonNull(entCacheResDto)) {
+//            EntCacheResDto entCacheResDto1 = remoteSystemService.queryEntTreeById(entCacheResDto.getId());
+//            List<EntCacheResDto> child = entCacheResDto1.getChild();
+//            if (com.sckw.core.utils.CollectionUtils.isNotEmpty(child)) {
+//                allEnt.addAll(child.stream()
+//                        .map(EntCacheResDto::getId).toList());
+//            }
+//        }
         return allEnt;
         return allEnt;
     }
     }