From 8675ddc7e76f418ee47adc50ee7bac35171a9620 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期日, 15 六月 2025 01:59:48 +0800
Subject: [PATCH] 更新司机端中台接口

---
 DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java |   98 +++++++++++++++++++++++++++++--------------------
 1 files changed, 58 insertions(+), 40 deletions(-)

diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
index e0455a4..20d4b61 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -1,7 +1,9 @@
 package com.stylefeng.guns.modular.api;
 
+import cn.hutool.core.io.FileUtil;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.stylefeng.guns.config.properties.GunsProperties;
 import com.stylefeng.guns.core.util.DateUtil;
 import com.stylefeng.guns.core.util.ToolUtil;
 import com.stylefeng.guns.modular.crossCity.model.OrderCrossCity;
@@ -12,7 +14,10 @@
 import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
 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.ALiSendSms;
+import com.stylefeng.guns.modular.system.util.ResultUtil;
+import com.stylefeng.guns.modular.system.util.WeChatUtil;
+import com.stylefeng.guns.modular.system.util.qianyuntong.SMSUtil;
 import com.stylefeng.guns.modular.system.warpper.*;
 import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
 import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
@@ -21,6 +26,7 @@
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
@@ -39,46 +45,49 @@
 @RestController
 @RequestMapping("")
 public class DriverController {
-
+    
     @Autowired
-    private RedisUtil redisUtil;
+    private RedisTemplate redisTemplate;
     @Autowired
     private IDriverService driverService;
-
+    
     @Autowired
     private IOrderPositionService orderPositionService;
-
+    
     @Autowired
     private ISmsrecordService smsrecordService;
-
+    
     @Autowired
     private IDriverOrdersService driverOrdersService;
-
+    
     @Autowired
     private ICarService carService;
-
+    
     @Autowired
     private ALiSendSms aLiSendSms;
-
+    
     @Autowired
     private IOrderTaxiService orderTaxiService;
-
+    
     @Autowired
     private IIncomeService incomeService;
-
+    
     @Autowired
     private IOrderPrivateCarService orderPrivateCarService;
-
+    
     @Autowired
     private IOrderCrossCityService orderCrossCityService;
-
+    
     @Autowired
     private IOrderLogisticsService orderLogisticsService;
-
-
-
+    
+    @Autowired
+    private GunsProperties gunsProperties;
+    
+    
     /**
      * 获取短信验证码
+     *
      * @param phone
      * @return
      */
@@ -89,21 +98,22 @@
             @ApiImplicitParam(value = "手机号码", name = "phone", required = true, dataType = "String"),
             @ApiImplicitParam(value = "场景类型(1=身份验证,2=登录确认,3=用户注册,4=修改密码)", name = "type", required = true, dataType = "String")
     })
