From c035f02cd579d398274b95d4cae0bbdd60dd38c2 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期三, 15 四月 2020 16:48:03 +0800 Subject: [PATCH] 消息调整 --- fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/UserVIPMessageListener.java | 86 ++++++++++++++++++++++++++++++------------ 1 files changed, 61 insertions(+), 25 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/UserVIPMessageListener.java b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/UserVIPMessageListener.java index 1b6bc43..f22faf7 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/UserVIPMessageListener.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/UserVIPMessageListener.java @@ -10,11 +10,15 @@ import com.aliyun.openservices.ons.api.MessageListener; import com.google.gson.Gson; import com.yeshi.fanli.dto.mq.order.OrderTopicTagEnum; +import com.yeshi.fanli.dto.mq.order.body.OrderConfirmMQMsg; import com.yeshi.fanli.dto.mq.order.body.OrderMoneyRecievedMQMsg; import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum; -import com.yeshi.fanli.dto.mq.user.body.UserInviteMQMsg; -import com.yeshi.fanli.exception.money.OrderMoneySettleException; +import com.yeshi.fanli.dto.mq.user.body.ThreeSaleSeparateMQMsg; +import com.yeshi.fanli.dto.mq.user.body.UserLevelChangedMQMsg; +import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; +import com.yeshi.fanli.service.inter.user.vip.TeamUserLevelStatisticService; import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService; import com.yeshi.fanli.util.rocketmq.MQTopicName; @@ -24,46 +28,78 @@ * @author Administrator * */ -@Component +@Component public class UserVIPMessageListener implements MessageListener { @Resource private UserVIPPreInfoService userVIPPreInfoService; + @Resource + private TeamUserLevelStatisticService teamUserLevelStatisticService; + + @Resource + private ThreeSaleSerivce threeSaleSerivce; + @Override public Action consume(Message message, ConsumeContext context) { - - LogHelper.mqInfo("consumer-UserVIPMessageListener", message.getMsgID(), message.getTopic(), - message.getTag(), new String(message.getBody())); + + LogHelper.mqInfo("consumer-UserVIPMessageListener", message.getMsgID(), message.getTopic(), message.getTag(), + new String(message.getBody())); String tag = message.getTag(); if (tag == null) tag = ""; // 閭�璇风浉鍏� if (MQTopicName.TOPIC_USER.name().equalsIgnoreCase(message.getTopic())) { - // 閭�璇锋垚鍔� - if (tag.equalsIgnoreCase(UserTopicTagEnum.inviteSuccess.name())) { - UserInviteMQMsg msg = new Gson().fromJson(new String(message.getBody()),UserInviteMQMsg.class); - // 浼氬憳绛夌骇鍗囩骇 - userVIPPreInfoService.verifyVipPreInfo(msg.getBossId(), true); + if (tag.equalsIgnoreCase(UserTopicTagEnum.userLevelChanged.name())) {// 鐢ㄦ埛绛夌骇鍙戠敓鍙樺寲 + UserLevelChangedMQMsg msg = new Gson().fromJson(new String(message.getBody()), + UserLevelChangedMQMsg.class); + // 鏇存柊涓�2绾х殑閭�璇风粺璁� + teamUserLevelStatisticService.updateUserLevel(msg.getUid()); + UserInfo boss = threeSaleSerivce.getBoss(msg.getUid()); + if (boss != null) { + teamUserLevelStatisticService.initData(boss.getId()); + boss = threeSaleSerivce.getBoss(boss.getId()); + if (boss != null) { + teamUserLevelStatisticService.initData(boss.getId()); + } + } + return Action.CommitMessage; + } else if (tag.equalsIgnoreCase(UserTopicTagEnum.threeSaleSeparate.name())) {// 閭�璇峰叧绯昏劚绂� + ThreeSaleSeparateMQMsg msg = new Gson().fromJson(new String(message.getBody()), + ThreeSaleSeparateMQMsg.class); + // 鏇存柊涓婁袱绾ч個璇风粺璁� + teamUserLevelStatisticService.initData(msg.getBossUid()); + UserInfo boss = threeSaleSerivce.getBoss(msg.getBossUid()); + if (boss != null) { + teamUserLevelStatisticService.initData(boss.getId()); + } + return Action.CommitMessage; } - } - - // 璁㈠崟鍒拌处鐩稿叧 - if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderFanLiActual.name())) { - OrderMoneyRecievedMQMsg dto = new Gson().fromJson(new String(message.getBody()), - OrderMoneyRecievedMQMsg.class); - if (dto != null) { - if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_ZIGOU) {// 鑷喘鍒拌处 - // 浼氬憳绛夌骇鍗囩骇 - userVIPPreInfoService.verifyVipPreInfo(dto.getUid(), false); - } else if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_SHARE) {// 鍒嗕韩鍒拌处 - // 浼氬憳绛夌骇鍗囩骇 - userVIPPreInfoService.verifyVipPreInfo(dto.getUid(), false); + + } else if (MQTopicName.TOPIC_ORDER.name().equalsIgnoreCase(message.getTopic())) { + // 璁㈠崟鍒拌处鐩稿叧 + if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderFanLiActual.name())) { + OrderMoneyRecievedMQMsg dto = new Gson().fromJson(new String(message.getBody()), + OrderMoneyRecievedMQMsg.class); + if (dto != null) { + if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_ZIGOU) {// 鑷喘鍒拌处 + // 浼氬憳鍗囩骇-鑷喘璁㈠崟鏁伴噺楠岃瘉 + userVIPPreInfoService.upgradeVipByFanLiOrder(dto.getUid()); + } else if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_SHARE) {// 鍒嗕韩鍒拌处 + // 浼氬憳鍗囩骇-鍒嗕韩璁㈠崟鏁伴噺楠岃瘉 + userVIPPreInfoService.upgradeVipByShareOrder(dto.getUid()); + } + } + } else if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderConfirm.name())) { + OrderConfirmMQMsg dto = new Gson().fromJson(new String(message.getBody()),OrderConfirmMQMsg.class); + if (dto != null) { + // 浼氬憳绛夌骇鍗囩骇-绮変笣鏁伴噺楠岃瘉 + userVIPPreInfoService.upgradeVipByTeamNum(dto.getSourceUid()); } } } - + return Action.CommitMessage; } } -- Gitblit v1.8.0