From 5dacdee9b54c78372b68140e2b068d03a620eab9 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 02 七月 2025 19:00:52 +0800
Subject: [PATCH] 修改bug

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java |  376 +++++++++++++++++++++++++++++------------------------
 1 files changed, 206 insertions(+), 170 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 a29282d..78e019b 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
@@ -22,6 +22,7 @@
 import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.util.*;
 import com.stylefeng.guns.modular.system.util.qianyuntong.EmployeeUtil;
+import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.*;
 import org.apache.poi.ss.usermodel.Cell;
 import org.apache.poi.ss.usermodel.Row;
@@ -96,6 +97,9 @@
     @Autowired
     private IUserService userService;
     
+    @Resource
+    private ShiroExtUtil shiroExtUtil;
+    
     /**
      * 跳转投诉页面
      *
@@ -133,7 +137,7 @@
             endTime = timeArray[1];
         }
         Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        page.setRecords(tComplaintService.getComplaintList(page, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId(), beginTime, endTime, userName, userPhone, driverPhone, isHandle, driverId));
+        page.setRecords(tComplaintService.getComplaintList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), beginTime, endTime, userName, userPhone, driverPhone, isHandle, driverId));
         return super.packForBT(page);
     }
     /**
@@ -160,12 +164,12 @@
         List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2));
         model.addAttribute("companyList", companyList);
     
-        Integer roleType = ShiroExtUtil.getUser().getRoleType();
+        Integer roleType = shiroExtUtil.getUser().getRoleType();
         model.addAttribute("roleType", roleType);
         if (2 == roleType) {
             List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>()
                     .eq("type", 3)
-                    .eq("superiorId", ShiroExtUtil.getUser().getObjectId())
+                    .eq("superiorId", shiroExtUtil.getUser().getObjectId())
                     .notIn("state", 1)
                     .notIn("flag", 3));
             model.addAttribute("franchiseeList", franchiseeList);
@@ -173,7 +177,7 @@
             model.addAttribute("franchiseeList", null);
         }
         //查询当前用户所属分公司/加盟商
-        model.addAttribute("objectName", tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()).getName());
+        model.addAttribute("objectName", tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()).getName());
 
         //查询线路列表
         List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1));
@@ -239,9 +243,9 @@
         model.addAttribute("item", tDriver);
         LogObjectHolder.me().set(tDriver);
     
-        Integer roleType = ShiroExtUtil.getUser().getRoleType();
+        Integer roleType = shiroExtUtil.getUser().getRoleType();
         model.addAttribute("roleType", roleType);
-        model.addAttribute("objectName", tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()).getName());
+        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));
@@ -249,7 +253,7 @@
             List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 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("superiorId", shiroExtUtil.getUser().getObjectId()));
             model.addAttribute("franchiseeList", franchiseeList);
         }
 
@@ -570,13 +574,13 @@
                        Integer authState) {
         String beginTime = null;
         String endTime = null;
-        if (SinataUtil.isNotEmpty(insertTime)){
+        if (SinataUtil.isNotEmpty(insertTime)) {
             String[] timeArray = insertTime.split(" - ");
             beginTime = timeArray[0];
             endTime = timeArray[1];
         }
         Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        if (ShiroExtUtil.getUser().getRoleType() != 1) {
+        if (shiroExtUtil.getUser().getRoleType() != 1) {
             page.setRecords(null);
         } else {
             page.setRecords(tDriverService.getAuthDriverList(page, beginTime, endTime, companyName, phone, account, addType, authState));
@@ -603,7 +607,7 @@
             endTime = timeArray[1];
         }
         Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        page.setRecords(tDriverService.getDriverList(page, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId(), beginTime, endTime, companyName, phone, name, addType, authState));
+        page.setRecords(tDriverService.getDriverList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), beginTime, endTime, companyName, phone, name, addType, authState));
         return super.packForBT(page);
     }
 
@@ -628,7 +632,7 @@
         }*/
         //2020-08-21:新需求,已被绑定的车辆可以被继续绑定
         Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        page.setRecords(tDriverService.getCanSelectCarList(page, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId(), null, carLicensePlate, brandName, modelName, color, serverStr));
+        page.setRecords(tDriverService.getCanSelectCarList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), null, carLicensePlate, brandName, modelName, color, serverStr));
         return super.packForBT(page);
 
     }
