From b219589d73f46bd98995bceb4caf16dadb56b869 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 12 九月 2025 20:30:13 +0800
Subject: [PATCH] 修改bug

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java |   89 ++++++++++++++++++++++++++++++--------------
 1 files changed, 60 insertions(+), 29 deletions(-)

diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
index ba8292b..37bac06 100644
--- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
+++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
@@ -45,6 +45,7 @@
 import javax.servlet.http.HttpServletResponse;
 import java.text.SimpleDateFormat;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 司机审核列表控制器
@@ -167,7 +168,7 @@
      */
     @RequestMapping("/tDriver_add")
     public String tDriverAdd(Model model) {
-        List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2));
+        List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2).eq("state", 0).ne("flag", 3));
         model.addAttribute("companyList", companyList);
     
         Integer roleType = shiroExtUtil.getUser().getRoleType();
@@ -176,8 +177,7 @@
             List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>()
                     .eq("type", 3)
                     .eq("superiorId", shiroExtUtil.getUser().getObjectId())
-                    .notIn("state", 1)
-                    .notIn("flag", 3));
+                    .eq("state", 0).ne("flag", 3));
             model.addAttribute("franchiseeList", franchiseeList);
         } else {
             model.addAttribute("franchiseeList", null);
@@ -186,8 +186,15 @@
         model.addAttribute("objectName", tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()).getName());
 
         //查询线路列表
-        List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1));
-        model.addAttribute("lineList",lineList);
+        if(1 != roleType){
+            Integer objectId = shiroExtUtil.getUser().getObjectId();
+            List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1).last(" and (id in (select lineId from t_line_company where companyId = " + objectId + ") or companyId = " + objectId + ")"));
+            model.addAttribute("lineList",lineList);
+        }else{
+            List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1));
+            model.addAttribute("lineList",lineList);
+        }
+
         List<TRegion> provinceList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0));
         model.addAttribute("provinceList",provinceList);
         return PREFIX + "tDriver_add.html";
@@ -260,19 +267,19 @@
         model.addAttribute("objectName", tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()).getName());
     
         if (1 == roleType) {
-            List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2).ne("flag", 3));
+            List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2).eq("state", 0).ne("flag", 3));
             model.addAttribute("companyList", companyList);
-            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", tDriver.getCompanyId()));
+            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("state", 0).ne("flag", 3).eq("superiorId", tDriver.getCompanyId()));
             model.addAttribute("franchiseeList", franchiseeList);
         } else if (2 == roleType) {
-            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", shiroExtUtil.getUser().getObjectId()));
+            List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("state", 0).ne("flag", 3).eq("superiorId", shiroExtUtil.getUser().getObjectId()));
             model.addAttribute("franchiseeList", franchiseeList);
         }
 
         //查询平台ID
-        TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1));
+        TCompany company = tCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1).eq("state", 0).ne("flag", 3));
         //判断是平台司机还是加盟司机
-        if ((SinataUtil.isEmpty(tDriver.getCompanyId()) || tDriver.getCompanyId() == 0 || tDriver.getCompanyId() == company.getId()) && (SinataUtil.isEmpty(tDriver.getFranchiseeId()) || tDriver.getFranchiseeId() == 0)){
+        if ((SinataUtil.isEmpty(tDriver.getCompanyId()) || tDriver.getCompanyId() == 0 || tDriver.getCompanyId().equals(company.getId())) && (SinataUtil.isEmpty(tDriver.getFranchiseeId()) || tDriver.getFranchiseeId() == 0)){
             model.addAttribute("companyType",1);
         }else{
             model.addAttribute("companyType",2);
@@ -314,26 +321,43 @@
         model.addAttribute("six",six);
 
         //查询线路列表
-        List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1));
-        model.addAttribute("lineList",lineList);
+        if(1 != roleType){
+            Integer objectId = shiroExtUtil.getUser().getObjectId();
+            List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1).last(" and (id in (select lineId from t_line_company where companyId = " + objectId + ") or companyId = " + objectId + ")"));
+            model.addAttribute("lineList",lineList);
+        }else{
+            List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1));
+            model.addAttribute("lineList",lineList);
+        }
         //查询驾驶员已添加的线路列表
         List<Map<String, Object>> driverLineList = tDriverLineService.getDriverLineListByDriverId(tDriverId);
         model.addAttribute("driverLineList",driverLineList);
         model.addAttribute("provinceId", 1);
