From ffe705d1fe2c4fa60d457f94b3e2be0cfeaf24c0 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期日, 15 六月 2025 01:58:30 +0800
Subject: [PATCH] 修改功能

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java |  224 +++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 172 insertions(+), 52 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 f79de75..6945131 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
@@ -11,6 +11,7 @@
 import com.stylefeng.guns.core.common.constant.factory.PageFactory;
 import com.stylefeng.guns.core.log.LogObjectHolder;
 import com.stylefeng.guns.core.shiro.ShiroKit;
+import com.stylefeng.guns.core.shiro.ShiroUser;
 import com.stylefeng.guns.core.util.DateUtil;
 import com.stylefeng.guns.core.util.SinataUtil;
 import com.stylefeng.guns.core.util.ToolUtil;
@@ -20,12 +21,15 @@
 import com.stylefeng.guns.modular.system.model.*;
 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.model.*;
 import org.apache.poi.ss.usermodel.Cell;
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.*;
@@ -64,35 +68,43 @@
 
     @Autowired
     private ITLineService itLineService;
-
+    
     @Autowired
     private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
-
+    
     @Resource
     private DriverTrainMapper driverTrainMapper;
-
+    
     @Resource
     private DriverPunishMapper driverPunishMapper;
-
+    
     @Autowired
-    private RedisUtil redisUtil;
-
+    private RedisTemplate redisTemplate;
+    
     @Value("${pushMinistryOfTransport}")
     private boolean pushMinistryOfTransport;
-
-
-
+    
+    @Autowired
+    private ITCompanyService itCompanyService;
+    
+    @Autowired
+    private ITDriverServiceService itDriverServiceService;
+    
     @Autowired
     private ITComplaintService tComplaintService;
-
+    
+    @Autowired
+    private IUserService userService;
+    
     /**
      * 跳转投诉页面
+     *
      * @return
      */
     @RequestMapping("complaint")
-    public String complaint(Model model,Integer driverId) {
-
-        model.addAttribute("id",driverId);
+    public String complaint(Model model, Integer driverId) {
+        
+        model.addAttribute("id", driverId);
         return PREFIX + "tComplaint.html";
     }
 
@@ -633,28 +645,52 @@
             if (1 == authState){
                 type = 5;
                 tDriver.setAuthState(2);
-
+    
                 new Thread(new Runnable() {
                     @Override
                     public void run() {
-                        if(pushMinistryOfTransport){//上传数据
+                        if (pushMinistryOfTransport) {//上传数据
                             pushMinistryOfTransportUtil.baseInfoCompanyStat();
                             pushMinistryOfTransportUtil.baseInfoDriver(id);
                             pushMinistryOfTransportUtil.baseInfoDriverApp(id);
                         }
                     }
                 }).start();
-            }else{
+            } else {
                 type = 6;
                 tDriver.setAuthState(4);
             }
-
-            Map<String,String> map = new HashMap<>();
+    
+            Map<String, String> map = new HashMap<>();
             map.put("uid", String.valueOf(tDriver.getId()));
             map.put("type", String.valueOf(type));
             String result = HttpRequestUtil.postRequest(PushURL.driver_auth_url, map);
-            System.out.println("司机注册审核发送短信 :【driverId="+tDriver.getId().toString()+"】,调用接口:"+result);
-
+            System.out.println("司机注册审核发送短信 :【driverId=" + tDriver.getId().toString() + "】,调用接口:" + result);
+            //审核通过,在中台添加司机账号
+            if (2 == tDriver.getAuthState()) {
+                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("qyt@qyt.com");
+                request.setDeptId(0);
+                request.setPositionId(1);
+                request.setSuperLevel(0);
+                request.setHideMobile(0);
+                SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+                TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId());
+                tDriver.setEmpId(saveStaffNode.getEmpId());
+                tDriver.setEntercode(tCompany1.getEnterCode());
+                tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
+            }
             tDriverService.updateById(tDriver);
         }
         return SUCCESS_TIP;
@@ -728,23 +764,47 @@
         tDriver.setInsertTime(new Date());
         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();
+            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("qyt@qyt.com");
+            request.setDeptId(0);
+            request.setPositionId(1);
+            request.setSuperLevel(0);
+            request.setHideMobile(0);
+            SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+            TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId());
+            tDriver.setEmpId(saveStaffNode.getEmpId());
+            tDriver.setEntercode(tCompany1.getEnterCode());
+            tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
+        }
         tDriverService.insert(tDriver);
-
+    
         //添加经营业务
         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]));
             tDriverServiceService.insert(service);