@@ -668,26 +672,32 @@
             System.out.println("司机注册审核发送短信 :【driverId=" + tDriver.getId().toString() + "】,调用接口:" + result);
             //审核通过,在中台添加司机账号
             if (2 == tDriver.getAuthState()) {
-                ShiroUser user = ShiroExtUtil.getUser();
+                ShiroUser user = shiroExtUtil.getUser();
                 Integer objectId = user.getObjectId();
                 TCompany tCompany = itCompanyService.selectById(objectId);
-                User user1 = userService.selectById(user.getId());
-                SaveStaffNodeRequest request = new SaveStaffNodeRequest();
-                request.setMobile(user1.getPhone());
-                request.setEntercode(tCompany.getEnterCode());
-                request.setEmpName(tDriver.getName());
-                request.setEmpNickname(tDriver.getName());
-                request.setLoginNo(tDriver.getPhone());
-                request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
-                request.setMphone(tDriver.getPhone());
-                request.setEmail(tDriver.getPhone() + "@qyt.com");
-                request.setDeptId(0);
-                request.setPositionId(1);
-                request.setSuperLevel(0);
-                request.setHideMobile(0);
-                SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+                List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tDriver.getPhone(), tCompany.getEnterCode());
+                Long empId = null;
+                if(null == userInfoByPhone || userInfoByPhone.size() == 0){
+                    SaveStaffNodeRequest request = new SaveStaffNodeRequest();
+                    request.setMobile(tCompany.getPrincipalPhone());
+                    request.setEntercode(tCompany.getEnterCode());
+                    request.setEmpName(tDriver.getName());
+                    request.setEmpNickname(tDriver.getName());
+                    request.setLoginNo(tDriver.getPhone());
+                    request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
+                    request.setMphone(tDriver.getPhone());
+                    request.setEmail(tDriver.getPhone() + "@qyt.com");
+                    request.setDeptId(0);
+                    request.setPositionId(1);
+                    request.setSuperLevel(0);
+                    request.setHideMobile(0);
+                    SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+                    empId = saveStaffNode.getEmpId();
+                }else{
+                    empId = userInfoByPhone.get(0).getEmpId();
+                }
                 TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId());
-                tDriver.setEmpId(saveStaffNode.getEmpId());
+                tDriver.setEmpId(empId);
                 tDriver.setEntercode(tCompany1.getEnterCode());
                 tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
             }
@@ -738,8 +748,8 @@
             tDriver.setIsPlatCar(1);
             tDriver.setAuthState(2);
         }else if (2 == roleType) {  //分公司
-            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
-                tDriver.setCompanyId(ShiroExtUtil.getUser().getObjectId());
+            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
+                tDriver.setCompanyId(shiroExtUtil.getUser().getObjectId());
             }
             if (SinataUtil.isNotEmpty(franchiseeId)) {
                 tDriver.setFranchiseeId(franchiseeId);
@@ -747,47 +757,54 @@
             tDriver.setAddType(3);
             tDriver.setIsPlatCar(2);
             tDriver.setAuthState(1);
-            tDriver.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
+            tDriver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
         }else if (3 == roleType) {  //加盟商
-            TCompany tCompany = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId());
+            TCompany tCompany = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId());
             if (SinataUtil.isNotEmpty(tCompany)) {
                 tDriver.setCompanyId(tCompany.getSuperiorId());
             }
-            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
-                tDriver.setFranchiseeId(ShiroExtUtil.getUser().getObjectId());
+            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
+                tDriver.setFranchiseeId(shiroExtUtil.getUser().getObjectId());
             }
             tDriver.setAddType(4);
             tDriver.setIsPlatCar(2);
             tDriver.setAuthState(1);
-            tDriver.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
+            tDriver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
         }
         tDriver.setInsertTime(new Date());