+        model.addAttribute("cityId","");
+        model.addAttribute("areaId","");
+        model.addAttribute("provinceId", "");
+        model.addAttribute("areaList", new ArrayList<>());
+        model.addAttribute("cityList", new ArrayList<>());
         if(ToolUtil.isNotEmpty(tDriver.getPlaceOfEmployment())){
             TRegion area = tRegionService.selectOne(new EntityWrapper<TRegion>().eq("code", tDriver.getPlaceOfEmployment()));
-            model.addAttribute("areaId",area.getId());
-            TRegion city = tRegionService.selectOne(new EntityWrapper<TRegion>().eq("id", area.getParentId()));
-            model.addAttribute("cityId",city.getId());
-            TRegion province = tRegionService.selectOne(new EntityWrapper<TRegion>().eq("id", city.getParentId()));
-            model.addAttribute("provinceId",province.getId());
+            if(null != area) {
+                model.addAttribute("areaId", area.getId());
+                TRegion city = tRegionService.selectOne(new EntityWrapper<TRegion>().eq("id", area.getParentId()));
+                if (null != city) {
+                    model.addAttribute("cityId", city.getId());
+                    TRegion province = tRegionService.selectOne(new EntityWrapper<TRegion>().eq("id", city.getParentId()));
+                    if (null != province) {
+                        model.addAttribute("provinceId", province.getId());
+                    }
+                    //市
+                    List<TRegion> cityList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", city.getParentId()));
+                    model.addAttribute("cityList", cityList);
+                }
 
-            //市
-            List<TRegion> cityList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", city.getParentId()));
-            model.addAttribute("cityList",cityList);
-            //区
-            List<TRegion> areaList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", area.getParentId()));
-            model.addAttribute("areaList",areaList);
+                //区
+                List<TRegion> areaList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", area.getParentId()));
+                model.addAttribute("areaList",areaList);
+            }
         }
         //省
         List<TRegion> provinceList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0));
@@ -1257,6 +1281,7 @@
         User user2 = userService.selectById(user.getId());
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
         MultipartFile file = (MultipartFile) multipartRequest.getFile("myfile");
+        List<String> drivers = new ArrayList<>();
         try {
             if (shiroExtUtil.getUser().getRoleType() == 1) {
                 Workbook book = WoUtil.ImportFile(file);
@@ -1509,13 +1534,14 @@
                         return new ErrorTip(500, "单元格不能为空");
                     }else{
                         //判断账号是否存在
-                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", seventeen).in("authState", "1,2,3").ne("flag", 3));
+                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", seventeen).in("authState", Arrays.asList(1,2,3)).ne("flag", 3));
                         if (count > 0){
                             continue;
                         }
                         Boolean b = UserUtil.idCardAuth(zero, seven);
                         if(!b){
-                            return new ErrorTip(500, "司机姓名和身份证号不匹配");
+                            drivers.add(zero);
+                            continue;
                         }
                         //判断所属机构
                         if (!one.equals("平台司机") && !one.equals("加盟司机")){
@@ -1895,14 +1921,15 @@
                         return new ErrorTip(500, "单元格不能为空");
                     }else{
                         //判断账号是否存在
-                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", fifteen).in("authState", "1,2,3").ne("flag", 3));
+                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", fifteen).in("authState", Arrays.asList(1,2,3)).ne("flag", 3));
                         if (count > 0){
                             continue;
                         }
 
                         Boolean b = UserUtil.idCardAuth(zero, five);
                         if(!b){
-                            return new ErrorTip(500, "司机姓名和身份证号不匹配");
+                            drivers.add(zero);
+                            continue;
                         }
                         //判断性别
                         if (!two.equals("男") && !two.equals("女")){
@@ -2213,13 +2240,14 @@
                         return new ErrorTip(500, "单元格不能为空");
                     }else{
                         //判断账号是否存在
-                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", fourteen).in("authState", "1,2,3").ne("flag", 3));
+                        int count = tDriverService.selectCount(new EntityWrapper<TDriver>().eq("phone", fourteen).in("authState", Arrays.asList(1,2,3)).ne("flag", 3));
                         if (count > 0){
                             continue;
                         }
                         Boolean b = UserUtil.idCardAuth(zero, four);
                         if(!b){
-                            return new ErrorTip(500, "司机姓名和身份证号不匹配");
+                            drivers.add(zero);
+                            continue;
                         }
                         //判断性别
                         if (!one.equals("男") && !one.equals("女")){
@@ -2316,6 +2344,9 @@
                     }
                 }
             }
+            if(drivers.size() > 0){
+                return new ErrorTip(500, "司机姓名和身份证号不匹配【" + drivers.stream().collect(Collectors.joining(",")).toString() + "】");
+            }
         } catch (Exception e) {
             e.printStackTrace();
         }

--
Gitblit v1.7.1