Bladeren bron

绑定车辆代码优化

donglang 2 maanden geleden
bovenliggende
commit
5206047be6

+ 1 - 1
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/controller/KwfTruckController.java

@@ -341,7 +341,7 @@ public class KwfTruckController {
      **/
     @PostMapping("/queryTruckNo")
     @Operation(summary = "通过企业id获取车牌信息", description = "通过企业id获取车牌信息")
-    public BaseResult<List<String>> queryTruckNo(@RequestBody TruckNoReq req) {
+    public BaseResult<List<KwfTruckVo>> queryTruckNo(@RequestBody TruckNoReq req) {
         return BaseResult.success(truckService.queryTruckNo(req));
     }
 }

+ 3 - 2
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/model/dto/KwfBindTruckDto.java

@@ -1,6 +1,7 @@
 package com.sckw.fleet.model.dto;
 
 import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
 import lombok.Data;
 
 /**
@@ -14,13 +15,13 @@ public class KwfBindTruckDto {
     /**
      * 司机主键id
      */
-    @NotBlank(message = "司机主键id不能为空!")
+    @NotNull(message = "司机主键id不能为空!")
     private Long id;
 
     /**
      * 车牌号
      */
-    @NotBlank(message = "车牌号不能为空!")
+    @NotNull(message = "车牌号不能为空!")
     private Long truckId;
 
 

+ 4 - 3
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/model/vo/KwfTruckVo.java

@@ -238,7 +238,8 @@ public class KwfTruckVo implements Serializable {
     private String driverName;
 
 
-    public String getAuthStatusName() {
-        return authStatus == 1 ? "正常" : authStatus == 2 ? "临时" : "异常";
-    }
+//    public String getAuthStatusName() {
+//        return authStatus == 1 ? "正常" : authStatus == 2 ? "临时" : "异常";
+//    }
+
 }

+ 5 - 2
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/service/KwfDriverService.java

@@ -1102,8 +1102,11 @@ public class KwfDriverService {
                 .eq(KwfTruckReport::getDriverId, params.getId())
                 .eq(KwfTruckReport::getDelFlag, Global.NO));
         if(truckReport == null) {
-            truckReport.setTruckId(params.getTruckId());
-            boolean saveResult = truckReportRepository.save(truckReport);
+            KwfTruckReport newTruckReport = new KwfTruckReport();
+            newTruckReport.setTruckId(params.getTruckId());
+            newTruckReport.setDriverId(params.getId());
+            newTruckReport.setEntId(LoginUserHolder.getEntId());
+            boolean saveResult = truckReportRepository.save(newTruckReport);
             return saveResult ? HttpResult.ok("车辆绑定成功!") : HttpResult.error("车辆绑定失败!");
         } else {
             if (truckReport.getTruckId().equals(params.getTruckId())) {

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

@@ -92,6 +92,7 @@ public class KwfTruckService {
     private final KwfFleetRepository kwfFleetRepository;
     private final UrlConfigProperties urlConfigProperties;
     private final KwfFleetDriverRepository kwfFleetDriverRepository;
+    private final KwfTruckAxleNumRepository truckAxleNumRepository;
 
     private final KwfFleetTruckRepository kwfFleetTruckRepository;
     @DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
@@ -157,6 +158,10 @@ public class KwfTruckService {
             KwfDriver driver = getDriverInfo(truckId, entId);
             truckDetailVo.setDriverName(driver.getName());
 
+            //查询车辆轴数
+            TmsTruckAxleNum axleNum = getCarAxisInfo(truck.getCarAxis());
+            truckDetailVo.setCarAxis(axleNum.getName());
+
             return truckDetailVo;
         }
         return null;
@@ -312,10 +317,35 @@ public class KwfTruckService {
             //查询司机信息
             KwfDriver driver = getDriverInfo(Long.parseLong(truck.getId()), ent.getId());
             truck.setDriverName(driver.getName());
+
+            //查询车辆轴数
+            TmsTruckAxleNum axleNum = getCarAxisInfo(truck.getCarAxis());
+            truck.setCarAxis(axleNum.getName());
         }
         return trucks;
     }
 
+    /**
+     * 根据企业id和车辆id查询司机信息
+     *
+     * @param truck
+     * @param ents
+     * @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和车辆id查询司机信息
      *
@@ -343,6 +373,7 @@ public class KwfTruckService {
         return driver;
     }
 
+
     /**
      * @param params 分页参数
      * @desc 分页查询
@@ -1701,7 +1732,7 @@ public class KwfTruckService {
      * @param req
      * @return
      */
-    public List<String> queryTruckNo(TruckNoReq req) {
+    public List<KwfTruckVo> queryTruckNo(TruckNoReq req) {
         if (req.getEntId() == null) {
             throw new RuntimeException("企业id不能为空");
         }
@@ -1710,6 +1741,13 @@ public class KwfTruckService {
         if (CollectionUtils.isEmpty(turkNoList)) {
             return Collections.emptyList();
         }
-        return turkNoList.stream().map(KwfTruck::getTruckNo).collect(Collectors.toList());
+        List<KwfTruckVo> truckVoList = new ArrayList<>();
+        for (KwfTruck truck : turkNoList) {
+            KwfTruckVo truckVo = new KwfTruckVo();
+            truckVo.setId(String.valueOf(truck.getId()));
+            truckVo.setTruckNo(truck.getTruckNo());
+            truckVoList.add(truckVo);
+        }
+        return truckVoList;
     }
 }