From 4c99ee7028c3fe58a2cd4b8273b22c75c45574fc Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 16 五月 2025 10:27:41 +0800
Subject: [PATCH] 修改文档bug

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java |  105 ++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 85 insertions(+), 20 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java
index 2fc2388..b668c36 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java
@@ -6,6 +6,7 @@
 import com.google.code.kaptcha.Constants;
 import com.stylefeng.guns.core.common.constant.JwtConstants;
 import com.stylefeng.guns.core.common.exception.InvalidKaptchaException;
+import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.support.HttpKit;
 import com.stylefeng.guns.core.util.ToolUtil;
 import com.stylefeng.guns.modular.system.model.BankCard;
@@ -26,6 +27,8 @@
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
 import org.jsoup.nodes.Element;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -51,6 +54,8 @@
 @RestController
 @RequestMapping("")
 public class UserInfoController {
+    
+    Logger log = LoggerFactory.getLogger(UserInfoController.class);
 
     @Autowired
     private IUserInfoService userInfoService;
@@ -85,6 +90,8 @@
     
     @Autowired
     private FleetEngineUtil fleetEngineUtil;
+    
+    private String salt = "&a.s";
 
 
 
@@ -197,7 +204,32 @@
             return ResultUtil.paranErr();
         }
     }
-
+    
+    
+    /**
+     * 短信回调通知
+     * @param request
+     */
+    @ResponseBody
+    @PostMapping("/base/sendCellulantMessageCallback")
+    public void sendCellulantMessageCallback(HttpServletRequest request){
+        try {
+            StringBuilder sb = new StringBuilder();
+            InputStream inputStream = request.getInputStream();
+            String s;
+            BufferedReader in = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
+            while ((s = in.readLine()) != null) {
+                sb.append(s);
+            }
+            in.close();
+            inputStream.close();
+            log.info("短信通知回调:" + sb.toString());
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+    
+    
     @ResponseBody
     @PostMapping("/base/sedEmail")
     @ApiOperation(value = "获取邮箱验证码【1.0】", tags = {"用户端-登录"}, notes = "")
@@ -268,12 +300,12 @@
                 EmailUtil.send(email, language == 1 ? "邮箱验证" : language == 2 ? "Verification code" : "Code de validation",  document.html());
 
                 //开始生成pdf收据和html收据
-                File file = new File("/usr/local/nginx/html/files/html/");
+                File file = new File("/home/igotechgh/nginx/html/files/html/");
                 if(!file.exists()){
                     file.mkdirs();
                 }
                 String randomString = ToolUtil.getRandomString(10);
-                file = new File("/usr/local/nginx/html/files/html/mainbox_" + randomString + ".html");
+                file = new File("/home/igotechgh/nginx/html/files/html/mainbox_" + randomString + ".html");
                 if(!file.exists()){
                     file.createNewFile();
                 }
@@ -282,7 +314,7 @@
                 fileWriter.flush();
                 fileWriter.close();
 
-                String link ="http://182.160.16.251:81/files/html/mainbox_" + randomString + ".html";
+                String link ="https://igo.i-go.group/files/html/mainbox_" + randomString + ".html";
                 TEmail tEmail = new TEmail();
                 tEmail.setLink(link);
                 tEmail.setUserId(uid);
@@ -717,8 +749,9 @@
             Map<String, Object> map = userInfoService.queryUser(language, phone);
             if(null != map){
                 return ResultUtil.success(UserInfoWarpper.getUserInfoWarpper(map));
+            }else{
+                return ResultUtil.error(language == 1 ? "此账号不存在" : language == 2 ? "The account does not exist" : "Ce compte n’existe pas");
             }
-            return ResultUtil.success(new JSONObject());
         }catch (Exception e){
             e.printStackTrace();
             return ResultUtil.runErr();
@@ -765,11 +798,15 @@
             @ApiImplicitParam(value = "电话号码,没有传空字符串", name = "phone", required = true, dataType = "String"),
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResultUtil setUrgentUser(String name, String phone, HttpServletRequest request){
+    public ResultUtil setUrgentUser(String name, String phone, Integer language, HttpServletRequest request){
         try {
             Integer uid = userInfoService.getUserIdFormRedis(request);
             if(null == uid){
                 return ResultUtil.tokenErr();
+            }
+            UserInfo userInfo = userInfoService.selectById(uid);
+            if(ToolUtil.isEmpty(userInfo.getPhone())){
+                return ResultUtil.error(language == 1 ? "请先绑定手机号码" : language == 2 ? "Please bind your mobile phone number first." : "Veuillez d’abord vous inscrire en liant votre numéro de téléphone portable.");
             }
             String substring = phone.substring(0, 1);
             if("0".equals(substring)){
@@ -1151,12 +1188,12 @@
 
     @ResponseBody
     @RequestMapping("/base/user/image")
-    public String image(@RequestPart("file") MultipartFile file) {
+    public ResultUtil image(@RequestPart("file") MultipartFile file) {
         try {
-            String pictureName = OBSUploadUtil.inputStreamUpload(file);
-            return pictureName;
-        } catch (IOException e1) {
-            return null;
+            String pictureName = GoogleCloudStorageUtil.upload(file);
+            return ResultUtil.success(pictureName);
+        } catch (Exception e1) {
+            return ResultUtil.runErr();
         }
     }
 
@@ -1204,6 +1241,10 @@
             Integer uid = userInfoService.getUserIdFormRedis(request);
             if(null == uid){
                 return ResultUtil.tokenErr();
+            }
+            UserInfo userInfo = userInfoService.selectById(uid);
+            if(ToolUtil.isEmpty(userInfo.getPhone())){
+                return ResultUtil.error(language == 1 ? "请先绑定手机号码" : language == 2 ? "Please bind your mobile phone number first." : "Veuillez d’abord vous inscrire en liant votre numéro de téléphone portable.");
             }
             BigDecimal bigDecimal = new BigDecimal(code);
             long max = Long.MAX_VALUE;
@@ -1302,10 +1343,10 @@
         ServletOutputStream outputStream = null;
         try {
             if(orderType == 1){
-                fileInputStream = new FileInputStream(new File("/usr/local/nginx/html/files/pdf/ride_receipt_" + orderId + ".pdf"));
+                fileInputStream = new FileInputStream(new File("/home/igotechgh/nginx/html/files/pdf/ride_receipt_" + orderId + ".pdf"));
             }
             if(orderType == 4){
-                fileInputStream = new FileInputStream(new File("/usr/local/nginx/html/files/pdf/parcel_receipt_" + orderId + ".pdf"));
+                fileInputStream = new FileInputStream(new File("/home/igotechgh/nginx/html/files/pdf/parcel_receipt_" + orderId + ".pdf"));
             }
             BufferedInputStream bf = new BufferedInputStream(fileInputStream);
             outputStream = response.getOutputStream();
@@ -1368,14 +1409,21 @@
             new Timer().schedule(new TimerTask() {
                 @Override
                 public void run() {
-                    Process process = null;
                     try {
-                        process = Runtime.getRuntime().exec("rm -rf /usr/local/nginx/html/files/audio/" + fileName + ".mp3");
-                    } catch (IOException e) {
-                        throw new RuntimeException(e);
-                    }
-                    if (process != null) {
-                        process.destroy();
+                        // 使用Runtime执行命令
+                        Process process = Runtime.getRuntime().exec("sudo rm -rf /home/igotechgh/nginx/html/files/audio/" + fileName + ".mp3");
+                        // 读取命令的输出
+                        BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
+                        String line;
+                        while ((line = reader.readLine()) != null) {
+                            System.out.println(line);
+                        }
+                        // 等待命令执行完成
+                        process.waitFor();
+                        // 关闭流
+                        reader.close();
+                    } catch (IOException | InterruptedException e) {
+                        e.printStackTrace();
                     }
                 }
             }, 30000);
@@ -1384,4 +1432,21 @@
             throw new RuntimeException(e);
         }
     }
+    
+    
+    
+    @PostMapping("/base/user/delUserInfo")
+    public ResultUtil delUserInfo(String username, String password){
+        UserInfo userInfo = userInfoService.selectOne(new EntityWrapper<UserInfo>().eq("phone", username)
+                .ne("flag", 3));
+        if(null == userInfo){
+            return ResultUtil.error("Invalid account");
+        }
+        if(!ShiroKit.md5(password, salt).equals(userInfo.getPassWord())){
+            return ResultUtil.error("Wrong password");
+        }
+        userInfo.setFlag(3);
+        userInfoService.updateById(userInfo);
+        return ResultUtil.success();
+    }
 }

--
Gitblit v1.7.1