Bladeren bron

提交全图监控

chenxiaofei 1 maand geleden
bovenliggende
commit
0f81b4ca30

+ 23 - 3
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/dubbo/RemoteFleetServiceImpl.java

@@ -48,6 +48,7 @@ public class RemoteFleetServiceImpl implements RemoteFleetService {
     private final KwfFleetRepository kwfFleetRepository;
     private final KwfTruckDispatchCoefficientRepository truckDispatchCoefficientRepository;
     private final KwfDriverConductRulesRepository driverConductRulesRepository;
+    private final KwfTruckAxleNumRepository truckAxleNumRepository;
 
     /**
      * @param driverIds 司机档案主键id,多个已逗号隔开
@@ -329,7 +330,7 @@ public class RemoteFleetServiceImpl implements RemoteFleetService {
      * @param truck 车辆对象
      * @return 车辆数据
      */
-    private static RTruckVo getTruckVo(KwfTruck truck) {
+    private RTruckVo getTruckVo(KwfTruck truck) {
         RTruckVo rTruckVo = new RTruckVo();
         rTruckVo.setId(truck.getId());
         rTruckVo.setTruckNo(truck.getTruckNo());
@@ -343,11 +344,30 @@ public class RemoteFleetServiceImpl implements RemoteFleetService {
         rTruckVo.setBusinessStatus(truck.getBusinessStatus());
         rTruckVo.setTruckType(StringUtils.isBlank(truck.getType()) ? "": String.valueOf(truck.getType()));
         rTruckVo.setStatus(truck.getStatus());
-        rTruckVo.setCarAxis(truck.getCarAxis());
+        TmsTruckAxleNum carAxisInfo = getCarAxisInfo(truck.getCarAxis());
+        rTruckVo.setCarAxis(carAxisInfo.getName());
         rTruckVo.setEnergyType(truck.getEnergyType());
         return rTruckVo;
     }
+    /**
+     * 根据车轴id查询轴数信息
+     *
 
+     * @return
+     */
+    private TmsTruckAxleNum getCarAxisInfo(String axleNumId) {
+        if (StringUtils.isEmpty(axleNumId)) {
+            return new TmsTruckAxleNum();
+        }
+        //查询车辆关联司机信息
+        TmsTruckAxleNum axleNum = truckAxleNumRepository.getOne(Wrappers.<TmsTruckAxleNum>lambdaQuery()
+                .eq(TmsTruckAxleNum::getStatus, 1)
+                .eq(TmsTruckAxleNum::getId, Long.parseLong(axleNumId)));
+        if (axleNum == null) {
+            return new TmsTruckAxleNum();
+        }
+        return axleNum;
+    }
     /**
      * 通过车队id查询车队信息
      * @param fleetId
@@ -405,7 +425,7 @@ public class RemoteFleetServiceImpl implements RemoteFleetService {
             return Collections.emptyList();
         }
         return trucks.stream()
-                .map(RemoteFleetServiceImpl::getTruckVo)
+                .map(this::getTruckVo)
                 .collect(Collectors.toList());
 
     }

+ 8 - 0
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/repository/KwfTruckAxleNumRepository.java

@@ -6,6 +6,9 @@ import com.sckw.fleet.dao.KwTruckAxleNumMapper;
 import com.sckw.fleet.model.TmsTruckAxleNum;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+import java.util.Set;
+
 
 /**
  * @author PC
@@ -21,4 +24,9 @@ public class KwfTruckAxleNumRepository extends ServiceImpl<KwTruckAxleNumMapper,
                 .last("limit 1"));
     }
 
+    public List<TmsTruckAxleNum> queryByIds(Set<String> carAxisIds) {
+        return  list(Wrappers.<TmsTruckAxleNum>lambdaQuery()
+                .eq(TmsTruckAxleNum::getStatus,1)
+                .in(TmsTruckAxleNum::getId, carAxisIds));
+    }
 }

+ 18 - 2
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/service/KwfTruckService.java

@@ -1862,12 +1862,26 @@ public class KwfTruckService {
         if (org.apache.commons.collections4.CollectionUtils.isEmpty( records)){
             return PageDataResult.empty(req.getPageNum(),req.getPageSize());
         }
+        Set<String> carAxisIds = records.stream()
+                .map(KwfTruck::getCarAxis)
+                .collect(Collectors.toSet());
+        Map<Integer, TmsTruckAxleNum> truckAxleNumMap = Maps.newHashMap();
+        if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(carAxisIds)){
+            List<TmsTruckAxleNum> truckAxleNums = truckAxleNumRepository.queryByIds(carAxisIds);
+            if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(truckAxleNums)){
+                truckAxleNumMap = truckAxleNums.stream()
+                        .collect(Collectors.toMap(TmsTruckAxleNum::getId,Function.identity(),(v1, v2) -> v1));
+            }
+         }
+
+        Map<Integer, TmsTruckAxleNum> finalTruckAxleNumMap = truckAxleNumMap;
         List<KwfTruckDetailVo> truckInfoVos = records.stream().map(truck -> {
             KwfTruckDetailVo truckInfoVo = new KwfTruckDetailVo();
             truckInfoVo.setId(truck.getId());
             truckInfoVo.setTruckNo(truck.getTruckNo());
             truckInfoVo.setBusinessStatus(truck.getBusinessStatus());
-            truckInfoVo.setCarAxis(truck.getCarAxis());
+            TmsTruckAxleNum tmsTruckAxleNum = finalTruckAxleNumMap.getOrDefault(truck.getCarAxis(), new TmsTruckAxleNum());
+            truckInfoVo.setCarAxis(tmsTruckAxleNum.getName());
             return truckInfoVo;
         }).collect(Collectors.toList());
         return PageDataResult.of(kwfTruckIPage, truckInfoVos);
@@ -1958,10 +1972,12 @@ public class KwfTruckService {
         // 查询车辆信息
         KwfTruck truck = truckMap.get(formattedTruckNo);
         if (truck != null) {
+            //查询车辆轴数
+            TmsTruckAxleNum axleNum = getCarAxisInfo(truck.getCarAxis());
             // 车辆存在
             builder.exists(true)
                    .truckId(truck.getId())
-                   .carAxis(truck.getCarAxis())
+                   .carAxis(axleNum.getName())
                    .entId(truck.getEntId());
 
             // 获取企业名称

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

@@ -21,7 +21,6 @@ import com.sckw.core.web.constant.CommonConstants;
 import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.core.web.response.BaseIotResult;
 import com.sckw.core.web.response.result.PageDataResult;
-import com.sckw.core.web.response.BaseResult;
 import com.sckw.fleet.api.RemoteFleetService;
 import com.sckw.fleet.api.model.vo.RDriverVo;
 import com.sckw.fleet.api.model.vo.RFleetDriverVo;
@@ -1050,7 +1049,7 @@ public class kwfTruckTraceService {
                 endDate = sdf.parse(date);
                 endDate = DateUtils.getEndOfDay(endDate);
             } catch (Exception e) {
-                log.error("解析开始日期失败", e);
+                log.error("解析结束日期失败", e);
                 endDate = DateUtils.getEndOfDay(new Date());
             }
         }