-        tDriver.setInsertUser(ShiroExtUtil.getUser().getId());
+        tDriver.setInsertUser(shiroExtUtil.getUser().getId());
 //        tDriver.setPassword(MD5Util.encrypt(tDriver.getPassword()));
     
         tDriver.setPassword(ShiroKit.md5(tDriver.getPassword(), "SA;d5#"));
         //审核通过,在中台添加司机账号
         if (2 == tDriver.getAuthState()) {
-            ShiroUser user = ShiroExtUtil.getUser();
+            ShiroUser user = shiroExtUtil.getUser();
             Integer objectId = user.getObjectId();
             TCompany tCompany = itCompanyService.selectById(objectId);
-            User user1 = userService.selectById(user.getId());
-            SaveStaffNodeRequest request = new SaveStaffNodeRequest();
-            request.setMobile(user1.getPhone());
-            request.setEntercode(tCompany.getEnterCode());
-            request.setEmpName(tDriver.getName());
-            request.setEmpNickname(tDriver.getName());
-            request.setLoginNo(tDriver.getPhone());
-            request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
-            request.setMphone(tDriver.getPhone());
-            request.setEmail(tDriver.getPhone() + "@qyt.com");
-            request.setDeptId(0);
-            request.setPositionId(1);
-            request.setSuperLevel(0);
-            request.setHideMobile(0);
-            SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+            List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tDriver.getPhone(), tCompany.getEnterCode());
+            Long empId = null;
+            if(null == userInfoByPhone || userInfoByPhone.size() == 0){
+                SaveStaffNodeRequest request = new SaveStaffNodeRequest();
+                request.setMobile(tCompany.getPrincipalPhone());
+                request.setEntercode(tCompany.getEnterCode());
+                request.setEmpName(tDriver.getName());
+                request.setEmpNickname(tDriver.getName());
+                request.setLoginNo(tDriver.getPhone());
+                request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
+                request.setMphone(tDriver.getPhone());
+                request.setEmail(tDriver.getPhone() + "@qyt.com");
+                request.setDeptId(0);
+                request.setPositionId(1);
+                request.setSuperLevel(0);
+                request.setHideMobile(0);
+                SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+                empId = saveStaffNode.getEmpId();
+            }else{
+                empId = userInfoByPhone.get(0).getEmpId();
+            }
+            
             TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId());
-            tDriver.setEmpId(saveStaffNode.getEmpId());
+            tDriver.setEmpId(empId);
             tDriver.setEntercode(tCompany1.getEnterCode());
             tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
         }
@@ -840,25 +857,28 @@
     public Object delete(@RequestParam Integer tDriverId) {
         TDriver driver = tDriverService.selectById(tDriverId);
         driver.setFlag("3");
-        ShiroUser user = ShiroExtUtil.getUser();
-        User user1 = userService.selectById(user.getId());
+        ShiroUser user = shiroExtUtil.getUser();
         TCompany tCompany = itCompanyService.selectById(user.getObjectId());
-        //中台先删除司机
-        GetStaffNodeRequest request = new GetStaffNodeRequest();
-        request.setEmpId(driver.getEmpId());
-        request.setMobile(user1.getPhone());
-        request.setEntercode(tCompany.getEnterCode());
-        StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request);
-        if (null != staffNode && "1".equals(staffNode.getIsValid())) {
-            DeleteStafNodeRequest deleteStafNodeRequest = new DeleteStafNodeRequest();
-            deleteStafNodeRequest.setEmpId(driver.getEmpId());
-            deleteStafNodeRequest.setEntercode(tCompany.getEnterCode());
-            deleteStafNodeRequest.setMobile(user1.getPhone());
-            EmployeeUtil.ecrmDeleteStafNode(deleteStafNodeRequest);
+        if (null != driver.getEmpId()) {
+            //中台先删除司机
+            GetStaffNodeRequest request = new GetStaffNodeRequest();
+            request.setEmpId(driver.getEmpId());
+            request.setMobile(tCompany.getPrincipalPhone());
+            request.setEntercode(tCompany.getEnterCode());
+            StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request);
+            if (null != staffNode && "1".equals(staffNode.getIsValid())) {
+                DeleteStafNodeRequest deleteStafNodeRequest = new DeleteStafNodeRequest();
+                deleteStafNodeRequest.setEmpId(driver.getEmpId());
+                deleteStafNodeRequest.setEntercode(tCompany.getEnterCode());
+                deleteStafNodeRequest.setMobile(tCompany.getPrincipalPhone());
+                EmployeeUtil.ecrmDeleteStafNode(deleteStafNodeRequest);
+            }
         }
         tDriverService.updateById(driver);
         String value = (String) redisTemplate.opsForValue().get("DRIVER_" + driver.getPhone());
