From 7bf07f46d7c39fa01b6d8abd860bd80c210d86cb Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 09 十月 2025 15:48:31 +0800
Subject: [PATCH] 修改上传图片配置
---
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..4e745f5 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("/data/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("/data/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("/data/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("/data/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 /data/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