From d6a14beb93cb572247db0edff3f25f99e217fcf1 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 22 八月 2025 15:34:17 +0800
Subject: [PATCH] 修改bug

---
 DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 40 insertions(+), 11 deletions(-)

diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java
index 9cede93..380c118 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/CarServiceImpl.java
@@ -2,10 +2,7 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
-import com.stylefeng.guns.modular.system.dao.CarBrandMapper;
-import com.stylefeng.guns.modular.system.dao.CarMapper;
-import com.stylefeng.guns.modular.system.dao.CarModelMapper;
-import com.stylefeng.guns.modular.system.dao.CompanyMapper;
+import com.stylefeng.guns.modular.system.dao.*;
 import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.service.ICarService;
 import com.stylefeng.guns.modular.system.service.IDriverService;
@@ -14,7 +11,6 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
 import java.util.*;
 
 
@@ -36,6 +32,9 @@
     @Autowired
     private IDriverService driverService;
 
+    @Autowired
+    private DriverWorkMapper driverWorkMapper;
+
 
 
 
@@ -52,6 +51,7 @@
 
         Integer carId = driver.getCarId();
         map.put("car", "");
+        map.put("id", carId);
         if(carId!=null){
             Car car = carMapper.selectById(carId);
             if(car.getCarLicensePlate()!=null){
@@ -62,14 +62,18 @@
         }
 
         List<Map<String, Object>> list = carMapper.queryIdleDataFromId(driver.getId());
-//        List<Map<String, Object>> list = carMapper.queryIdleData(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : (
-//                driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1));
         for (Map<String, Object> stringObjectMap : list) {
             // 1使用中 2空闲中
-            if(stringObjectMap.get("id").toString().equals(carId.toString())){
-                map.put("useState", 1);
-            }else {
-                map.put("useState", 0);
+            if(null == stringObjectMap.get("useDriverId")){
+                stringObjectMap.put("useState", 2);
+            }else{
+                Integer driverId = Integer.valueOf(stringObjectMap.get("useDriverId").toString());
+                DriverWork driverWork = driverWorkMapper.queryNewWork(driverId, null, 1);
+                if(null == driverWork){
+                    stringObjectMap.put("useState", 2);
+                }else{
+                    stringObjectMap.put("useState", 1);
+                }
             }
         }
         map.put("list", list);
@@ -159,4 +163,29 @@
         this.insert(car);
         return ResultUtil.success();
     }
+
+    @Override
+    public boolean useState(Integer carId, Integer uid) {
+        List<Driver> drivers = driverService.selectList(new EntityWrapper<Driver>().eq("carId", carId)
+                .eq("authState", 2).ne("flag", 3));
+        for (Driver driver : drivers) {
+            DriverWork driverWork = driverWorkMapper.queryNewWork(driver.getId(), null, 1);
+            if(null != driverWork){
+                return true;
+            }
+        }
+        return false;
+    }
+
+    @Override
+    public void updateUseState(Integer carId, Integer uid) {
+        carMapper.updateUseState(uid);
+        Car car = carMapper.selectById(carId);
+        car.setUseDriverId(uid);
+        this.baseMapper.updateById(car);
+    }
+    @Override
+    public void updateUseState(Integer uid) {
+        carMapper.updateUseState(uid);
+    }
 }

--
Gitblit v1.7.1