From 99479e722a548734c818c27d79ddd3094edaf59e Mon Sep 17 00:00:00 2001
From: paulGao
Date: Tue, 26 Jul 2022 19:18:01 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B0=8F=E7=A8=8B=E5=BA=8F?=
=?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=94=A8=E6=88=B7=E6=B2=A1=E6=9C=89=E5=8F=91?=
=?UTF-8?q?=E9=80=81=E4=BC=9A=E5=91=98=E6=B3=A8=E5=86=8C=E4=BF=A1=E6=81=AF?=
=?UTF-8?q?=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../event/TransactionCommitSendMQEvent.java | 4 +--
.../serviceimpl/ConnectServiceImpl.java | 20 +++++++++++---
.../member/serviceimpl/MemberServiceImpl.java | 26 +++++++------------
3 files changed, 29 insertions(+), 21 deletions(-)
diff --git a/framework/src/main/java/cn/lili/common/event/TransactionCommitSendMQEvent.java b/framework/src/main/java/cn/lili/common/event/TransactionCommitSendMQEvent.java
index 9f16c1e4..7b3d2e73 100644
--- a/framework/src/main/java/cn/lili/common/event/TransactionCommitSendMQEvent.java
+++ b/framework/src/main/java/cn/lili/common/event/TransactionCommitSendMQEvent.java
@@ -21,9 +21,9 @@ public class TransactionCommitSendMQEvent extends ApplicationEvent {
private final String tag;
@Getter
- private final String message;
+ private final Object message;
- public TransactionCommitSendMQEvent(Object source, String topic, String tag, String message) {
+ public TransactionCommitSendMQEvent(Object source, String topic, String tag, Object message) {
super(source);
this.topic = topic;
this.tag = tag;
diff --git a/framework/src/main/java/cn/lili/modules/connect/serviceimpl/ConnectServiceImpl.java b/framework/src/main/java/cn/lili/modules/connect/serviceimpl/ConnectServiceImpl.java
index e910a6c7..942bf897 100644
--- a/framework/src/main/java/cn/lili/modules/connect/serviceimpl/ConnectServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/connect/serviceimpl/ConnectServiceImpl.java
@@ -8,7 +8,9 @@ import cn.lili.cache.CachePrefix;
import cn.lili.common.context.ThreadContextHolder;
import cn.lili.common.enums.ClientTypeEnum;
import cn.lili.common.enums.ResultCode;
+import cn.lili.common.event.TransactionCommitSendMQEvent;
import cn.lili.common.exception.ServiceException;
+import cn.lili.common.properties.RocketmqCustomProperties;
import cn.lili.common.security.AuthUser;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.security.token.Token;
@@ -29,11 +31,13 @@ import cn.lili.modules.system.entity.dto.connect.WechatConnectSetting;
import cn.lili.modules.system.entity.dto.connect.dto.WechatConnectSettingItem;
import cn.lili.modules.system.entity.enums.SettingEnum;
import cn.lili.modules.system.service.SettingService;
+import cn.lili.rocketmq.tags.MemberTagsEnum;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationEventPublisher;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -66,6 +70,14 @@ public class ConnectServiceImpl extends ServiceImpl impl
private MemberTokenGenerate memberTokenGenerate;
@Autowired
private Cache cache;
+ /**
+ * RocketMQ 配置
+ */
+ @Autowired
+ private RocketmqCustomProperties rocketmqCustomProperties;
+
+ @Autowired
+ private ApplicationEventPublisher applicationEventPublisher;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -235,6 +247,8 @@ public class ConnectServiceImpl extends ServiceImpl impl
memberService.save(newMember);
newMember = memberService.findByUsername(newMember.getUsername());
bindMpMember(openId, unionId, newMember);
+ // 发送会员注册信息
+ applicationEventPublisher.publishEvent(new TransactionCommitSendMQEvent("new member register", rocketmqCustomProperties.getMemberTopic(), MemberTagsEnum.MEMBER_REGISTER.name(), newMember));
return memberTokenGenerate.createToken(newMember, true);
}
@@ -262,9 +276,9 @@ public class ConnectServiceImpl extends ServiceImpl impl
* 这样,微信小程序注册之后,其他app 公众号页面,都可以实现绑定自动登录功能
*
*
- * @param openId 微信openid
- * @param unionId 微信unionid
- * @param member 会员
+ * @param openId 微信openid
+ * @param unionId 微信unionid
+ * @param member 会员
*/
private void bindMpMember(String openId, String unionId, Member member) {
diff --git a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
index c7eb0a70..71397bbf 100644
--- a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
@@ -8,6 +8,7 @@ import cn.lili.cache.CachePrefix;
import cn.lili.common.context.ThreadContextHolder;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.enums.SwitchEnum;
+import cn.lili.common.event.TransactionCommitSendMQEvent;
import cn.lili.common.exception.ServiceException;
import cn.lili.common.properties.RocketmqCustomProperties;
import cn.lili.common.security.AuthUser;
@@ -35,7 +36,6 @@ import cn.lili.modules.store.entity.dos.Store;
import cn.lili.modules.store.entity.enums.StoreStatusEnum;
import cn.lili.modules.store.service.StoreService;
import cn.lili.mybatis.util.PageUtil;
-import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
import cn.lili.rocketmq.tags.MemberTagsEnum;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@@ -43,8 +43,8 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationEventPublisher;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -88,11 +88,9 @@ public class MemberServiceImpl extends ServiceImpl impleme
*/
@Autowired
private RocketmqCustomProperties rocketmqCustomProperties;
- /**
- * RocketMQ
- */
+
@Autowired
- private RocketMQTemplate rocketMQTemplate;
+ private ApplicationEventPublisher applicationEventPublisher;
/**
* 缓存
*/
@@ -247,8 +245,8 @@ public class MemberServiceImpl extends ServiceImpl impleme
member.setId(SnowFlake.getIdStr());
//保存会员
this.save(member);
- String destination = rocketmqCustomProperties.getMemberTopic() + ":" + MemberTagsEnum.MEMBER_REGISTER.name();
- rocketMQTemplate.asyncSend(destination, member, RocketmqSendCallbackBuilder.commonCallback());
+ // 发送会员注册信息
+ applicationEventPublisher.publishEvent(new TransactionCommitSendMQEvent("new member register", rocketmqCustomProperties.getMemberTopic(), MemberTagsEnum.MEMBER_REGISTER.name(), member));
}
@Override
@@ -288,10 +286,7 @@ public class MemberServiceImpl extends ServiceImpl impleme
throw new ServiceException(ResultCode.USER_NOT_LOGIN);
}
Member member = this.getById(tokenUser.getId());
- if (member.getPassword().equals(DEFAULT_PASSWORD)) {
- return true;
- }
- return false;
+ return member.getPassword().equals(DEFAULT_PASSWORD);
}
@@ -350,8 +345,7 @@ public class MemberServiceImpl extends ServiceImpl impleme
Member member = new Member(userName, new BCryptPasswordEncoder().encode(password), mobilePhone);
//注册成功后用户自动登录
registerHandler(member);
- Token token = memberTokenGenerate.createToken(member, false);
- return token;
+ return memberTokenGenerate.createToken(member, false);
}
@Override
@@ -463,8 +457,8 @@ public class MemberServiceImpl extends ServiceImpl impleme
memberPointMessage.setPoint(point);
memberPointMessage.setType(type);
memberPointMessage.setMemberId(memberId);
- String destination = rocketmqCustomProperties.getMemberTopic() + ":" + MemberTagsEnum.MEMBER_POINT_CHANGE.name();
- rocketMQTemplate.asyncSend(destination, memberPointMessage, RocketmqSendCallbackBuilder.commonCallback());
+ // 发送会员注册信息
+ applicationEventPublisher.publishEvent(new TransactionCommitSendMQEvent("new member register", rocketmqCustomProperties.getMemberTopic(), MemberTagsEnum.MEMBER_REGISTER.name(), member));
return true;
}
return false;