-
-            if (3 == Integer.valueOf(serverArray[i])){
+        
+            if (3 == Integer.valueOf(serverArray[i])) {
                 //添加线路
-                if (SinataUtil.isNotEmpty(lineStr)){
-                    addLine(lineStr,tDriver.getId());
+                if (SinataUtil.isNotEmpty(lineStr)) {
+                    addLine(lineStr, tDriver.getId());
                 }
             }
         }
@@ -780,11 +840,27 @@
     public Object delete(@RequestParam Integer tDriverId) {
         TDriver driver = tDriverService.selectById(tDriverId);
         driver.setFlag("3");
+        ShiroUser user = ShiroKit.getUser();
+        User user1 = userService.selectById(user.getId());
+        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 ("1".equals(staffNode.getIsValid())) {
+            DeleteStafNodeRequest deleteStafNodeRequest = new DeleteStafNodeRequest();
+            deleteStafNodeRequest.setEmpId(driver.getEmpId());
+            deleteStafNodeRequest.setEntercode(tCompany.getEnterCode());
+            deleteStafNodeRequest.setMobile(user1.getPhone());
+            EmployeeUtil.ecrmDeleteStafNode(deleteStafNodeRequest);
+        }
         tDriverService.updateById(driver);
-        String value = redisUtil.getValue("DRIVER_" + driver.getPhone());
-        redisUtil.remove(value);
-        redisUtil.remove("DRIVER_" + driver.getId());
-        redisUtil.remove("DRIVER_" + driver.getPhone());
+        String value = (String) redisTemplate.opsForValue().get("DRIVER_" + driver.getPhone());
+        redisTemplate.delete(value);
+        redisTemplate.delete("DRIVER_" + driver.getId());
+        redisTemplate.delete("DRIVER_" + driver.getPhone());
         return SUCCESS_TIP;
     }
     /**
@@ -811,19 +887,45 @@
                 new Thread(new Runnable() {
                     @Override
                     public void run() {
-                        if(pushMinistryOfTransport){//上传数据
+                        if (pushMinistryOfTransport) {//上传数据
                             pushMinistryOfTransportUtil.baseInfoCompanyStat();
                             pushMinistryOfTransportUtil.baseInfoDriver(driverId);
                         }
                     }
                 }).start();
-
-                String value = redisUtil.getValue("DRIVER_" + tDriver.getPhone());
-                redisUtil.remove(value);
-                redisUtil.remove("DRIVER_" + tDriver.getId());
-                redisUtil.remove("DRIVER_" + tDriver.getPhone());
+    
+                String value = (String) redisTemplate.opsForValue().get("DRIVER_" + tDriver.getPhone());
+                redisTemplate.delete(value);
+                redisTemplate.delete("DRIVER_" + tDriver.getId());
+                redisTemplate.delete("DRIVER_" + tDriver.getPhone());
             }
             tDriver.setRemark(remark);
+            //审核通过,在中台添加司机账号
+            if (2 == tDriver.getAuthState()) {
+                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("qyt@qyt.com");
+                request.setDeptId(0);
+                request.setPositionId(1);
+                request.setSuperLevel(0);
+                request.setHideMobile(0);
+                SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request);
+                TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId());
+                tDriver.setEmpId(saveStaffNode.getEmpId());
+                tDriver.setEntercode(tCompany1.getEnterCode());
+                tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
+            }
+    
             tDriverService.updateById(tDriver);
         }
         return SUCCESS_TIP;
@@ -1286,14 +1388,40 @@
                         driver.setInsertTime(new Date());
                         driver.setAddType(2);
                         driver.setAddObjectId(ShiroExtUtil.getUser().getObjectId());
-                        if(SinataUtil.isNotEmpty(eight)){
+                        if (SinataUtil.isNotEmpty(eight)) {
                             driver.setDriverAddress(eight);
                         }
+    
+                        //审核通过,在中台添加司机账号
+                        if (2 == driver.getAuthState()) {
+                            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("qyt@qyt.com");
+                            saveStaffNodeRequest.setDeptId(0);
+                            saveStaffNodeRequest.setPositionId(1);
+                            saveStaffNodeRequest.setSuperLevel(0);
+                            saveStaffNodeRequest.setHideMobile(0);
+                            SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(saveStaffNodeRequest);
+                            TCompany tCompany1 = itCompanyService.selectById(driver.getCompanyId());
+                            driver.setEmpId(saveStaffNode.getEmpId());
+                            driver.setEntercode(tCompany1.getEnterCode());
+                            driver.setEnterId(Long.valueOf(tCompany1.getEnterCode()));
+                        }
                         tDriverService.insert(driver);
-
-
+    
+    
                         //添加快车服务模式
-                        if ("是".equals(eleven)){
+                        if ("是".equals(eleven)) {
                             TDriverService service = new TDriverService();
                             service.setDriverId(driver.getId());
                             service.setType(1);
@@ -1826,16 +1954,8 @@
         }
         return SUCCESS_TIP;
     }
-
-
-
-
-    @Autowired
-    private ITCompanyService itCompanyService;
-
-    @Autowired
-    private ITDriverServiceService itDriverServiceService;
-
+    
+    
     /**
      * 验证是否可以字符转为整数
      * @param str

--
Gitblit v1.7.1