增加会员登录事件,对token处理优化

This commit is contained in:
Chopper
2022-01-11 11:12:19 +08:00
parent cc7d2c0c82
commit eddcbc2ecb
14 changed files with 136 additions and 59 deletions

View File

@@ -0,0 +1,19 @@
package cn.lili.event;
import cn.lili.modules.member.entity.dos.Member;
/**
* 会员登录消息
*
* @author Chopper
* @since 2020/11/17 7:13 下午
*/
public interface MemberLoginEvent {
/**
* 会员登录
*
* @param member 会员
*/
void memberLogin(Member member);
}

View File

@@ -11,7 +11,7 @@ import cn.lili.modules.member.entity.dos.Member;
public interface MemberRegisterEvent {
/**
* 会员登录
* 会员注册
*
* @param member 会员
*/

View File

@@ -0,0 +1,25 @@
package cn.lili.event.impl;
import cn.lili.event.MemberLoginEvent;
import cn.lili.modules.member.entity.dos.Member;
import cn.lili.modules.member.service.MemberService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* 会员自身业务
*
* @author Chopper
* @version v1.0
* 2022-01-11 11:08
*/
@Service
public class MemberExecute implements MemberLoginEvent {
@Autowired
private MemberService memberService;
@Override
public void memberLogin(Member member) {
memberService.updateById(member);
}
}

View File

@@ -1,6 +1,7 @@
package cn.lili.listener;
import cn.hutool.json.JSONUtil;
import cn.lili.event.MemberLoginEvent;
import cn.lili.event.MemberPointChangeEvent;
import cn.lili.event.MemberRegisterEvent;
import cn.lili.event.MemberWithdrawalEvent;
@@ -51,6 +52,12 @@ public class MemberMessageListener implements RocketMQListener<MessageExt> {
@Autowired
private List<MemberRegisterEvent> memberSignEvents;
/**
* 会员注册
*/
@Autowired
private List<MemberLoginEvent> memberLoginEvents;
@Override
public void onMessage(MessageExt messageExt) {
@@ -69,6 +76,21 @@ public class MemberMessageListener implements RocketMQListener<MessageExt> {
}
}
break;
case MEMBER_LOGIN:
for (MemberLoginEvent memberLoginEvent : memberLoginEvents) {
try {
Member member = JSONUtil.toBean(new String(messageExt.getBody()), Member.class);
memberLoginEvent.memberLogin(member);
} catch (Exception e) {
log.error("会员{},在{}业务中,状态修改事件执行异常",
new String(messageExt.getBody()),
memberLoginEvent.getClass().getName(),
e);
}
}
break;
//会员签到
case MEMBER_SING:
MemberSign memberSign = JSONUtil.toBean(new String(messageExt.getBody()), MemberSign.class);