From 4e2416fee11d4fe85b34ebdef70351b87be94822 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A7=9C=E7=8E=89=E7=90=A6?= <7507756+jiang_yuqi@user.noreply.gitee.com> Date: Sun, 13 Oct 2024 15:40:15 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yanzhu/system/api/RemoteProService.java | 3 - .../yanzhu/system/api/RemoteUserService.java | 19 +++ .../system/api/domain/SysUserUniopen.java | 121 ++++++++++++++ .../api/factory/RemoteProFallbackFactory.java | 6 - .../factory/RemoteUserFallbackFactory.java | 13 ++ .../auth/controller/TokenController.java | 23 ++- .../com/yanzhu/auth/form/WxLoginBody.java | 35 ---- .../com/yanzhu/auth/form/WxMaLoginBody.java | 40 +++++ .../com/yanzhu/auth/form/WxMaOpenIdBody.java | 21 +++ .../yanzhu/auth/service/SysLoginService.java | 27 ++- yanzhu-common/yanzhu-common-core/pom.xml | 5 + yanzhu-modules/yanzhu-manage/pom.xml | 6 - .../controller/WxCallBackController.java | 6 +- .../yanzhu/system/config/WeChatConfig.java | 61 +++++++ .../system/config/WeChatProperties.java | 26 +++ .../system/controller/SysUserController.java | 52 +++--- .../controller/SysUserUniopenController.java | 157 ++++++++++++++++++ .../system/mapper/SysUserUniopenMapper.java | 102 ++++++++++++ .../service/ISysUserUniopenService.java | 102 ++++++++++++ .../impl/SysUserUniopenServiceImpl.java | 149 +++++++++++++++++ .../mapper/system/SysUserUniopenMapper.xml | 105 ++++++++++++ yanzhu-ui-app/miniprogram/api/login.js | 18 ++ yanzhu-ui-app/miniprogram/app.js | 22 ++- yanzhu-ui-app/miniprogram/config.js | 5 +- .../miniprogram/pages/login/login.js | 46 +++-- .../miniprogram/pages/login/login.wxml | 4 +- yanzhu-ui-app/miniprogram/utils/auth.js | 18 +- yanzhu-ui-app/miniprogram/utils/request.js | 2 +- 28 files changed, 1067 insertions(+), 127 deletions(-) create mode 100644 yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/domain/SysUserUniopen.java delete mode 100644 yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxLoginBody.java create mode 100644 yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaLoginBody.java create mode 100644 yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaOpenIdBody.java create mode 100644 yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatConfig.java create mode 100644 yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatProperties.java create mode 100644 yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserUniopenController.java create mode 100644 yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/mapper/SysUserUniopenMapper.java create mode 100644 yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/ISysUserUniopenService.java create mode 100644 yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserUniopenServiceImpl.java create mode 100644 yanzhu-modules/yanzhu-system/src/main/resources/mapper/system/SysUserUniopenMapper.xml diff --git a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java index 6af00b26..62d8635c 100644 --- a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java +++ b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java @@ -20,9 +20,6 @@ import java.util.Map; public interface RemoteProService { - @GetMapping("/wxCallBack/maLogin/{code}") - public R> maLogin(@PathVariable("code") String code, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); - /** * 项目详情 * diff --git a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteUserService.java b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteUserService.java index 374f9882..7f7d4e5b 100644 --- a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteUserService.java +++ b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteUserService.java @@ -1,5 +1,6 @@ package com.yanzhu.system.api; +import com.yanzhu.system.api.domain.SysUserUniopen; import com.yanzhu.system.api.model.LoginUser; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; @@ -20,6 +21,24 @@ import java.util.Map; @FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class) public interface RemoteUserService { + /** + * 获取小程序授权 + * @param code 授权码 + * @param source 请求来源 + * @return + */ + @GetMapping("/sysUserUniopen/getMaOpenId/{code}") + public R> getMaOpenId(@PathVariable("code") String code, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + + /** + * 查询小程序授权 + * @param maOpenId 小程序授权id + * @param source 请求来源 + * @return + */ + @GetMapping("/sysUserUniopen/findByMaOpenId/{maOpenId}") + public R findByMaOpenId(@PathVariable("maOpenId") String maOpenId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + /** * 通过用户名查询用户信息 * diff --git a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/domain/SysUserUniopen.java b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/domain/SysUserUniopen.java new file mode 100644 index 00000000..5f9f2119 --- /dev/null +++ b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/domain/SysUserUniopen.java @@ -0,0 +1,121 @@ +package com.yanzhu.system.api.domain; + +import com.yanzhu.common.core.annotation.Excel; +import com.yanzhu.common.core.web.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 用户授权对象 sys_user_uniopen + * + * @author JiangYuQi + * @date 2024-10-13 + */ +public class SysUserUniopen extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键 */ + private Long id; + + /** 用户主键 */ + @Excel(name = "用户主键") + private Long userId; + + /** 用户账号 */ + @Excel(name = "用户账号") + private String userName; + + /** 用户昵称 */ + @Excel(name = "用户昵称") + private String userNick; + + /** 唯一关联id */ + @Excel(name = "唯一关联id") + private String unionid; + + /** 小程序授权id */ + @Excel(name = "小程序授权id") + private String maOpenId; + + /** 公众号授权id */ + @Excel(name = "公众号授权id") + private String mpOpenId; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setUserId(Long userId) + { + this.userId = userId; + } + + public Long getUserId() + { + return userId; + } + public void setUserName(String userName) + { + this.userName = userName; + } + + public String getUserName() + { + return userName; + } + public void setUserNick(String userNick) + { + this.userNick = userNick; + } + + public String getUserNick() + { + return userNick; + } + public void setUnionid(String unionid) + { + this.unionid = unionid; + } + + public String getUnionid() + { + return unionid; + } + public void setMaOpenId(String maOpenId) + { + this.maOpenId = maOpenId; + } + + public String getMaOpenId() + { + return maOpenId; + } + public void setMpOpenId(String mpOpenId) + { + this.mpOpenId = mpOpenId; + } + + public String getMpOpenId() + { + return mpOpenId; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("userId", getUserId()) + .append("userName", getUserName()) + .append("userNick", getUserNick()) + .append("unionid", getUnionid()) + .append("maOpenId", getMaOpenId()) + .append("mpOpenId", getMpOpenId()) + .toString(); + } +} diff --git a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java index 2b8084f3..b1a7a03a 100644 --- a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java +++ b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java @@ -26,12 +26,6 @@ public class RemoteProFallbackFactory implements FallbackFactory> maLogin(String code, String source) - { - return R.fail("小程序登录失败:" + throwable.getMessage()); - } - @Override public R> info(Long id, String source) { diff --git a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteUserFallbackFactory.java b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteUserFallbackFactory.java index 59f4ee64..96406195 100644 --- a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteUserFallbackFactory.java +++ b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteUserFallbackFactory.java @@ -1,6 +1,7 @@ package com.yanzhu.system.api.factory; import com.yanzhu.system.api.RemoteUserService; +import com.yanzhu.system.api.domain.SysUserUniopen; import com.yanzhu.system.api.model.LoginUser; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,6 +29,18 @@ public class RemoteUserFallbackFactory implements FallbackFactory> getMaOpenId(String code, String source) + { + return R.fail("获取小程序授权失败:" + throwable.getMessage()); + } + + @Override + public R findByMaOpenId(String maOpenId, String source) + { + return R.fail("查询小程序授权失败:" + throwable.getMessage()); + } + @Override public R getUserInfo(String username, String source) { diff --git a/yanzhu-auth/src/main/java/com/yanzhu/auth/controller/TokenController.java b/yanzhu-auth/src/main/java/com/yanzhu/auth/controller/TokenController.java index 7c79d4ea..2d736ef5 100644 --- a/yanzhu-auth/src/main/java/com/yanzhu/auth/controller/TokenController.java +++ b/yanzhu-auth/src/main/java/com/yanzhu/auth/controller/TokenController.java @@ -2,7 +2,8 @@ package com.yanzhu.auth.controller; import com.yanzhu.auth.form.LoginBody; import com.yanzhu.auth.form.RegisterBody; -import com.yanzhu.auth.form.WxLoginBody; +import com.yanzhu.auth.form.WxMaLoginBody; +import com.yanzhu.auth.form.WxMaOpenIdBody; import com.yanzhu.auth.service.SysLoginService; import com.yanzhu.common.core.constant.SecurityConstants; import com.yanzhu.common.core.domain.R; @@ -20,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import javax.validation.Valid; import java.util.Map; import java.util.Objects; @@ -57,16 +59,29 @@ public class TokenController return R.ok(tokenService.createToken(userInfo)); } + /** + * 获取小程序授权 + * @param body 请求参数 + * @return + */ + @PostMapping("getMaOpenId") + public R getMaOpenId(@RequestBody @Valid WxMaOpenIdBody body) + { + String maOpenId = sysLoginService.getMaOpenId(body.getCode()); + // 获取授权openId + return R.ok(maOpenId); + } + /** * 微信小程序一键登录 - * @param form + * @param body 请求参数 * @return */ @PostMapping("maLogin") - public R maLogin(@RequestBody WxLoginBody form) + public R maLogin(@RequestBody @Valid WxMaLoginBody body) { // 用户登录 - Map result = sysLoginService.maLogin(form.getCode(), form.getAppId()); + Map result = sysLoginService.maLogin(body); // 获取登录token return R.ok(result); } diff --git a/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxLoginBody.java b/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxLoginBody.java deleted file mode 100644 index d3a5133d..00000000 --- a/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxLoginBody.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.yanzhu.auth.form; - -/** - * 微信登录对象 - * - * @author ruoyi - */ -public class WxLoginBody { - - /** - * 用户代码 - */ - private String code; - - /** - * 应用代码 - */ - private String appId; - - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } - - public String getAppId() { - return appId; - } - - public void setAppId(String appId) { - this.appId = appId; - } -} diff --git a/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaLoginBody.java b/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaLoginBody.java new file mode 100644 index 00000000..c0bca8bf --- /dev/null +++ b/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaLoginBody.java @@ -0,0 +1,40 @@ +package com.yanzhu.auth.form; + +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * 微信小程序登录对象 + * + * @author ruoyi + */ +@Data +@ApiModel(description = "微信小程序登录对象") +public class WxMaLoginBody { + + /** + * 授权项目 + */ + private Long proId; + + /** + * 授权编号 + */ + @NotBlank(message = "授权编号不能为空") + private String openId; + + /** + * 加密代码 + */ + @NotBlank(message = "加密代码不能为空") + private String encryptedData; + + /** + * 加密方式 + */ + @NotBlank(message = "加密方式不能为空") + private String iv; + +} diff --git a/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaOpenIdBody.java b/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaOpenIdBody.java new file mode 100644 index 00000000..c2cca247 --- /dev/null +++ b/yanzhu-auth/src/main/java/com/yanzhu/auth/form/WxMaOpenIdBody.java @@ -0,0 +1,21 @@ +package com.yanzhu.auth.form; + +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * 微信小程序授权 + */ +@Data +@ApiModel(description = "微信小程序授权对象") +public class WxMaOpenIdBody { + + /** + * 授权码 + */ + @NotBlank(message = "授权码不能为空") + private String code; + +} diff --git a/yanzhu-auth/src/main/java/com/yanzhu/auth/service/SysLoginService.java b/yanzhu-auth/src/main/java/com/yanzhu/auth/service/SysLoginService.java index 25ca24f9..8a8c4e0c 100644 --- a/yanzhu-auth/src/main/java/com/yanzhu/auth/service/SysLoginService.java +++ b/yanzhu-auth/src/main/java/com/yanzhu/auth/service/SysLoginService.java @@ -1,6 +1,8 @@ package com.yanzhu.auth.service; +import com.yanzhu.auth.form.WxMaLoginBody; import com.yanzhu.system.api.RemoteProService; +import com.yanzhu.system.api.domain.SysUserUniopen; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.yanzhu.common.core.constant.CacheConstants; @@ -124,14 +126,31 @@ public class SysLoginService } /** - * 微信小程序登录 + * 获取小程序授权 */ - public Map maLogin(String code, String appId) + public String getMaOpenId(String code) { - Map loginResult = remoteProService.maLogin(code,SecurityConstants.INNER).getData(); - return loginResult; + Map loginResult = remoteUserService.getMaOpenId(code,SecurityConstants.INNER).getData(); + return Convert.toStr(loginResult.get("openid")); } + + /** + * 微信小程序登录 + */ + public Map maLogin(WxMaLoginBody loginBody) + { + // 查询小程序授权情况 + R uniResult = remoteUserService.findByMaOpenId(loginBody.getOpenId(),SecurityConstants.INNER); + if(Objects.isNull(uniResult) || Objects.isNull(uniResult.getData())){ + throw new ServiceException("当前微信还未绑定账号!!!请使用账号登录一次"); + } + return null; + } + + /** + * 退出登录 + */ public void logout(String loginName) { recordLogService.recordLogininfor(loginName, Constants.LOGOUT, "退出成功"); diff --git a/yanzhu-common/yanzhu-common-core/pom.xml b/yanzhu-common/yanzhu-common-core/pom.xml index 3a262e56..0d5885d0 100644 --- a/yanzhu-common/yanzhu-common-core/pom.xml +++ b/yanzhu-common/yanzhu-common-core/pom.xml @@ -113,6 +113,11 @@ swagger-annotations + + org.projectlombok + lombok + + com.belerweb diff --git a/yanzhu-modules/yanzhu-manage/pom.xml b/yanzhu-modules/yanzhu-manage/pom.xml index de15c674..18fab7dc 100644 --- a/yanzhu-modules/yanzhu-manage/pom.xml +++ b/yanzhu-modules/yanzhu-manage/pom.xml @@ -77,12 +77,6 @@ yanzhu-common-swagger - - org.projectlombok - lombok - provided - - com.squareup.okhttp3 okhttp diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/WxCallBackController.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/WxCallBackController.java index c594970b..bcf19acc 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/WxCallBackController.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/WxCallBackController.java @@ -31,11 +31,11 @@ public class WxCallBackController { * 小程序登录 */ @InnerAuth - @GetMapping("/maLogin/{code}") - public R> maLogin(@PathVariable("code") String code) { + @GetMapping("/getMaOpenId/{code}") + public R> getMaOpenId(@PathVariable("code") String code) { WxMaJscode2SessionResult sessionInfo = wxMaService.getUserService().getSessionInfo(code); - log.info("wxLogin==>{}...{}",code,sessionInfo.getOpenid()); + log.info("getMaOpenId==>{}...{}",code,sessionInfo.getOpenid()); try { return R.ok(BeanUtils.beanToMap(sessionInfo)); }catch (Exception e){ diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatConfig.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatConfig.java new file mode 100644 index 00000000..e3c9207a --- /dev/null +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatConfig.java @@ -0,0 +1,61 @@ +package com.yanzhu.system.config; + +import cn.binarywang.wx.miniapp.api.WxMaService; +import cn.binarywang.wx.miniapp.api.impl.WxMaServiceImpl; +import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl; +import me.chanjar.weixin.mp.api.WxMpInMemoryConfigStorage; +import me.chanjar.weixin.mp.api.WxMpService; +import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + * 微信配置 + */ +@Configuration +public class WeChatConfig { + + @Autowired + private WeChatProperties weChatProperties; + + private static final Logger log = LoggerFactory.getLogger(WeChatConfig.class); + + /** + * 公众号 + * @return + */ + @Bean + public WxMpService wxMpService() { + WxMpInMemoryConfigStorage config = new WxMpInMemoryConfigStorage(); + log.info("weChatProperties.mpAppId...{}",weChatProperties.getMpAppId()); + log.info("weChatProperties.mpAppSecret...{}",weChatProperties.getMpAppSecret()); + config.setAppId(weChatProperties.getMpAppId()); + config.setSecret(weChatProperties.getMpAppSecret()); + + WxMpServiceImpl wxMpService = new WxMpServiceImpl(); + wxMpService.setWxMpConfigStorage(config); + + return wxMpService; + } + + /** + * 小程序 + * @return + */ + @Bean + public WxMaService wxMaService() { + WxMaDefaultConfigImpl wxMaConfig = new WxMaDefaultConfigImpl(); + log.info("weChatProperties.maAppId...{}",weChatProperties.getMaAppId()); + log.info("weChatProperties.maAppSecret...{}",weChatProperties.getMaAppSecret()); + wxMaConfig.setAppid(weChatProperties.getMaAppId()); + wxMaConfig.setSecret(weChatProperties.getMaAppSecret()); + + WxMaService wxMaService = new WxMaServiceImpl(); + wxMaService.setWxMaConfig(wxMaConfig); + + return wxMaService; + } +} diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatProperties.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatProperties.java new file mode 100644 index 00000000..1c633e94 --- /dev/null +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/config/WeChatProperties.java @@ -0,0 +1,26 @@ +package com.yanzhu.system.config; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +/** + * 微信配置文件 + */ +@Data +@Component +@ConfigurationProperties(prefix = "wechat") +public class WeChatProperties { + + /** + * 公众号 + */ + private String mpAppId; + private String mpAppSecret; + + /** + * 小程序 + */ + private String maAppId; + private String maAppSecret; +} diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserController.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserController.java index 30e503de..f36b14ec 100644 --- a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserController.java +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserController.java @@ -1,33 +1,9 @@ package com.yanzhu.system.controller; -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.Set; -import java.util.concurrent.TimeUnit; -import java.util.stream.Collectors; -import javax.servlet.http.HttpServletResponse; - import com.yanzhu.common.core.constant.Constants; +import com.yanzhu.common.core.domain.R; import com.yanzhu.common.core.enums.UserTypeEnums; import com.yanzhu.common.core.text.Convert; -import com.yanzhu.common.redis.service.RedisService; -import com.yanzhu.system.domain.vo.TreeSelect; -import io.swagger.annotations.ApiOperation; -import org.apache.commons.lang3.ArrayUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.multipart.MultipartFile; -import com.yanzhu.common.core.domain.R; import com.yanzhu.common.core.utils.StringUtils; import com.yanzhu.common.core.utils.poi.ExcelUtil; import com.yanzhu.common.core.web.controller.BaseController; @@ -35,6 +11,7 @@ import com.yanzhu.common.core.web.domain.AjaxResult; import com.yanzhu.common.core.web.page.TableDataInfo; import com.yanzhu.common.log.annotation.Log; import com.yanzhu.common.log.enums.BusinessType; +import com.yanzhu.common.redis.service.RedisService; import com.yanzhu.common.security.annotation.InnerAuth; import com.yanzhu.common.security.annotation.RequiresPermissions; import com.yanzhu.common.security.utils.SecurityUtils; @@ -42,12 +19,23 @@ import com.yanzhu.system.api.domain.SysDept; import com.yanzhu.system.api.domain.SysRole; import com.yanzhu.system.api.domain.SysUser; import com.yanzhu.system.api.model.LoginUser; -import com.yanzhu.system.service.ISysConfigService; -import com.yanzhu.system.service.ISysDeptService; -import com.yanzhu.system.service.ISysPermissionService; -import com.yanzhu.system.service.ISysPostService; -import com.yanzhu.system.service.ISysRoleService; -import com.yanzhu.system.service.ISysUserService; +import com.yanzhu.system.domain.vo.TreeSelect; +import com.yanzhu.system.service.*; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.ArrayUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; /** * 用户信息 @@ -57,6 +45,7 @@ import com.yanzhu.system.service.ISysUserService; @RestController @RequestMapping("/user") public class SysUserController extends BaseController { + @Autowired private RedisService redisService; @@ -387,4 +376,5 @@ public class SysUserController extends BaseController { List list = userService.selectUserList(user); return AjaxResult.success(list); } + } diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserUniopenController.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserUniopenController.java new file mode 100644 index 00000000..93de3da4 --- /dev/null +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/controller/SysUserUniopenController.java @@ -0,0 +1,157 @@ +package com.yanzhu.system.controller; + +import cn.binarywang.wx.miniapp.api.WxMaService; +import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; +import com.yanzhu.common.core.domain.R; +import com.yanzhu.common.core.utils.bean.BeanUtils; +import com.yanzhu.common.core.utils.poi.ExcelUtil; +import com.yanzhu.common.core.web.controller.BaseController; +import com.yanzhu.common.core.web.domain.AjaxResult; +import com.yanzhu.common.core.web.page.TableDataInfo; +import com.yanzhu.common.log.annotation.Log; +import com.yanzhu.common.log.enums.BusinessType; +import com.yanzhu.common.security.annotation.InnerAuth; +import com.yanzhu.common.security.annotation.RequiresPermissions; +import com.yanzhu.system.api.domain.SysUserUniopen; +import com.yanzhu.system.service.ISysUserUniopenService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + +/** + * 用户授权Controller + * + * @author JiangYuQi + * @date 2024-10-13 + */ +@RestController +@RequestMapping("/sysUserUniopen") +public class SysUserUniopenController extends BaseController +{ + @Autowired + private ISysUserUniopenService sysUserUniopenService; + + @Autowired + private WxMaService wxMaService; + + private static final Logger log = LoggerFactory.getLogger(SysUserController.class); + + /** + * 查询用户授权列表 + */ + @RequiresPermissions("@ss.hasPermi('system:sysUserUniopen:list')") + @GetMapping("/list") + public TableDataInfo list(SysUserUniopen sysUserUniopen) + { + startPage(); + List list = sysUserUniopenService.selectSysUserUniopenList(sysUserUniopen); + return getDataTable(list); + } + + /** + * 导出用户授权列表 + */ + @RequiresPermissions("@ss.hasPermi('system:sysUserUniopen:export')") + @Log(title = "用户授权", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SysUserUniopen sysUserUniopen) + { + List list = sysUserUniopenService.selectSysUserUniopenList(sysUserUniopen); + ExcelUtil util = new ExcelUtil(SysUserUniopen.class); + util.exportExcel(response, list, "用户授权数据"); + } + + /** + * 获取用户授权详细信息 + */ + @RequiresPermissions("@ss.hasPermi('system:sysUserUniopen:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(sysUserUniopenService.selectSysUserUniopenById(id)); + } + + /** + * 新增用户授权 + */ + @RequiresPermissions("@ss.hasPermi('system:sysUserUniopen:add')") + @Log(title = "用户授权", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SysUserUniopen sysUserUniopen) + { + return toAjax(sysUserUniopenService.insertSysUserUniopen(sysUserUniopen)); + } + + /** + * 修改用户授权 + */ + @RequiresPermissions("@ss.hasPermi('system:sysUserUniopen:edit')") + @Log(title = "用户授权", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SysUserUniopen sysUserUniopen) + { + return toAjax(sysUserUniopenService.updateSysUserUniopen(sysUserUniopen)); + } + + /** + * 删除用户授权 + */ + @RequiresPermissions("@ss.hasPermi('system:sysUserUniopen:remove')") + @Log(title = "用户授权", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(sysUserUniopenService.deleteSysUserUniopenByIds(ids)); + } + + /** + * 小程序授权 + */ + @InnerAuth + @GetMapping("/getMaOpenId/{code}") + public R> getMaOpenId(@PathVariable("code") String code) { + WxMaJscode2SessionResult sessionInfo = + wxMaService.getUserService().getSessionInfo(code); + log.info("getMaOpenId==>{}...{}",code,sessionInfo.getOpenid()); + try { + return R.ok(BeanUtils.beanToMap(sessionInfo)); + }catch (Exception e){ + return R.fail("小程序授权异常!!!"); + } + } + + @InnerAuth + @GetMapping("/findByUserId/{userId}") + public R> findByUserId(@PathVariable("userId") Long userId) { + return R.ok(sysUserUniopenService.selectSysUserUniopenByUserId(userId)); + } + + @InnerAuth + @GetMapping("/findByUserName/{userName}") + public R> findByUserName(@PathVariable("userName") String userName) { + return R.ok(sysUserUniopenService.selectSysUserUniopenByUserName(userName)); + } + + @InnerAuth + @GetMapping("/findByUnionid/{unionid}") + public R findByUnionid(@PathVariable("unionid") String unionid) { + return R.ok(sysUserUniopenService.selectSysUserUniopenByUnionid(unionid)); + } + + @InnerAuth + @GetMapping("/findByMaOpenId/{maOpenId}") + public R findByMaOpenId(@PathVariable("maOpenId") String maOpenId) { + return R.ok(sysUserUniopenService.selectSysUserUniopenByMaOpenId(maOpenId)); + } + + @InnerAuth + @GetMapping("/findByMpOpenId/{mpOpenId}") + public R findByMpOpenId(@PathVariable("mpOpenId") String mpOpenId) { + return R.ok(sysUserUniopenService.selectSysUserUniopenByMpOpenId(mpOpenId)); + } +} diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/mapper/SysUserUniopenMapper.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/mapper/SysUserUniopenMapper.java new file mode 100644 index 00000000..1ba7863f --- /dev/null +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/mapper/SysUserUniopenMapper.java @@ -0,0 +1,102 @@ +package com.yanzhu.system.mapper; + +import com.yanzhu.system.api.domain.SysUserUniopen; + +import java.util.List; + +/** + * 用户授权Mapper接口 + * + * @author JiangYuQi + * @date 2024-10-13 + */ +public interface SysUserUniopenMapper +{ + /** + * 查询用户授权 + * + * @param id 用户授权主键 + * @return 用户授权 + */ + public SysUserUniopen selectSysUserUniopenById(Long id); + + /** + * 查询用户授权列表 + * + * @param userId 用户主键 + * @return 用户授权集合 + */ + public List selectSysUserUniopenByUserId(Long userId); + + /** + * 查询用户授权列表 + * + * @param userName 用户名称 + * @return 用户授权集合 + */ + public List selectSysUserUniopenByUserName(String userName); + + /** + * 查询用户授权 + * + * @param unionid 唯一关联id + * @return 用户授权集合 + */ + public SysUserUniopen selectSysUserUniopenByUnionid(String unionid); + + /** + * 查询用户授权 + * + * @param maOpenId 小程序授权id + * @return 用户授权集合 + */ + public SysUserUniopen selectSysUserUniopenByMaOpenId(String maOpenId); + + /** + * 查询用户授权 + * + * @param mpOpenId 公众号授权id + * @return 用户授权集合 + */ + public SysUserUniopen selectSysUserUniopenByMpOpenId(String mpOpenId); + + /** + * 查询用户授权列表 + * + * @param sysUserUniopen 用户授权 + * @return 用户授权集合 + */ + public List selectSysUserUniopenList(SysUserUniopen sysUserUniopen); + + /** + * 新增用户授权 + * + * @param sysUserUniopen 用户授权 + * @return 结果 + */ + public int insertSysUserUniopen(SysUserUniopen sysUserUniopen); + + /** + * 修改用户授权 + * + * @param sysUserUniopen 用户授权 + * @return 结果 + */ + public int updateSysUserUniopen(SysUserUniopen sysUserUniopen); + + /** + * 删除用户授权 + * + * @param id 用户授权主键 + * @return 结果 + */ + public int deleteSysUserUniopenById(Long id); + + /** + * 批量删除用户授权 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSysUserUniopenByIds(Long[] ids); +} diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/ISysUserUniopenService.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/ISysUserUniopenService.java new file mode 100644 index 00000000..c772cdcf --- /dev/null +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/ISysUserUniopenService.java @@ -0,0 +1,102 @@ +package com.yanzhu.system.service; + +import com.yanzhu.system.api.domain.SysUserUniopen; + +import java.util.List; + +/** + * 用户授权Service接口 + * + * @author JiangYuQi + * @date 2024-10-13 + */ +public interface ISysUserUniopenService +{ + /** + * 查询用户授权 + * + * @param id 用户授权主键 + * @return 用户授权 + */ + public SysUserUniopen selectSysUserUniopenById(Long id); + + /** + * 查询用户授权列表 + * + * @param userId 用户主键 + * @return 用户授权集合 + */ + public List selectSysUserUniopenByUserId(Long userId); + + /** + * 查询用户授权列表 + * + * @param userName 用户名称 + * @return 用户授权集合 + */ + public List selectSysUserUniopenByUserName(String userName); + + /** + * 查询用户授权 + * + * @param unionid 唯一关联id + * @return 用户授权集合 + */ + public SysUserUniopen selectSysUserUniopenByUnionid(String unionid); + + /** + * 查询用户授权 + * + * @param maOpenId 小程序授权id + * @return 用户授权集合 + */ + public SysUserUniopen selectSysUserUniopenByMaOpenId(String maOpenId); + + /** + * 查询用户授权 + * + * @param mpOpenId 公众号授权id + * @return 用户授权集合 + */ + public SysUserUniopen selectSysUserUniopenByMpOpenId(String mpOpenId); + + /** + * 查询用户授权列表 + * + * @param sysUserUniopen 用户授权 + * @return 用户授权集合 + */ + public List selectSysUserUniopenList(SysUserUniopen sysUserUniopen); + + /** + * 新增用户授权 + * + * @param sysUserUniopen 用户授权 + * @return 结果 + */ + public int insertSysUserUniopen(SysUserUniopen sysUserUniopen); + + /** + * 修改用户授权 + * + * @param sysUserUniopen 用户授权 + * @return 结果 + */ + public int updateSysUserUniopen(SysUserUniopen sysUserUniopen); + + /** + * 批量删除用户授权 + * + * @param ids 需要删除的用户授权主键集合 + * @return 结果 + */ + public int deleteSysUserUniopenByIds(Long[] ids); + + /** + * 删除用户授权信息 + * + * @param id 用户授权主键 + * @return 结果 + */ + public int deleteSysUserUniopenById(Long id); +} diff --git a/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserUniopenServiceImpl.java b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserUniopenServiceImpl.java new file mode 100644 index 00000000..f1b45029 --- /dev/null +++ b/yanzhu-modules/yanzhu-system/src/main/java/com/yanzhu/system/service/impl/SysUserUniopenServiceImpl.java @@ -0,0 +1,149 @@ +package com.yanzhu.system.service.impl; + +import java.util.List; + +import com.yanzhu.system.api.domain.SysUserUniopen; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.yanzhu.system.mapper.SysUserUniopenMapper; +import com.yanzhu.system.service.ISysUserUniopenService; + +/** + * 用户授权Service业务层处理 + * + * @author JiangYuQi + * @date 2024-10-13 + */ +@Service +public class SysUserUniopenServiceImpl implements ISysUserUniopenService +{ + @Autowired + private SysUserUniopenMapper sysUserUniopenMapper; + + /** + * 查询用户授权 + * + * @param id 用户授权主键 + * @return 用户授权 + */ + @Override + public SysUserUniopen selectSysUserUniopenById(Long id) + { + return sysUserUniopenMapper.selectSysUserUniopenById(id); + } + + /** + * 查询用户授权列表 + * + * @param userId 用户主键 + * @return 用户授权集合 + */ + @Override + public List selectSysUserUniopenByUserId(Long userId){ + return sysUserUniopenMapper.selectSysUserUniopenByUserId(userId); + } + + /** + * 查询用户授权列表 + * + * @param userName 用户名称 + * @return 用户授权集合 + */ + @Override + public List selectSysUserUniopenByUserName(String userName){ + return sysUserUniopenMapper.selectSysUserUniopenByUserName(userName); + } + + /** + * 查询用户授权 + * + * @param unionid 唯一关联id + * @return 用户授权集合 + */ + @Override + public SysUserUniopen selectSysUserUniopenByUnionid(String unionid){ + return sysUserUniopenMapper.selectSysUserUniopenByUnionid(unionid); + } + + /** + * 查询用户授权 + * + * @param maOpenId 小程序授权id + * @return 用户授权集合 + */ + @Override + public SysUserUniopen selectSysUserUniopenByMaOpenId(String maOpenId){ + return sysUserUniopenMapper.selectSysUserUniopenByMaOpenId(maOpenId); + } + + /** + * 查询用户授权 + * + * @param mpOpenId 公众号授权id + * @return 用户授权集合 + */ + @Override + public SysUserUniopen selectSysUserUniopenByMpOpenId(String mpOpenId){ + return sysUserUniopenMapper.selectSysUserUniopenByMpOpenId(mpOpenId); + } + + /** + * 查询用户授权列表 + * + * @param sysUserUniopen 用户授权 + * @return 用户授权 + */ + @Override + public List selectSysUserUniopenList(SysUserUniopen sysUserUniopen) + { + return sysUserUniopenMapper.selectSysUserUniopenList(sysUserUniopen); + } + + /** + * 新增用户授权 + * + * @param sysUserUniopen 用户授权 + * @return 结果 + */ + @Override + public int insertSysUserUniopen(SysUserUniopen sysUserUniopen) + { + return sysUserUniopenMapper.insertSysUserUniopen(sysUserUniopen); + } + + /** + * 修改用户授权 + * + * @param sysUserUniopen 用户授权 + * @return 结果 + */ + @Override + public int updateSysUserUniopen(SysUserUniopen sysUserUniopen) + { + return sysUserUniopenMapper.updateSysUserUniopen(sysUserUniopen); + } + + /** + * 批量删除用户授权 + * + * @param ids 需要删除的用户授权主键 + * @return 结果 + */ + @Override + public int deleteSysUserUniopenByIds(Long[] ids) + { + return sysUserUniopenMapper.deleteSysUserUniopenByIds(ids); + } + + /** + * 删除用户授权信息 + * + * @param id 用户授权主键 + * @return 结果 + */ + @Override + public int deleteSysUserUniopenById(Long id) + { + return sysUserUniopenMapper.deleteSysUserUniopenById(id); + } +} diff --git a/yanzhu-modules/yanzhu-system/src/main/resources/mapper/system/SysUserUniopenMapper.xml b/yanzhu-modules/yanzhu-system/src/main/resources/mapper/system/SysUserUniopenMapper.xml new file mode 100644 index 00000000..97346791 --- /dev/null +++ b/yanzhu-modules/yanzhu-system/src/main/resources/mapper/system/SysUserUniopenMapper.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + select id, user_id, user_name, user_nick, unionid, ma_open_id, mp_open_id from sys_user_uniopen + + + + + + + + + + + + + + + + + + insert into sys_user_uniopen + + user_id, + user_name, + user_nick, + unionid, + ma_open_id, + mp_open_id, + + + #{userId}, + #{userName}, + #{userNick}, + #{unionid}, + #{maOpenId}, + #{mpOpenId}, + + + + + update sys_user_uniopen + + user_id = #{userId}, + user_name = #{userName}, + user_nick = #{userNick}, + unionid = #{unionid}, + ma_open_id = #{maOpenId}, + mp_open_id = #{mpOpenId}, + + where id = #{id} + + + + delete from sys_user_uniopen where id = #{id} + + + + delete from sys_user_uniopen where id in + + #{id} + + + \ No newline at end of file diff --git a/yanzhu-ui-app/miniprogram/api/login.js b/yanzhu-ui-app/miniprogram/api/login.js index 167a0ffb..cda05351 100644 --- a/yanzhu-ui-app/miniprogram/api/login.js +++ b/yanzhu-ui-app/miniprogram/api/login.js @@ -17,6 +17,24 @@ export function login(data) { }) } +// 获取授权 +export function getMaOpenId(code) { + return request({ + url: '/getMaOpenId', + method: 'post', + data: data, + }) +} + +// 登录方法 +export function maLogin(data) { + return request({ + url: '/maLogin', + method: 'post', + data: data, + }) +} + // 登录方法 export function updatePwd(data) { return request({ diff --git a/yanzhu-ui-app/miniprogram/app.js b/yanzhu-ui-app/miniprogram/app.js index 61939bb4..c3f6bdbd 100644 --- a/yanzhu-ui-app/miniprogram/app.js +++ b/yanzhu-ui-app/miniprogram/app.js @@ -38,7 +38,7 @@ App({ projectInfoList: [], }, - onLaunch: function () { + onLaunch: function (options) { if (!wx.cloud) { console.error('请使用 2.2.3 或以上的基础库以使用云能力') } else { @@ -56,14 +56,18 @@ App({ /** * 初始化页面未登录时跳转到登录页 */ - if (!getToken()) { - setTimeout(() => { - this.toast("请使用手机号码登录"); - }, 1000); - wx.redirectTo({ - url: '/pages/login/index', - }); - return false; + if(options && options.proId){ + //扫码进入时不效验登录...跳转授权登录页 + }else{ + if (!getToken()) { + // setTimeout(() => { + // this.toast("请使用手机号码登录"); + // }, 1000); + wx.redirectTo({ + url: '/pages/login/index', + }); + return false; + } } }, diff --git a/yanzhu-ui-app/miniprogram/config.js b/yanzhu-ui-app/miniprogram/config.js index 2a0ae6b4..63d7bc0e 100644 --- a/yanzhu-ui-app/miniprogram/config.js +++ b/yanzhu-ui-app/miniprogram/config.js @@ -2,7 +2,6 @@ module.exports = { timeout: 60000, appId: "wx2350a5efb3f28e66", - baseUrl: 'https://guangzhou.sxyanzhu.com/YZLJXM', - //baseUrl: 'http://127.0.0.1:8080/yanZhuProject', - noSecuritys:['/captchaImage','/wxApi/login'] + baseUrl: 'http://127.0.0.1:8080', + noSecuritys:['/captchaImage','/login','/'] }; \ No newline at end of file diff --git a/yanzhu-ui-app/miniprogram/pages/login/login.js b/yanzhu-ui-app/miniprogram/pages/login/login.js index 2c1e07bc..0f706826 100644 --- a/yanzhu-ui-app/miniprogram/pages/login/login.js +++ b/yanzhu-ui-app/miniprogram/pages/login/login.js @@ -1,10 +1,14 @@ import { getToken, - setToken + setToken, + getOpenId, + setOpenId } from '../../utils/auth' import { login, + maLogin, getCodeImg, + getMaOpenId, refreshUser, } from '../../api/login' @@ -20,7 +24,6 @@ Page({ code: '', uuid: '', codeUrl: '', - show: false, checked: true }, @@ -43,19 +46,8 @@ Page({ }) }, - onClickShow() { - this.setData({ - show: true - }); - }, - - onClickHide() { - this.setData({ - show: false - }); - }, - onLoad: function (option) { + this.getMaOpenId(); if (getToken()) { console.log("Authorization...{}", getToken()); //刷新权限信息 @@ -74,6 +66,19 @@ Page({ } }, + /** + * 授权登录 + */ + getMaOpenId: function () { + wx.login({ + success: res => { + getMaOpenId(res.code).then(response => { + // + }); + } + }) + }, + loadCodeImage: function () { getCodeImg().then(res => { let captchaEnabled = res.captchaEnabled === undefined ? true : res.captchaEnabled @@ -104,7 +109,6 @@ Page({ return; } //启动蒙版 - //this.onClickShow(); let that = this; //发送请求 login({ @@ -126,7 +130,17 @@ Page({ }, getPhoneNumber(e) { - var_this = this + if(e.detail.code){ + let data = { + code:e.detail.code, + iv: e.detail.iv, + encryptedData: e.detail.encryptedData + } + maLogin({}) + }else{ + //用户决绝授权 + app.toast("请允许微信手机号一键登录"); + } console.log("getPhoneNumber", e) }, diff --git a/yanzhu-ui-app/miniprogram/pages/login/login.wxml b/yanzhu-ui-app/miniprogram/pages/login/login.wxml index 8daf4266..bfda00e3 100644 --- a/yanzhu-ui-app/miniprogram/pages/login/login.wxml +++ b/yanzhu-ui-app/miniprogram/pages/login/login.wxml @@ -27,10 +27,10 @@ - + \ No newline at end of file diff --git a/yanzhu-ui-app/miniprogram/utils/auth.js b/yanzhu-ui-app/miniprogram/utils/auth.js index ce904f0c..55c725c1 100644 --- a/yanzhu-ui-app/miniprogram/utils/auth.js +++ b/yanzhu-ui-app/miniprogram/utils/auth.js @@ -1,12 +1,22 @@ -const TokenKey = 'YanZhu-App-Token' +const TokenKey = 'YanZhu-XD-App-Token' +const OpenIdKey = 'YanZhu-XD-App-OpenId' + export function getToken() { return wx.getStorageSync(TokenKey) } - export function setToken(token) { return wx.setStorageSync(TokenKey, token) } - export function removeToken() { return wx.removeStorageSync(TokenKey) -} \ No newline at end of file +} + +export function getOpenId() { + return wx.getStorageSync(OpenIdKey) +} +export function setOpenId(openId) { + return wx.setStorageSync(OpenIdKey, openId) +} +export function removeOpenId() { + return wx.removeStorageSync(OpenIdKey) +} diff --git a/yanzhu-ui-app/miniprogram/utils/request.js b/yanzhu-ui-app/miniprogram/utils/request.js index 73ce86bd..2f8afdae 100644 --- a/yanzhu-ui-app/miniprogram/utils/request.js +++ b/yanzhu-ui-app/miniprogram/utils/request.js @@ -16,7 +16,7 @@ function doRequest(url, method = 'GET', data, header = {}) { } wx.showLoading({ mask: true, - title: url == config.noSecuritys[1] ? '登录中' : '请等待' + title: url == config.noSecuritys[1] ? '登录中' : '加载中' }) return new Promise((resolve, reject) => { wx.request({