From 44919f5505a7b42a5f1a33f6c6d27b16188a42c6 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期四, 07 十一月 2019 16:04:31 +0800 Subject: [PATCH] 消息 --- fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/redpack/RedPackMessageListener.java | 52 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 47 insertions(+), 5 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/redpack/RedPackMessageListener.java b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/redpack/RedPackMessageListener.java index e8a6432..1974202 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/redpack/RedPackMessageListener.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/redpack/RedPackMessageListener.java @@ -11,12 +11,14 @@ import com.google.gson.Gson; import com.yeshi.fanli.dto.mq.BaseMQMsgBody; import com.yeshi.fanli.dto.mq.order.OrderTopicTagEnum; +import com.yeshi.fanli.dto.mq.order.body.OrderMQMsg; +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.IntegralTaskMQMsg; import com.yeshi.fanli.dto.mq.user.body.UserAccountBindingMQMsg; import com.yeshi.fanli.dto.mq.user.body.UserInviteMQMsg; -import com.yeshi.fanli.dto.mq.user.body.UserRegisterMQMsg; import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.service.inter.redpack.RedPackWinInviteService; import com.yeshi.fanli.service.inter.user.UserSystemCouponService; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.rocketmq.MQTopicName; @@ -32,6 +34,9 @@ @Resource private UserSystemCouponService userSystemCouponService; + + @Resource + private RedPackWinInviteService redPackWinInviteService; @Override public Action consume(Message message, ConsumeContext context) { @@ -44,25 +49,62 @@ if (baseBody.isTest() != Constant.IS_TEST) return Action.ReconsumeLater; + if (MQTopicName.TOPIC_ORDER.name().equalsIgnoreCase(message.getTopic())) { if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderFanLiActual.name())) {// 杩斿埄鍒拌处 - + OrderMoneyRecievedMQMsg orderMoneyRecievedMQMsg = new Gson().fromJson(new String(message.getBody()), + OrderMoneyRecievedMQMsg.class); + if (orderMoneyRecievedMQMsg.getType() == OrderMoneyRecievedMQMsg.TYPE_SHARE) { + try {// 涓婄骇鍒嗕韩璁㈠崟濂栧姳 + redPackWinInviteService.orderArriveReward(orderMoneyRecievedMQMsg.getUid(), + orderMoneyRecievedMQMsg.getSourceType(), orderMoneyRecievedMQMsg.getOrderId()); + } catch (Exception e) { + e.printStackTrace(); + } + } } else if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderStatistic.name())) {// 璁㈠崟缁熻 - + OrderMQMsg orderMQMsg = new Gson().fromJson(new String(message.getBody()), + OrderMQMsg.class); + if (orderMQMsg.isValid()) { + try {// 閭�璇峰鍔� + redPackWinInviteService.inviteSucceedReward(orderMQMsg.getUid()); + } catch (Exception e) { + e.printStackTrace(); + } + } } + } else if (MQTopicName.TOPIC_USER.name().equalsIgnoreCase(message.getTopic())) { + boolean inviteSucceedReward = false; + Long uid = null; if (tag.equalsIgnoreCase(UserTopicTagEnum.userAccountBinding.name())) {// 璐﹀彿缁戝畾 UserAccountBindingMQMsg userAccountBindingMQMsg = new Gson().fromJson(new String(message.getBody()), UserAccountBindingMQMsg.class); - + Integer type = userAccountBindingMQMsg.getType(); + if (type == UserAccountBindingMQMsg.TYPE_PHONE || type == UserAccountBindingMQMsg.TYPE_TAOBAO) { + inviteSucceedReward = true; + uid = userAccountBindingMQMsg.getUid(); + } } else if (tag.equalsIgnoreCase(UserTopicTagEnum.inviteSuccess.name())) {// 閭�璇锋垚鍔� UserInviteMQMsg userInviteMQMsg = new Gson().fromJson(new String(message.getBody()), UserInviteMQMsg.class); - + inviteSucceedReward = true; + uid = userInviteMQMsg.getWorkerId(); } else if (tag.equalsIgnoreCase(UserTopicTagEnum.integralTaskFinish.name())) {// 閲戝竵浠诲姟瀹屾垚 IntegralTaskMQMsg integralTaskMQMsg = new Gson().fromJson(new String(message.getBody()), IntegralTaskMQMsg.class); + inviteSucceedReward = true; + uid = integralTaskMQMsg.getUid(); } + + if (inviteSucceedReward ) { + try {// 閭�璇峰鍔� + redPackWinInviteService.inviteSucceedReward(uid); + } catch (Exception e) { + e.printStackTrace(); + } + } + } return Action.CommitMessage; } -- Gitblit v1.8.0