-        redisTemplate.delete(value);
+        if (ToolUtil.isNotEmpty(value)) {
+            redisTemplate.delete(value);
+        }
         redisTemplate.delete("DRIVER_" + driver.getId());
         redisTemplate.delete("DRIVER_" + driver.getPhone());
         return SUCCESS_TIP;
@@ -895,33 +915,42 @@
                 }).start();
     
                 String value = (String) redisTemplate.opsForValue().get("DRIVER_" + tDriver.getPhone());
-                redisTemplate.delete(value);
+                if (ToolUtil.isNotEmpty(value)) {
+                    redisTemplate.delete(value);
+                }
                 redisTemplate.delete("DRIVER_" + tDriver.getId());
                 redisTemplate.delete("DRIVER_" + tDriver.getPhone());
             }
             tDriver.setRemark(remark);
             //审核通过,在中台添加司机账号
-            if (2 == tDriver.getAuthState()) {
-                ShiroUser user = ShiroExtUtil.getUser();
+            if (2 == tDriver.getAuthState() && tDriver.getEmpId() == null) {
+                ShiroUser user = shiroExtUtil.getUser();
                 Integer objectId = user.getObjectId();
                 TCompany tCompany = itCompanyService.selectById(objectId);
-                User user1 = userService.selectById(user.getId());
-                SaveStaffNodeRequest request = new SaveStaffNodeRequest();
-                request.setMobile(user1.getPhone());
-                request.setEntercode(tCompany.getEnterCode());
-                request.setEmpName(tDriver.getName());
-                request.setEmpNickname(tDriver.getName());
-                request.setLoginNo(tDriver.getPhone());
-                request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
-                request.setMphone(tDriver.getPhone());
-                request.setEmail(tDriver.getPhone() + "@qyt.com");
-                request.setDeptId(0);
-                request.setPositionId(1);
-                request.setSuperLevel(0);
-                request.setHideMobile(0);
-                SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+                List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tDriver.getPhone(), tCompany.getEnterCode());
+                Long empId = null;
+                if(null == userInfoByPhone || userInfoByPhone.size() == 0){
+                    SaveStaffNodeRequest request = new SaveStaffNodeRequest();
+                    request.setMobile(tCompany.getPrincipalPhone());
+                    request.setEntercode(tCompany.getEnterCode());
+                    request.setEmpName(tDriver.getName());
+                    request.setEmpNickname(tDriver.getName());
+                    request.setLoginNo(tDriver.getPhone());
+                    request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
+                    request.setMphone(tDriver.getPhone());
+                    request.setEmail(tDriver.getPhone() + "@qyt.com");
+                    request.setDeptId(0);
+                    request.setPositionId(1);
+                    request.setSuperLevel(0);
+                    request.setHideMobile(0);
+                    SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+                    empId = saveStaffNode.getEmpId();
+                }else{
+                    empId = userInfoByPhone.get(0).getEmpId();
+                }
+                
                 TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId());
-                tDriver.setEmpId(saveStaffNode.getEmpId());
+                tDriver.setEmpId(empId);
                 tDriver.setEntercode(tCompany1.getEnterCode());
                 tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
             }
@@ -959,27 +988,27 @@
                 tDriver.setFranchiseeId(franchiseeId);
             }
         }else if (2 == roleType) {  //分公司
-            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
-                tDriver.setCompanyId(ShiroExtUtil.getUser().getObjectId());
+            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
+                tDriver.setCompanyId(shiroExtUtil.getUser().getObjectId());
             }
             if (SinataUtil.isNotEmpty(franchiseeId)) {
                 tDriver.setFranchiseeId(franchiseeId);
             }
-        }else if (3 == roleType) {  //加盟商
-            TCompany tCompany = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId());
+        } else if (3 == roleType) {  //加盟商
+            TCompany tCompany = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId());
             if (SinataUtil.isNotEmpty(tCompany)) {
                 tDriver.setCompanyId(tCompany.getSuperiorId());
             }
-            if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) {
-                tDriver.setFranchiseeId(ShiroExtUtil.getUser().getObjectId());
+            if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) {
+                tDriver.setFranchiseeId(shiroExtUtil.getUser().getObjectId());
             }
         }
         tDriver.setUpdateTime(new Date());
-        tDriver.setUpdateUser(ShiroExtUtil.getUser().getId());
+        tDriver.setUpdateUser(shiroExtUtil.getUser().getId());
 //        tDriver.setPassword(MD5Util.encrypt(tDriver.getPassword()));
