From 58d8c20d87dc4edf3027950a935b0d091c6a82dd Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 09 二月 2026 18:10:32 +0800
Subject: [PATCH] 优化功能

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java |   80 ++++++++++++++++++---------------------
 1 files changed, 37 insertions(+), 43 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 d38b0a1..f882dc5 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
@@ -113,6 +113,8 @@
     private IDriverWorkService iDriverWorkService;
     @Autowired
     private ITRegionService regionService;
+    @Autowired
+    private GDMapGeocodingUtil gdMapGeocodingUtil;
 
     /**
      * 跳转投诉页面
@@ -916,7 +918,7 @@
             TDriver tDriver = tDriverService.selectById(tDriverId);
             DriverWork driverWork = iDriverWorkService.selectOne(new EntityWrapper<DriverWork>().eq("driverId", tDriverId).eq("state", 1));
             if(null != driverWork && !tDriver.getCarId().equals(carId)){
-                return ResultUtil.error("司机上班中,不能更换车辆");
+                return ResultUtil.error("司机服务中,不能更换车辆");
             }
             tDriver.setCarId(carId);
             tDriverService.updateById(tDriver);
@@ -1362,7 +1364,7 @@
             shellList.add("经营业务:跨城出行[是/否]");
             shellList.add("登录账号[手机号]");
             shellList.add("登录密码[密码长度为6-18]");
-            shellList.add("从业地行政编号");
+            shellList.add("从业地所属地址");
         } else if (shiroExtUtil.getUser().getRoleType() == 2) {
             title = "分公司导入司机模板";
         
@@ -1380,7 +1382,7 @@
             shellList.add("经营业务:跨城出行[是/否]");
             shellList.add("登录账号[手机号]");
             shellList.add("登录密码[密码长度为6-18]");
-            shellList.add("从业地行政编号");
+            shellList.add("从业地所属地址");
         } else if (shiroExtUtil.getUser().getRoleType() == 3) {
             title = "加盟商导入司机模板";
         
@@ -1397,7 +1399,7 @@
             shellList.add("经营业务:跨城出行[是/否]");
             shellList.add("登录账号[手机号]");
             shellList.add("登录密码[密码长度为6-18]");
-            shellList.add("从业地行政编号");
+            shellList.add("从业地所属地址");
         }
         dataList.add(shellList);
 
@@ -1715,10 +1717,6 @@
                         if (!isPassword(eighteen)){
                             return new ErrorTip(500, "登录密码格式不正确");
                         }
-                        //从业地行政编号
-                        if (!isPassword(cell201)){
-                            return new ErrorTip(500, "从业地行政编号不正确");
-                        }
 
                         //查找平台公司
                         TCompany platCompany = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("type", 1).notIn("flag", "3").last(" limit 1"));
@@ -1769,26 +1767,12 @@
                         driver.setInsertTime(new Date());
                         driver.setAddType(2);
                         driver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
-                        driver.setPlaceOfEmployment(cell201);
-                        if(ToolUtil.isNotEmpty(cell201)){
-                            TRegion tRegion = regionService.selectOne(new EntityWrapper<TRegion>().eq("code", cell201));
-                            String placeOfPractice = "";
-                            if(null != tRegion){
-                                Integer parentId = tRegion.getParentId();
-                                if(0 != parentId){
-                                    TRegion tRegion1 = regionService.selectById(parentId);
-                                    if(0 != tRegion1.getParentId()){
-                                        TRegion tRegion2 = regionService.selectById(tRegion1.getParentId());
-                                        placeOfPractice = tRegion2.getName() + "," + tRegion1.getName() + "," + tRegion.getName();
-                                    }else{
-                                        placeOfPractice = tRegion1.getName() + "," + tRegion.getName();
-                                    }
-                                }else{
-                                    placeOfPractice = tRegion.getName();
-                                }
-                            }
-                            driver.setPlaceOfPractice(placeOfPractice);
+                        driver.setPlaceOfPractice(cell201);
+                        String s = gdMapGeocodingUtil.geocoding2(cell201);
+                        if(ToolUtil.isNotEmpty(s)){
+                            driver.setPlaceOfEmployment(s);
                         }
+
                         if (SinataUtil.isNotEmpty(eight)) {
                             driver.setDriverAddress(eight);
                         }
@@ -2118,10 +2102,6 @@
                         if (!isPassword(sixteen)) {
                             return new ErrorTip(500, "登录密码格式不正确");
                         }
-                        //从业地行政编号
-                        if (!isPassword(cell1701)) {
-                            return new ErrorTip(500, "从业地行政编号不正确");
-                        }
 
 
                         //查找平台公司
@@ -2142,11 +2122,7 @@
                             return new ErrorTip(500, serviceError);
                         }
 
-                        // 校验从业地是否在公司经营区域内
-                        String placeError = validatePlaceOfEmployment(companyId, cell1701, 2);
-                        if (placeError != null) {
-                            return new ErrorTip(500, placeError);
-                        }
+
 
                         TDriver driver = new TDriver();
                         driver.setAccount(fifteen);
@@ -2173,10 +2149,23 @@
                         driver.setInsertTime(new Date());
                         driver.setAddType(3);
                         driver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
-                        driver.setPlaceOfEmployment(cell1701);
+                        driver.setPlaceOfPractice(cell1701);
+                        String s = gdMapGeocodingUtil.geocoding2(cell1701);
+                        if(ToolUtil.isNotEmpty(s)){
+                            driver.setPlaceOfEmployment(s);
+                            // 校验从业地是否在公司经营区域内
+                            String placeError = validatePlaceOfEmployment(companyId, s, 2);
+                            if (placeError != null) {
+                                return new ErrorTip(500, placeError);
+                            }
+                        }
                         if (SinataUtil.isNotEmpty(six)) {
                             driver.setDriverAddress(six);
                         }
+
+
+
+
                         tDriverService.insert(driver);
 
                         //添加快车服务模式
@@ -2468,11 +2457,7 @@
                             return new ErrorTip(500, serviceError);
                         }
 
-                        // 校验从业地是否在公司经营区域内
-                        String placeError = validatePlaceOfEmployment(companyId, cell1701, 3);
-                        if (placeError != null) {
-                            return new ErrorTip(500, placeError);
-                        }
+
 
                         TDriver driver = new TDriver();
                         driver.setAccount(fourteen);
@@ -2499,7 +2484,16 @@
                         driver.setInsertTime(new Date());
                         driver.setAddType(4);
                         driver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
-                        driver.setPlaceOfEmployment(cell1701);
+                        driver.setPlaceOfPractice(cell1701);
+                        String s = gdMapGeocodingUtil.geocoding2(cell1701);
+                        if(ToolUtil.isNotEmpty(s)){
+                            driver.setPlaceOfEmployment(s);
+                            // 校验从业地是否在公司经营区域内
+                            String placeError = validatePlaceOfEmployment(companyId, s, 3);
+                            if (placeError != null) {
+                                return new ErrorTip(500, placeError);
+                            }
+                        }
                         if (SinataUtil.isNotEmpty(five)) {
                             driver.setDriverAddress(five);
                         }

--
Gitblit v1.7.1