From 33afe2970691bd187d39bcba43c3d01a8fc55acc Mon Sep 17 00:00:00 2001 From: "382696293@qq.com" <382696293@qq.com> Date: Thu, 11 Jan 2024 20:18:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=B3=BB=E7=BB=9F=E7=94=A8?= =?UTF-8?q?=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/constant/UserConstants.java | 6 +++++ .../common/core/domain/entity/SysUser.java | 13 ++++++++++ .../main/resources/mapper/SysUserMapper.xml | 2 ++ .../service/impl/WxUserMemberServiceImpl.java | 25 ++++++++++--------- 4 files changed, 34 insertions(+), 12 deletions(-) diff --git a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/constant/UserConstants.java b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/constant/UserConstants.java index 0382f97..933f071 100644 --- a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/constant/UserConstants.java +++ b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/constant/UserConstants.java @@ -78,6 +78,12 @@ public class UserConstants public static final int PASSWORD_MAX_LENGTH = 20; + + /** + * 微信用户昵称 + */ + public static final String WX_NICKNAME = "微信用户"; + /** * 微信用户的后台密碼 */ diff --git a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/SysUser.java b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/SysUser.java index a49d390..1659d60 100644 --- a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/SysUser.java +++ b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/SysUser.java @@ -44,6 +44,10 @@ public class SysUser extends BaseEntity @Excel(name = "用户名称") private String nickName; + /** 用户类型 */ + @Excel(name = "用户类型") + private String userType; + /** 用户邮箱 */ @Excel(name = "用户邮箱") private String email; @@ -311,6 +315,15 @@ public class SysUser extends BaseEntity { this.roleId = roleId; } + + public String getUserType() { + return userType; + } + + public void setUserType(String userType) { + this.userType = userType; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) diff --git a/flossom-common/flossom-common-core/src/main/resources/mapper/SysUserMapper.xml b/flossom-common/flossom-common-core/src/main/resources/mapper/SysUserMapper.xml index 317d15b..3c4015b 100644 --- a/flossom-common/flossom-common-core/src/main/resources/mapper/SysUserMapper.xml +++ b/flossom-common/flossom-common-core/src/main/resources/mapper/SysUserMapper.xml @@ -147,6 +147,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" user_id, dept_id, user_name, + user_type, nick_name, email, avatar, @@ -161,6 +162,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{userId}, #{deptId}, #{userName}, + #{userType}, #{nickName}, #{email}, #{avatar}, diff --git a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxUserMemberServiceImpl.java b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxUserMemberServiceImpl.java index 90057f1..d5599f6 100644 --- a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxUserMemberServiceImpl.java +++ b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxUserMemberServiceImpl.java @@ -4,13 +4,14 @@ import com.alibaba.fastjson.JSON; import com.flossom.common.core.constant.CacheConstants; import com.flossom.common.core.constant.UserConstants; import com.flossom.common.core.domain.R; -import com.flossom.common.core.domain.RegisterBody; +import com.flossom.common.core.domain.entity.SysUser; import com.flossom.common.core.domain.entity.WxScriptMessage; import com.flossom.common.core.domain.entity.WxUserMember; import com.flossom.common.core.domain.entity.WxUserScriptLog; import com.flossom.common.core.enums.MessageTypeEnum; import com.flossom.common.core.enums.WxUserIntegralMessageTypeEnum; import com.flossom.common.core.exception.ServiceException; +import com.flossom.common.core.mapper.SysUserMapper; import com.flossom.common.core.mapper.WxScriptMessageMapper; import com.flossom.common.core.mapper.WxUserMemberMapper; import com.flossom.common.core.mapper.WxUserScriptLogMapper; @@ -54,6 +55,9 @@ public class WxUserMemberServiceImpl implements IWxUserMemberService { @Autowired private WxUserScriptLogMapper wxUserScriptLogMapper; + @Autowired + private SysUserMapper sysUserMapper; + @Override @Transactional public LoginUserVo login(String code) throws Exception { @@ -81,17 +85,14 @@ public class WxUserMemberServiceImpl implements IWxUserMemberService { // 2.2、微信用户表注册 wxUserMemberMapper.insertWxUserMember(wxUserMember); // 2.3、系统表注册 - /** - * TODO: 分布式事务 - */ - RegisterBody registerBody = new RegisterBody(); - registerBody.setUsername(wxUserMember.getOpenid()); - registerBody.setPassword(UserConstants.WX_SYSTEM_USER_PASSWORD); - R registerResult = remoteAuthService.register(registerBody); - if (R.FAIL == registerResult.getCode()) { - logger.error("测试后台账号失败:{}", registerResult.getMsg()); - throw new ServiceException(registerResult.getMsg()); - } + SysUser user = new SysUser(); + user.setUserName(wxUserMember.getOpenid()); + user.setNickName(UserConstants.WX_NICKNAME); + user.setPassword(SecurityUtils.encryptPassword(UserConstants.WX_SYSTEM_USER_PASSWORD)); + // 用户类型01:微信会员用户 + user.setUserType("01"); + user.setCreateBy(SecurityUtils.getUsername()); + sysUserMapper.insertUser(user); // 2.4、用户注册成功发送消息 WxScriptMessage wxScriptMessage = wxScriptMessageMapper.selectOneByMessageType(MessageTypeEnum.USER_REGISTRATION.getCode()); if (wxScriptMessage != null) {