Merge branch 'develop' of gitee.com:darlk/ShengTangManage into develop

This commit is contained in:
huangdeliang
2021-02-03 17:28:57 +08:00
5 changed files with 394 additions and 289 deletions

View File

@ -2,7 +2,9 @@ package com.stdiet.web.controller.custom;
import com.stdiet.common.core.controller.BaseController;
import com.stdiet.common.core.domain.AjaxResult;
import com.stdiet.common.core.redis.RedisCache;
import com.stdiet.custom.service.ISysWxService;
import com.stdiet.custom.utils.WxTokenUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -15,6 +17,9 @@ public class CusWxController extends BaseController {
@Autowired
public ISysWxService sysWxService;
@Autowired
public RedisCache redisCache;
@GetMapping("/checkSign")
public String wxCheckAuth(@RequestParam String signature, @RequestParam String timestamp, @RequestParam String nonce, @RequestParam String echostr) {
return sysWxService.wxCheckAuth(signature, timestamp, nonce, echostr);
@ -30,4 +35,9 @@ public class CusWxController extends BaseController {
return sysWxService.getAccessToken();
}
@GetMapping("/clearAccessToken")
public AjaxResult clearAccessToken() {
redisCache.deleteObject(WxTokenUtils.KEY_ACCESS_TOKEN);
return AjaxResult.success();
}
}

View File

@ -104,33 +104,44 @@ public class SysWxSaleAccountController extends BaseController {
return toAjax(sysWxSaleAccountService.deleteSysWxSaleAccountByIds(ids));
}
@GetMapping("/redisTest")
public AjaxResult redisTest() {
String accessToken = redisCache.getCacheObject(WxTokenUtils.KEY_ACCESS_TOKEN);
if (StringUtils.isEmpty(accessToken)) {
WxAccessToken wxAccessToken = WxTokenUtils.fetchAccessToken();
redisCache.setCacheObject(WxTokenUtils.KEY_ACCESS_TOKEN, wxAccessToken.getAccessToken(), wxAccessToken.getExpiresIn(), TimeUnit.SECONDS);
}
return AjaxResult.success(accessToken);
}
/**
* 通用上传请求(无需登录认证)
* 上传图片
*/
@PostMapping("/upload")
public AjaxResult wxAccountUpload(MultipartFile file) throws Exception {
try {
// 上传文件路径
String filePath = RuoYiConfig.getUploadPath();
String oriFileName = file.getOriginalFilename();
// 上传并返回新文件名称
String fileName = FileUploadUtils.upload(filePath, file);
String url = serverConfig.getUrl() + fileName;
// String url = serverConfig.getUrl() + fileName;
String oriFilePath = filePath + fileName.substring(fileName.indexOf("upload") + 6);
String accessToken = redisCache.getCacheObject(WxTokenUtils.KEY_ACCESS_TOKEN);
if (StringUtils.isEmpty(accessToken)) {
WxAccessToken wxAccessToken = WxTokenUtils.fetchAccessToken();
redisCache.setCacheObject(WxTokenUtils.KEY_ACCESS_TOKEN, wxAccessToken.getAccessToken(), wxAccessToken.getExpiresIn(), TimeUnit.SECONDS);
accessToken = wxAccessToken.getAccessToken();
redisCache.setCacheObject(WxTokenUtils.KEY_ACCESS_TOKEN, accessToken, wxAccessToken.getExpiresIn(), TimeUnit.SECONDS);
}
WxFileUploadResult result = WxTokenUtils.uploadImage(filePath, accessToken);
if (result == null) {
return AjaxResult.error("上传微信失败");
}
WxFileUploadResult result = WxTokenUtils.uploadImage(oriFilePath, oriFileName, accessToken);
AjaxResult ajax = AjaxResult.success();
ajax.put("fileName", fileName);
ajax.put("mediaId", result.getMediaId());
ajax.put("url", url);
ajax.put("mediaUrl", result.getUrl());
return ajax;
} catch (Exception e) {
return AjaxResult.error(e.getMessage());