From cc44f797c5a0a2f462c3426f477c00737fbf79b2 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 27 四月 2020 15:14:37 +0800 Subject: [PATCH] 导师消息消费订阅用户活跃 --- fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/TearcherMessageListener.java | 55 +++++++++++++++++++++++++++++++++---------------------- 1 files changed, 33 insertions(+), 22 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/TearcherMessageListener.java b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/TearcherMessageListener.java index 9706cf2..5bccc82 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/TearcherMessageListener.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/TearcherMessageListener.java @@ -15,6 +15,7 @@ import com.google.gson.Gson; import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum; import com.yeshi.fanli.dto.mq.user.body.InviteCodeActiveMQMsg; +import com.yeshi.fanli.dto.mq.user.body.UserActiveMQMsg; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.bus.user.vip.TearcherInfo; import com.yeshi.fanli.log.LogHelper; @@ -65,32 +66,42 @@ InviteCodeActiveMQMsg.class); if (inviteCodeActiveMQMsg != null) { // 椤剁骇涓烘祴璇曠敤鎴风殑鍏ㄩ儴鍒嗛厤瀹樻柟瀵煎笀寰俊 - - // 鑾峰彇椤剁骇boss - Long bossId = threeSaleSerivce.getTopBoss(inviteCodeActiveMQMsg.getUid()); - if (bossId != null) { - - if (officialUids == null) { - officialUids = new HashSet<>(); - List<UserInfo> userList = userInfoService.listByType(1, 1, 10000); - - for (UserInfo user : userList) - officialUids.add(user.getId()); - } - - if (officialUids.contains(bossId)) { - List<TearcherInfo> tearcherList = tearcherService.listByType(TearcherInfo.TYPE_OFFICIAL, 1, - 1); - if (tearcherList != null && tearcherList.size() > 0) { - tearcherService.addUserTearcherMap(tearcherList.get(0).getId(), - inviteCodeActiveMQMsg.getUid()); - } - } - } + initTearcher(inviteCodeActiveMQMsg.getUid()); + } + } else if (tag.equalsIgnoreCase(UserTopicTagEnum.userActve.name())) { + UserActiveMQMsg userActiveMQMsg = new Gson().fromJson(new String(message.getBody()), + UserActiveMQMsg.class); + if (userActiveMQMsg != null) { + initTearcher(userActiveMQMsg.getUid()); } } } return Action.CommitMessage; } + + private void initTearcher(Long uid) { + if (tearcherService.selectByUid(uid) != null) + return; + + // 鑾峰彇椤剁骇boss + Long bossId = threeSaleSerivce.getTopBoss(uid); + if (bossId != null) { + + if (officialUids == null) { + officialUids = new HashSet<>(); + List<UserInfo> userList = userInfoService.listByType(1, 1, 10000); + + for (UserInfo user : userList) + officialUids.add(user.getId()); + } + + if (officialUids.contains(bossId)) { + List<TearcherInfo> tearcherList = tearcherService.listByType(TearcherInfo.TYPE_OFFICIAL, 1, 1); + if (tearcherList != null && tearcherList.size() > 0) { + tearcherService.addUserTearcherMap(tearcherList.get(0).getId(), uid); + } + } + } + } } -- Gitblit v1.8.0