From 4705f9b4084d9ccddb601569b223f0fb41778a94 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 12 Aug 2021 15:28:46 +0800
Subject: [PATCH] fix

---
 zq-erp/src/main/java/com/matrix/system/app/action/ApiCommonAction.java |   68 ++++++++++++++++++++++++++++-----
 1 files changed, 57 insertions(+), 11 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiCommonAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiCommonAction.java
index c48fe6d..1ea1ccc 100644
--- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiCommonAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiCommonAction.java
@@ -2,16 +2,14 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.matrix.component.redis.RedisClient;
-import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.pojo.AjaxResult;
-import com.matrix.core.tools.LogUtil;
-import com.matrix.core.tools.StringUtils;
-import com.matrix.core.tools.UUIDUtil;
-import com.matrix.core.tools.WebUtil;
+import com.matrix.core.tools.*;
+import com.matrix.system.app.authority.AppAuthorityManager;
 import com.matrix.system.app.dto.LoginDto;
 import com.matrix.system.app.dto.PwdResetDto;
 import com.matrix.system.app.dto.SmsCodeDto;
 import com.matrix.system.app.dto.UploadPhotoDto;
+import com.matrix.system.app.utils.Sms106Send;
 import com.matrix.system.app.vo.UserInfoVo;
 import com.matrix.system.common.authority.DefaultAuthorityManager;
 import com.matrix.system.common.authority.strategy.AccountPasswordLogin;
@@ -19,6 +17,8 @@
 import com.matrix.system.common.bean.SysUsers;
 import com.matrix.system.common.service.SysUsersService;
 import com.matrix.system.common.tools.PasswordUtil;
+import com.matrix.system.common.tools.UploadUtil;
+import com.matrix.system.hive.bean.AppVersion;
 import com.matrix.system.hive.bean.SysShopInfo;
 import com.matrix.system.hive.plugin.util.CollectionUtils;
 import com.matrix.system.hive.plugin.util.ImageUtil;
@@ -27,20 +27,28 @@
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
+import org.apache.commons.fileupload.FileUploadException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
 
+import javax.servlet.http.HttpServletResponse;
 import java.io.File;
+import java.io.IOException;
 import java.io.UnsupportedEncodingException;
 import java.security.NoSuchAlgorithmException;
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author wzy
  * @date 2020-12-21
  **/
+@CrossOrigin(origins = "*")
 @Api(value = "CommonAction", tags = "手机端公共请求类(含登陆)")
 @RestController
 @RequestMapping(value = "/api/common")
@@ -53,7 +61,7 @@
     private SysShopInfoService sysShopInfoService;
 
     @Autowired
-    private DefaultAuthorityManager authorityManager;
+    private AppAuthorityManager authorityManager;
 
     @Autowired
     private RedisClient redisClient;
@@ -86,7 +94,6 @@
 
         String token = UUIDUtil.getRandomID();
         redisClient.saveValueForever(token, JSONObject.toJSONString(user));
-        redisClient.saveValueForever(user.getSuId().toString(), token);
 
         userInfoVo.setId(user.getSuId());
         userInfoVo.setName(user.getSuName());
@@ -94,6 +101,7 @@
         userInfoVo.setPhoto(user.getSuPhoto());
 
         AjaxResult result = AjaxResult.buildSuccessInstance("登陆成功");
+        authorityManager.initUserPower(result,user);
         result.putInMap("user", userInfoVo);
         result.putInMap("token", token);
         return result;
@@ -104,9 +112,16 @@
     public AjaxResult uploadPhotoBase64(@RequestBody @Validated UploadPhotoDto uploadPhotoDto) {
         // 文件保存目录路径
         String savePath = fileStoragePath;
+        String abstractPath= DateUtil.dateFormatStr(new Date(),DateUtil.DATE_FORMAT_NO_SPLITE_DD);
+        savePath=savePath+File.separator+abstractPath;
+
+        String fileName =UUIDUtil.getRandomID() + ".png";
+
+
         // 文件保存目录URL
         String saveUrl = nginxUrl;
-
+        LogUtil.debug("图片保存目录路径={}",fileStoragePath);
+        LogUtil.debug("图片保存目录URL={}",nginxUrl);
         // 保存和访问路径检查
         if (StringUtils.isBlank(saveUrl) || StringUtils.isBlank(savePath)) {
             return AjaxResult.buildFailInstance("文件上传失败错误代码:001");
@@ -118,13 +133,32 @@
             uploadDir.mkdir();
         }
 
-        String fileName = ImageUtil.base64ToFile(uploadPhotoDto.getBase64(), savePath, UUIDUtil.getRandomID() + ".png");
+        ImageUtil.base64ToFile(uploadPhotoDto.getBase64(),savePath , fileName);
         LogUtil.info("fileName : {}", fileName);
 
         AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("上传成功");
-        ajaxResult.putInMap("file", fileName);
+        ajaxResult.putInMap("file", nginxUrl + abstractPath+"/"+fileName);
         return ajaxResult;
     }
+
+
+    String folderType = "image";
+    public final static List<FileType> EXT_LIST = new ArrayList<FileType>();
+    static {
+        EXT_LIST.add(FileType.JPEG);
+        EXT_LIST.add(FileType.PNG);
+    }
+
+    @ApiOperation(value = "表单图片上传接口", notes = "表单图片上传接口")
+    @PostMapping(value = "/uploadImg")
+    public AjaxResult uploadImg(HttpServletResponse response, MultipartHttpServletRequest request)
+            throws IOException, FileUploadException, NoSuchAlgorithmException {
+        Map<String, String> fileMap = UploadUtil.doUpload(request, EXT_LIST, folderType, 1L);
+        AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("上传成功");
+        ajaxResult.putInMap("file", fileMap.get("visitPath"));
+        return ajaxResult;
+    }
+
 
     @ApiOperation(value = "短信验证码发送", notes = "短信验证码发送")
     @PostMapping(value = "/sendSmsCode")
@@ -140,7 +174,10 @@
         if (StringUtils.isNotBlank(codeExist)) {
             return AjaxResult.buildFailInstance("请勿重复发送验证码");
         }
-        redisClient.saveValue(smsCodeDto.getTelphone(), "123456", 2000);
+
+        Integer code =(int) ((Math.random() * 9 + 1) * 100000);
+        Sms106Send.sendVerifyCode(smsCodeDto.getTelphone(), code.toString(), 2);
+        redisClient.saveValue(smsCodeDto.getTelphone(), code.toString(), 120);
         return AjaxResult.buildSuccessInstance("发送成功");
     }
 
@@ -174,4 +211,13 @@
         }
         return AjaxResult.buildFailInstance("修改失败");
     }
+
+    @ApiOperation(value = "获取app版本", notes = "获取app版本")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "ok", response = AppVersion.class)
+    })
+    @GetMapping(value = "/findAppVersion")
+    public AjaxResult findAppVersion() {
+        return AjaxResult.buildSuccessInstance(sysUsersService.findAppVersion());
+    }
 }

--
Gitblit v1.9.1