-        if(ToolUtil.isEmpty(tDriver.getPassword())){
+        if (ToolUtil.isEmpty(tDriver.getPassword())) {
             tDriver.setPassword(obj.getPassword());
-        }else{
+        } else {
             tDriver.setPassword(ShiroKit.md5(tDriver.getPassword(), "SA;d5#"));
         }
         obj.setCompanyId(tDriver.getCompanyId());
@@ -1027,18 +1056,18 @@
         obj.setEmergencyContactPhone(tDriver.getEmergencyContactPhone());
         obj.setEmergencyContactAddress(tDriver.getEmergencyContactAddress());
         obj.setUpdateTime(new Date());
-        obj.setUpdateUser(ShiroExtUtil.getUser().getId());
+        obj.setUpdateUser(shiroExtUtil.getUser().getId());
         tDriverService.updateAllColumnById(obj);
-
+    
         //删除业务
-        tDriverServiceService.delete(new EntityWrapper<TDriverService>().eq("driverId",tDriver.getId()));
-
+        tDriverServiceService.delete(new EntityWrapper<TDriverService>().eq("driverId", tDriver.getId()));
+    
         //删除线路
-        tDriverLineService.delete(new EntityWrapper<TDriverLine>().eq("driverId",tDriver.getId()));
-
+        tDriverLineService.delete(new EntityWrapper<TDriverLine>().eq("driverId", tDriver.getId()));
+    
         //添加经营业务
         String[] serverArray = serverBox.split(",");
-        for (int i=0;i<serverArray.length;i++){
+        for (int i = 0; i < serverArray.length; i++) {
             TDriverService service = new TDriverService();
             service.setDriverId(tDriver.getId());
             service.setType(Integer.valueOf(serverArray[i]));
@@ -1073,12 +1102,12 @@
     public void uploadDriverModel(HttpServletRequest request, HttpServletResponse response) {
         // 表格数据【封装】
         List<List<String>> dataList = new ArrayList<List<String>>();
-
+    
         String title = "";
-
+    
         // 首行【封装】
         List<String> shellList = new ArrayList<String>();
-        if (ShiroExtUtil.getUser().getRoleType() == 1) {
+        if (shiroExtUtil.getUser().getRoleType() == 1) {
             title = "平台导入司机模板";
         
             shellList.add("司机名称");
@@ -1100,7 +1129,7 @@
             shellList.add("经营业务:包车[是/否]");
             shellList.add("登录账号[手机号]");
             shellList.add("登录密码[密码长度为6-18]");
-        } else if (ShiroExtUtil.getUser().getRoleType() == 2) {
+        } else if (shiroExtUtil.getUser().getRoleType() == 2) {
             title = "分公司导入司机模板";
         
             shellList.add("司机名称");
@@ -1120,7 +1149,7 @@
             shellList.add("经营业务:包车[是/否]");
             shellList.add("登录账号[手机号]");
             shellList.add("登录密码[密码长度为6-18]");
-        } else if (ShiroExtUtil.getUser().getRoleType() == 3) {
+        } else if (shiroExtUtil.getUser().getRoleType() == 3) {
             title = "加盟商导入司机模板";
         
             shellList.add("司机名称");
@@ -1161,7 +1190,7 @@
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
         MultipartFile file = (MultipartFile) multipartRequest.getFile("myfile");
         try {
-            if (ShiroExtUtil.getUser().getRoleType() == 1) {
+            if (shiroExtUtil.getUser().getRoleType() == 1) {
                 Workbook book = WoUtil.ImportFile(file);
                 Sheet sh = book.getSheetAt(0);   //获取到第一个表
                 for (int i = 1; i <= sh.getLastRowNum(); i++) {
@@ -1172,16 +1201,16 @@
                     if (SinataUtil.isNotEmpty(cell0)) {
                         zero = String.valueOf(cell0.getStringCellValue()).trim();
                     }
-
+            
                     Cell cell1 = row.getCell(1);  //所属机构[平台司机/加盟司机]
                     String one = null;
-                    if (SinataUtil.isNotEmpty(cell1)){
+                    if (SinataUtil.isNotEmpty(cell1)) {
                         one = String.valueOf(cell1.getStringCellValue()).trim();
                     }
-
+            
                     Cell cell2 = row.getCell(2);  //所属分公司[提示:加盟司机选填]
                     String two = null;
-                    if (SinataUtil.isNotEmpty(cell2)){
+                    if (SinataUtil.isNotEmpty(cell2)) {
                         two = String.valueOf(cell2.getStringCellValue()).trim();
                     }
 
@@ -1374,9 +1403,9 @@
                         driver.setDriverAge(Integer.valueOf(six));
                         driver.setDriveCard(five);
                         driver.setTaxiAptitudeCard(nine);
-                        if ("平台司机".equals(one)){
+                        if ("平台司机".equals(one)) {
                             driver.setIsPlatCar(1);
-                        }else if ("加盟司机".equals(one)){
+                        } else if ("加盟司机".equals(one)) {
                             driver.setIsPlatCar(2);
                         }
                         driver.setCompanyId(companyId);
@@ -1384,36 +1413,43 @@
                         driver.setState(2);
                         driver.setAuthState(2);
                         driver.setFlag("1");
-                        driver.setInsertUser(ShiroExtUtil.getUser().getId());
+                        driver.setInsertUser(shiroExtUtil.getUser().getId());
                         driver.setInsertTime(new Date());
                         driver.setAddType(2);
-                        driver.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
+                        driver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
                         if (SinataUtil.isNotEmpty(eight)) {
                             driver.setDriverAddress(eight);
                         }
     
                         //审核通过,在中台添加司机账号
                         if (2 == driver.getAuthState()) {
-                            ShiroUser user = ShiroExtUtil.getUser();
+                            ShiroUser user = shiroExtUtil.getUser();
                             Integer objectId = user.getObjectId();
                             TCompany tCompany = itCompanyService.selectById(objectId);
-                            User user1 = userService.selectById(user.getId());
-                            SaveStaffNodeRequest saveStaffNodeRequest = new SaveStaffNodeRequest();
-                            saveStaffNodeRequest.setMobile(user1.getPhone());
-                            saveStaffNodeRequest.setEntercode(tCompany.getEnterCode());
-                            saveStaffNodeRequest.setEmpName(driver.getName());
-                            saveStaffNodeRequest.setEmpNickname(driver.getName());
-                            saveStaffNodeRequest.setLoginNo(driver.getPhone());
-                            saveStaffNodeRequest.setEmpSex(driver.getSex() == 1 ? "男" : "女");
-                            saveStaffNodeRequest.setMphone(driver.getPhone());
-                            saveStaffNodeRequest.setEmail(driver.getPhone() + "@qyt.com");
-                            saveStaffNodeRequest.setDeptId(0);
-                            saveStaffNodeRequest.setPositionId(1);
-                            saveStaffNodeRequest.setSuperLevel(0);
-                            saveStaffNodeRequest.setHideMobile(0);
-                            SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(saveStaffNodeRequest);
+                            List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver.getPhone(), tCompany.getEnterCode());
+                            Long empId = null;
+                            if(null == userInfoByPhone || userInfoByPhone.size() == 0){
+                                SaveStaffNodeRequest saveStaffNodeRequest = new SaveStaffNodeRequest();
+                                saveStaffNodeRequest.setMobile(tCompany.getPrincipalPhone());
+                                saveStaffNodeRequest.setEntercode(tCompany.getEnterCode());
+                                saveStaffNodeRequest.setEmpName(driver.getName());
+                                saveStaffNodeRequest.setEmpNickname(driver.getName());
+                                saveStaffNodeRequest.setLoginNo(driver.getPhone());
+                                saveStaffNodeRequest.setEmpSex(driver.getSex() == 1 ? "男" : "女");
+                                saveStaffNodeRequest.setMphone(driver.getPhone());
+                                saveStaffNodeRequest.setEmail(driver.getPhone() + "@qyt.com");
+                                saveStaffNodeRequest.setDeptId(0);
+                                saveStaffNodeRequest.setPositionId(1);
+                                saveStaffNodeRequest.setSuperLevel(0);
+                                saveStaffNodeRequest.setHideMobile(0);
+                                SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(saveStaffNodeRequest);
+                                empId = saveStaffNode.getEmpId();
+                            }else{
+                                empId = userInfoByPhone.get(0).getEmpId();
+                            }
+                            
                             TCompany tCompany1 = itCompanyService.selectById(driver.getCompanyId());
-                            driver.setEmpId(saveStaffNode.getEmpId());
+                            driver.setEmpId(empId);
                             driver.setEntercode(tCompany1.getEnterCode());
                             driver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
                         }
@@ -1449,7 +1485,7 @@
                             itDriverServiceService.insert(service);
                         }
                         //添加小件跨城物流服务模式
-                        if ("是".equals(fifteen)){
+                        if ("是".equals(fifteen)) {
                             TDriverService service = new TDriverService();
                             service.setDriverId(driver.getId());
                             service.setType(5);
@@ -1464,7 +1500,7 @@
                         }
                     }
                 }
-            } else if (ShiroExtUtil.getUser().getRoleType() == 2) {
+            } else if (shiroExtUtil.getUser().getRoleType() == 2) {
                 Workbook book = WoUtil.ImportFile(file);
                 Sheet sh = book.getSheetAt(0);   //获取到第一个表
                 for (int i = 1; i <= sh.getLastRowNum(); i++) {
@@ -1475,16 +1511,16 @@
                     if (SinataUtil.isNotEmpty(cell0)) {
                         zero = String.valueOf(cell0.getStringCellValue()).trim();
                     }
-
+            
                     Cell cell1 = row.getCell(1);  //所属加盟商[选填]
                     String one = null;
-                    if (SinataUtil.isNotEmpty(cell1)){
+                    if (SinataUtil.isNotEmpty(cell1)) {
                         one = String.valueOf(cell1.getStringCellValue()).trim();
                     }
-
+            
                     Cell cell2 = row.getCell(2);  //性别[男/女]
                     String two = null;
-                    if (SinataUtil.isNotEmpty(cell2)){
+                    if (SinataUtil.isNotEmpty(cell2)) {
                         two = String.valueOf(cell2.getStringCellValue()).trim();
                     }
 
@@ -1616,24 +1652,24 @@
                             return new ErrorTip(500, "驾龄格式不正确");
                         }
                         //判断手机号
-                        if (!isPhone(fifteen)){
+                        if (!isPhone(fifteen)) {
                             return new ErrorTip(500, "登录账号[手机号]格式不正确");
                         }
                         //判断登录密码
-                        if (!isPassword(sixteen)){
+                        if (!isPassword(sixteen)) {
                             return new ErrorTip(500, "登录密码格式不正确");
                         }
                         //查找平台公司
-                        Integer companyId = ShiroExtUtil.getUser().getObjectId();
+                        Integer companyId = shiroExtUtil.getUser().getObjectId();
                         Integer franchiseeId = 0;
                         //判断所属分公司是否存在
-                        if (SinataUtil.isNotEmpty(one)){
-                            TCompany franchisee = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("superiorId",companyId).eq("name", one).eq("type", 3).notIn("flag", "3").last(" limit 1"));
-                            if (SinataUtil.isNotEmpty(franchisee)){
+                        if (SinataUtil.isNotEmpty(one)) {
+                            TCompany franchisee = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("superiorId", companyId).eq("name", one).eq("type", 3).notIn("flag", "3").last(" limit 1"));
+                            if (SinataUtil.isNotEmpty(franchisee)) {
                                 franchiseeId = franchisee.getId();
                             }
                         }
-
+    
                         TDriver driver = new TDriver();
                         driver.setAccount(fifteen);
                         driver.setJobNumber(eight);
@@ -1655,17 +1691,17 @@
                         driver.setState(1);
                         driver.setAuthState(1);
                         driver.setFlag("1");
-                        driver.setInsertUser(ShiroExtUtil.getUser().getId());
+                        driver.setInsertUser(shiroExtUtil.getUser().getId());
                         driver.setInsertTime(new Date());
                         driver.setAddType(3);
-                        driver.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
-                        if (SinataUtil.isNotEmpty(six)){
+                        driver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
+                        if (SinataUtil.isNotEmpty(six)) {
                             driver.setDriverAddress(six);
                         }
                         tDriverService.insert(driver);
-
+    
                         //添加快车服务模式
-                        if ("是".equals(nine)){
+                        if ("是".equals(nine)) {
                             TDriverService service = new TDriverService();
                             service.setDriverId(driver.getId());
                             service.setType(1);
@@ -1693,7 +1729,7 @@
                             itDriverServiceService.insert(service);
                         }
                         //添加小件跨城物流服务模式
-                        if ("是".equals(thirteen)){
+                        if ("是".equals(thirteen)) {
                             TDriverService service = new TDriverService();
                             service.setDriverId(driver.getId());
                             service.setType(5);
@@ -1709,7 +1745,7 @@
     
                     }
                 }
-            } else if (ShiroExtUtil.getUser().getRoleType() == 3) {
+            } else if (shiroExtUtil.getUser().getRoleType() == 3) {
                 Workbook book = WoUtil.ImportFile(file);
                 Sheet sh = book.getSheetAt(0);   //获取到第一个表
                 for (int i = 1; i <= sh.getLastRowNum(); i++) {
@@ -1720,16 +1756,16 @@
                     if (SinataUtil.isNotEmpty(cell0)) {
                         zero = String.valueOf(cell0.getStringCellValue()).trim();
                     }
-
+            
                     Cell cell2 = row.getCell(1);  //性别[男/女]
                     String one = null;
-                    if (SinataUtil.isNotEmpty(cell2)){
+                    if (SinataUtil.isNotEmpty(cell2)) {
                         one = String.valueOf(cell2.getStringCellValue()).trim();
                     }
-
+            
                     Cell cell3 = row.getCell(2);  //驾驶证号码
                     String two = null;
-                    if (SinataUtil.isNotEmpty(cell3)){
+                    if (SinataUtil.isNotEmpty(cell3)) {
                         two = String.valueOf(cell3.getStringCellValue()).trim();
                     }
 
@@ -1855,25 +1891,25 @@
                             return new ErrorTip(500, "驾龄格式不正确");
                         }
                         //判断手机号
-                        if (!isPhone(fourteen)){
+                        if (!isPhone(fourteen)) {
                             return new ErrorTip(500, "登录账号[手机号]格式不正确");
                         }
                         //判断登录密码
-                        if (!isPassword(fifteen)){
+                        if (!isPassword(fifteen)) {
                             return new ErrorTip(500, "登录密码格式不正确");
                         }
                         //查找平台公司
                         Integer companyId = 0;
                         Integer franchiseeId = 0;
-                        TCompany franchisee = itCompanyService.selectById(ShiroExtUtil.getUser().getObjectId());
-                        if (SinataUtil.isNotEmpty(franchisee)){
+                        TCompany franchisee = itCompanyService.selectById(shiroExtUtil.getUser().getObjectId());
+                        if (SinataUtil.isNotEmpty(franchisee)) {
                             companyId = franchisee.getSuperiorId();
                             franchiseeId = franchisee.getId();
                         }
-                        if (companyId == 0 && franchiseeId == 0){
+                        if (companyId == 0 && franchiseeId == 0) {
                             return new ErrorTip(500, "当前登录账户上级分公司不能为空");
                         }
-
+    
                         TDriver driver = new TDriver();
                         driver.setAccount(fourteen);
                         driver.setJobNumber(seven);
@@ -1895,17 +1931,17 @@
                         driver.setState(1);
                         driver.setAuthState(1);
                         driver.setFlag("1");
-                        driver.setInsertUser(ShiroExtUtil.getUser().getId());
+                        driver.setInsertUser(shiroExtUtil.getUser().getId());
                         driver.setInsertTime(new Date());
                         driver.setAddType(4);
-                        driver.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
-                        if (SinataUtil.isNotEmpty(five)){
+                        driver.setAddObjectId(shiroExtUtil.getUser().getObjectId());
+                        if (SinataUtil.isNotEmpty(five)) {
                             driver.setDriverAddress(five);
                         }
                         tDriverService.insert(driver);
-
+    
                         //添加快车服务模式
-                        if ("是".equals(eight)){
+                        if ("是".equals(eight)) {
                             TDriverService service = new TDriverService();
                             service.setDriverId(driver.getId());
                             service.setType(1);
@@ -2007,7 +2043,7 @@
      */
     @RequestMapping(value = "/outDriver")
     public void outDriver(HttpServletRequest request, HttpServletResponse response) {
-        List<Map<String, Object>> listMap = tDriverService.getDriverListNoPage(ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId());
+        List<Map<String, Object>> listMap = tDriverService.getDriverListNoPage(shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId());
 
         // 表格数据【封装】
         List<List<String>> dataList = new ArrayList<>();

--
Gitblit v1.7.1