diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ImgUpload.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ImgUpload.java index ec7a420bfb3a715db67eeae1fcd5d62c509bf5ee..3ae5518066713729d3f019ee2d62acc76398b54c 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ImgUpload.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ImgUpload.java @@ -52,7 +52,7 @@ public class ImgUpload { if (StringUtils.isBlank(path)) { path = "IMG"; } - return auth.uploadToken(bucketname, null, 3600, new StringMap().put("saveKey", path + "$(etag)$(ext)")); + return auth.uploadToken(bucketname, null, 3600, new StringMap().put("saveKey", "$(etag)$(ext)" + path)); } public String upload(byte[] data, String fileType) throws IOException { diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/weixin/utils/WeiXinUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/weixin/utils/WeiXinUtils.java index eebfa2cc00a7f026f028974b67ee84d42c9c390c..554554dd996c8cc748cfa692e8d56429ee9620d9 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/weixin/utils/WeiXinUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/weixin/utils/WeiXinUtils.java @@ -1,5 +1,6 @@ package com.ruoyi.common.weixin.utils; +import cn.hutool.core.util.IdUtil; import cn.hutool.http.HttpUtil; import com.alibaba.fastjson.JSONObject; import com.ruoyi.common.core.redis.RedisCache; @@ -13,7 +14,6 @@ import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import javax.annotation.Resource; - import java.io.BufferedInputStream; import java.io.PrintWriter; import java.net.HttpURLConnection; @@ -140,13 +140,13 @@ public class WeiXinUtils { * @return 图片链接 */ public String getQRCode(Long memberUserId, String key){ - String qrCodeUrl = ""; + String resultUrl = ""; try { //获取token String accessToken = this.getAccessToken(); String codeUrl = "https://api.weixin.qq.com/wxa/getwxacode?access_token="+ accessToken; - String path = weiXinConfig.getWxPath()+memberUserId; //post参数 + String path = weiXinConfig.getWxPath()+memberUserId; JSONObject jsonObject = new JSONObject(); jsonObject.put("path", path); Map lineColor = new HashMap<>(); @@ -172,14 +172,54 @@ public class WeiXinUtils { //获取数据 BufferedInputStream bis = new BufferedInputStream(httpUrlConnection.getInputStream()); //文件上传,返回小程序码url - qrCodeUrl = new ImgUpload().streamUpload(bis, key); - + resultUrl = new ImgUpload().streamUpload(bis, IdUtil.getSnowflakeNextIdStr()+"_"+key); } catch (Exception e) { e.printStackTrace(); } - return qrCodeUrl; + return resultUrl; } +// public String getQRCode(Long memberUserId, String key){ +// String qrCodeUrl = ""; +// try { +// //获取token +// String accessToken = this.getAccessToken(); +// String codeUrl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token="+ accessToken; +// String path = weiXinConfig.getWxPath()+memberUserId; +// //post参数 +// JSONObject jsonObject = new JSONObject(); +// jsonObject.put("path", path); +// Map lineColor = new HashMap<>(); +// lineColor.put("r", 4); +// lineColor.put("g", 157); +// lineColor.put("b", 150); +// jsonObject.put("line_color", lineColor); +// String env_version = "release";// 正式版为 "release",体验版为 "trial",开发版为 "develop" +// jsonObject.put("env_version", env_version); +// String params = jsonObject.toString(); +// +// URL url = new URL(codeUrl); +// HttpURLConnection httpUrlConnection = (HttpURLConnection) url.openConnection(); +// // 提交模式 +// httpUrlConnection.setRequestMethod("POST"); +// // 发送POST请求必须设置如下两行 +// httpUrlConnection.setDoOutput(true); +// httpUrlConnection.setDoInput(true); +// // 获取URLConnection对象对应的输出流 +// PrintWriter printWriter = new PrintWriter(httpUrlConnection.getOutputStream()); +// printWriter.write(params); +// printWriter.flush(); +// //获取数据 +// BufferedInputStream bis = new BufferedInputStream(httpUrlConnection.getInputStream()); +// //文件上传,返回小程序码url +// qrCodeUrl = new ImgUpload().streamUpload(bis, key); +// +// } catch (Exception e) { +// e.printStackTrace(); +// } +// return qrCodeUrl; +// } + /** * 获取不限制的小程序码 * diff --git a/ruoyi-system/src/main/java/com/ruoyi/mall/service/impl/MallMemberUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/mall/service/impl/MallMemberUserServiceImpl.java index 6fa9cb01ebedc9b58b9d5477109aaf142c39bac0..fcd8ee93767f1b79c84ba76fa65b742c667ca9cf 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/mall/service/impl/MallMemberUserServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/mall/service/impl/MallMemberUserServiceImpl.java @@ -1046,15 +1046,15 @@ public class MallMemberUserServiceImpl implements IMallMemberUserService sysUser.setPassword(SecurityUtils.encryptPassword(password)); sysUserMapper.updateUser(sysUser); } - - if (StringUtils.isBlank(memberUser.getIndexCode())) { - String qrCode = ""; - // 小程序码 - Long schoolId = memberUser.getId(); - String key = schoolId + ".png"; - qrCode = weiXinUtils.getSchoolQRCode(schoolId, key); - updateMemberUser.setIndexCode(qrCode); - } + /** + * 重新生成二维码 + */ + String qrCode = ""; + // 小程序码 + Long userId = memberUser.getId(); + String key = userId + ".png"; + qrCode = weiXinUtils.getQRCode(userId, key); + updateMemberUser.setIndexCode(qrCode); mallMemberUserMapper.updateMallMemberUserInfo(updateMemberUser); return AjaxResult.success();