浏览代码

提交解绑车辆bug

chenxiaofei 5 月之前
父节点
当前提交
dcfba90458

+ 3 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/dubbo/TransportServiceImpl.java

@@ -1504,7 +1504,9 @@ public class TransportServiceImpl implements TransportRemoteService {
         if (CollectionUtils.isEmpty(logisticsOrderContracts)){
             return List.of();
         }
-        Map<Long, List<KwtLogisticsOrderContract>> logContractIdAndContractsMap = logisticsOrderContracts.stream().collect(Collectors.groupingBy(KwtLogisticsOrderContract::getContractId));
+
+        Map<Long, List<Long>> logContractIdAndContractsMap = logisticsOrderContracts.stream()
+                .collect(Collectors.groupingBy(KwtLogisticsOrderContract::getContractId, Collectors.mapping(KwtLogisticsOrderContract::getLOrderId, Collectors.toList())));
         List<Long> logIds = logisticsOrderContracts.stream()
                 .map(KwtLogisticsOrderContract::getLOrderId)
                 .distinct()

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

@@ -57,7 +57,7 @@ public class KwtVehicleExceptionRepository extends ServiceImpl<KwtVehicleExcepti
      * @return 分页结果
      */
     public IPage<KwtVehicleException> queryExceptionImagePage1(Long entId, Integer exceptionType,
-                                                              String truckNo, int pageNum, int pageSize) {
+                                                              String truckNo,String startDate,String endDate, int pageNum, int pageSize) {
         // 构建子查询条件:当前记录的异常时间等于该车牌号的最大异常时间
         // 使用 (truck_no, exception_time) IN 子查询来确保只查询每个车牌号最新的一条
         StringBuilder subQuery = new StringBuilder();
@@ -72,6 +72,12 @@ public class KwtVehicleExceptionRepository extends ServiceImpl<KwtVehicleExcepti
         if (Objects.nonNull(exceptionType)) {
             subQuery.append(" AND exception_type = ").append(exceptionType);
         }
+        if (StringUtils.isNotBlank(startDate)) {
+            subQuery.append(" AND exception_time >= '").append(startDate).append("'");
+        }
+        if (StringUtils.isNotBlank(endDate)) {
+            subQuery.append(" AND exception_time <= '").append(endDate).append("'");
+        }
         if (StringUtils.isNotBlank(truckNo)) {
             // 转义单引号防止 SQL 注入
             String escapedTruckNo = truckNo.replace("'", "''");

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

@@ -3224,11 +3224,11 @@ public class KwtLogisticsConsignmentService {
 
         tradeOrderSettlePara.setTOrderId(tradeOrderId);
         BigDecimal loadAmount = orders.stream()
-                .filter(x -> Objects.nonNull(x.getLoadAmount()))
+                .filter(x -> Objects.nonNull(x.getTotalLoadAmount()))
                 .map(KwtLogisticsOrder::getLoadAmount)
                 .reduce(BigDecimal.ZERO, BigDecimal::add);
         BigDecimal unloadAmount = orders.stream()
-                .filter(x -> Objects.nonNull(x.getUnloadAmount()))
+                .filter(x -> Objects.nonNull(x.getTotalUnloadAmount()))
                 .map(KwtLogisticsOrder::getUnloadAmount)
                 .reduce(BigDecimal.ZERO, BigDecimal::add);
         tradeOrderSettlePara.setLoadAmount(loadAmount);

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

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.sckw.core.model.enums.AddressTypeEnum;
+import com.sckw.core.utils.DateUtils;
 import com.sckw.core.web.response.BaseIotResult;
 import com.sckw.core.web.response.result.PageDataResult;
 import com.sckw.transport.api.feign.VehicleTraceClient;
@@ -61,6 +62,14 @@ public class VehicleExceptionService {
      */
     public PageDataResult<VehicleExceptionVo> queryExceptionList(VehicleExceptionQueryReq req) {
         log.info("分页查询车辆异常信息,参数:{}", JSON.toJSONString( req));
+        if (StringUtils.isBlank( req.getStartDate())){
+            String startDate = DateUtils.format(DateUtils.getStartOfDay(new Date()), DateUtils.DATE_TIME_PATTERN);
+            req.setStartDate(startDate);
+        }
+        if (StringUtils.isBlank( req.getEndDate())){
+            String endDate = DateUtils.format(DateUtils.getEndOfDay(new Date()), DateUtils.DATE_TIME_PATTERN);
+            req.setEndDate(endDate);
+        }
         // 分页查询异常图片数据
         IPage<KwtVehicleException> page = exceptionImageRepository.queryExceptionImagePage(
                 req.getEntId(),
@@ -257,11 +266,21 @@ public class VehicleExceptionService {
      */
     public PageDataResult<VehicleExceptionVo> exceptionJkList(VehicleExceptionQueryReq req) {
         log.info("分页查询车辆异常监控列表, req: {}", JSON.toJSONString( req));
+        if (StringUtils.isBlank( req.getStartDate())){
+            String startDate = DateUtils.format(DateUtils.getStartOfDay(new Date()), DateUtils.DATE_TIME_PATTERN);
+            req.setStartDate(startDate);
+        }
+        if (StringUtils.isBlank( req.getEndDate())){
+            String endDate = DateUtils.format(DateUtils.getEndOfDay(new Date()), DateUtils.DATE_TIME_PATTERN);
+            req.setEndDate(endDate);
+        }
         // 分页查询异常图片数据
         IPage<KwtVehicleException> page = exceptionImageRepository.queryExceptionImagePage1(
                 req.getEntId(),
                 req.getExceptionType(),
                 req.getTruckNo(),
+                req.getStartDate(),
+                req.getEndDate(),
                 req.getPageNum(),
                 req.getPageSize()
         );