-    public ResultUtil queryCaptcha(String phone, Integer type){
-        if(ToolUtil.isNotEmpty(phone)){
+    public ResultUtil queryCaptcha(String phone, Integer type) {
+        if (ToolUtil.isNotEmpty(phone)) {
             try {
                 return driverService.queryCaptcha(phone, type);
-            }catch (Exception e){
+            } catch (Exception e) {
                 e.printStackTrace();
                 return ResultUtil.runErr();
             }
-        }else{
+        } else {
             return ResultUtil.paranErr();
         }
     }
-
+    
     /**
      * 验证短信验证码
+     *
      * @param phone
      * @param code
      * @return
@@ -216,21 +226,22 @@
             return ResultUtil.runErr();
         }
     }
-
-
+    
+    
     /**
      * 司机注册审核后的短信
+     *
      * @param uid
      * @param type
      * @return
      */
     @ResponseBody
     @PostMapping("/base/driver/sendsms")
-    public ResultUtil sendsms(Integer uid, Integer type){
+    public ResultUtil sendsms(Integer uid, Integer type) {
         try {
             Driver driver = driverService.selectById(uid);
             String templateCode = null;
-            switch (type){
+            switch (type) {
                 case 1:
                     templateCode = "SMS_229648175";//身份验证
                     break;
@@ -250,7 +261,8 @@
                     templateCode = "SMS_229613326";//司机注册失败
                     break;
             }
-            String s = aLiSendSms.sendSms(driver.getPhone(), templateCode, "{}");
+//            String s = aLiSendSms.sendSms(driver.getPhone(), templateCode, "{}");
+            SMSUtil.sendVerifyCode(driver.getPhone());
             return ResultUtil.success();
         }catch (Exception e){
             e.printStackTrace();
@@ -1402,29 +1414,35 @@
 
     @Autowired
     private WeChatUtil weChatUtil;
+    
     @ResponseBody
     @PostMapping("/api/driver/getDriverCode")
     @ApiOperation(value = "获取司机端的二维码", tags = {"司机端-个人中心"}, notes = "")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResultUtil getDriverCode(HttpServletRequest request){
+    public ResultUtil getDriverCode(HttpServletRequest request) {
         try {
             Integer driverId = driverService.getUserIdFormRedis(request);
-            if(null == driverId){
+            if (null == driverId) {
                 return ResultUtil.tokenErr();
             }
             Driver driver = driverService.selectById(driverId);
-            if(driver!=null){
+            if (driver != null) {
                 String fileName = driver.getQrCode();
-                if(fileName==null || "".equals(fileName) ){
+                if (fileName == null || "".equals(fileName)) {
                     String appletPath = "pages/home/scanPage/scanPage";
                     //HttpURLConnection httpURLConnection = weChatUtil.getwxacodeunlimit(appletPath, "d=" + driverId + "&k=" + 0, "release",driverId);
-                    InputStream inputStream = weChatUtil.getwxacodeunlimit(appletPath, "driverId=" + driverId , "release");
-                    if(inputStream!=null){
-                        fileName = OssUploadUtil.ossUploadByStream(driverId,inputStream);
-                        System.out.println(fileName);
-                        driver.setQrCode(fileName);
+                    InputStream inputStream = weChatUtil.getwxacodeunlimit(appletPath, "driverId=" + driverId, "release");
+                    if (inputStream != null) {
+                        // 上传文件目录
+                        fileName = UUID.randomUUID().toString() + ".png";
+                        String fileSavePath = gunsProperties.getFileUploadPath() + "img\\";
+                        FileUtil.writeFromStream(inputStream, fileName);
+                        String pictureName = gunsProperties.getPictureServerAddress() + "img/" + fileName;
+//			            fileName = OssUploadUtil.ossUploadByStream(driverId, inputStream);
+                        System.out.println(pictureName);
+                        driver.setQrCode(pictureName);
                         driverService.updateById(driver);
                     }
                 }
@@ -1459,13 +1477,13 @@
             driver.setAuthState(3);
             driverService.updateById(driver);
             //开始验证当前账号是否在别处登录
-            String value = redisUtil.getValue("DRIVER_" + driverId);
+            String value = (String) redisTemplate.opsForValue().get("DRIVER_" + driverId);
             if (ToolUtil.isNotEmpty(value)) {//将另外设备上的强迫下线
                 //开始清除redis中无效的数据
-                String key = redisUtil.getValue("DRIVER_" + driver.getPhone());
-                redisUtil.remove(key);//删除个人信息数据
-                redisUtil.remove("DRIVER_" + driver.getPhone());//删除后台冻结相关缓存
-                redisUtil.remove("DRIVER_" + driverId);//清除存储的token
+                String key = (String) redisTemplate.opsForValue().get("DRIVER_" + driver.getPhone());
+                redisTemplate.delete(key);//删除个人信息数据
+                redisTemplate.delete("DRIVER_" + driver.getPhone());//删除后台冻结相关缓存
+                redisTemplate.delete("DRIVER_" + driverId);//清除存储的token
             }
             return ResultUtil.success();
         } catch (Exception e) {

--
Gitblit v1.7.1