From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 18 一月 2020 12:06:27 +0800
Subject: [PATCH] 用户注册信息

---
 fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/coupon/SystemCouponMessageListener.java |   56 +++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 43 insertions(+), 13 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/coupon/SystemCouponMessageListener.java b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/coupon/SystemCouponMessageListener.java
index fbea907..88f3e52 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/coupon/SystemCouponMessageListener.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/coupon/SystemCouponMessageListener.java
@@ -1,5 +1,7 @@
 package com.yeshi.fanli.util.rocketmq.consumer.coupon;
 
+import javax.annotation.Resource;
+
 import org.springframework.stereotype.Component;
 
 import com.aliyun.openservices.ons.api.Action;
@@ -7,29 +9,57 @@
 import com.aliyun.openservices.ons.api.Message;
 import com.aliyun.openservices.ons.api.MessageListener;
 import com.google.gson.Gson;
-import com.yeshi.fanli.dto.order.OrderMoneyRecievedMQMsgDTO;
+import com.yeshi.fanli.dto.mq.BaseMQMsgBody;
+import com.yeshi.fanli.dto.mq.order.OrderTopicTagEnum;
+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.UserSystemCouponUseMQMsg;
 import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
 import com.yeshi.fanli.util.rocketmq.MQTopicName;
 
 @Component
 public class SystemCouponMessageListener implements MessageListener {
+
+	@Resource
+	private UserSystemCouponService userSystemCouponService;
+
 	@Override
 	public Action consume(Message message, ConsumeContext context) {
-		LogHelper.mqInfo("consumer-SystemCouponMessageListener", message.getTopic(), message.getTag(),
-				new String(message.getBody()));
-		if (MQTopicName.TOPIC_FANLI.name().equalsIgnoreCase(message.getTopic())) {
-			OrderMoneyRecievedMQMsgDTO orderMoneyRecievedMQMsgDTO = new Gson().fromJson(new String(message.getBody()),
-					OrderMoneyRecievedMQMsgDTO.class);
-			if (orderMoneyRecievedMQMsgDTO != null) {
-				if (orderMoneyRecievedMQMsgDTO.getOrderFirst() != null
-						&& orderMoneyRecievedMQMsgDTO.getOrderFirst() == true) {
-					// 棣栨鍒拌处杩斿埄
-					// TODO 涓氬姟浠g爜娣诲姞
+		LogHelper.mqInfo("consumer-SystemCouponMessageListener", message.getMsgID(), message.getTopic(),
+				message.getTag(), new String(message.getBody()));
+		String tag = message.getTag();
+		BaseMQMsgBody baseBody = new Gson().fromJson(new String(message.getBody()), BaseMQMsgBody.class);
 
-					// 涓氬姟浠g爜鎵ц鎴愬姛鍚庤繑鍥�
-					return Action.CommitMessage;
+		if (MQTopicName.TOPIC_ORDER.name().equalsIgnoreCase(message.getTopic())) {
+			if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderFanLiActual.name()))// 瀹炴椂鍒拌处
+			{
+				OrderMoneyRecievedMQMsg orderMoneyRecievedMQMsgDTO = new Gson().fromJson(new String(message.getBody()),
+						OrderMoneyRecievedMQMsg.class);
+				if (orderMoneyRecievedMQMsgDTO != null) {
+					if (orderMoneyRecievedMQMsgDTO.getOrderFirst() != null
+							&& orderMoneyRecievedMQMsgDTO.getOrderFirst() == true) {
+						// 棣栨鍒拌处杩斿埄
+						
+						// 婵�娲诲厤鍗曞埜
+						userSystemCouponService.triggerFreeCouponActivate(orderMoneyRecievedMQMsgDTO.getUid(),
+								orderMoneyRecievedMQMsgDTO.getOrderId(), orderMoneyRecievedMQMsgDTO.getSourceType());
+
+						// 涓氬姟浠g爜鎵ц鎴愬姛鍚庤繑鍥�
+						return Action.CommitMessage;
+					}
 				}
 			}
+		} else if (MQTopicName.TOPIC_USER.name().equalsIgnoreCase(message.getTopic())) {
+			if (UserTopicTagEnum.systemCouponDrawback.name().equalsIgnoreCase(tag)) {// 鍒搁��鍥�
+				UserSystemCouponUseMQMsg userSystemCouponUseMQMsg = new Gson().fromJson(new String(message.getBody()),
+						UserSystemCouponUseMQMsg.class);
+				//澶勭悊鍒搁��鍥�
+				userSystemCouponService.sendBackByGiveId(userSystemCouponUseMQMsg.getUserSystemCouponId());
+				
+				// 涓氬姟浠g爜鎵ц鎴愬姛鍚庤繑鍥�
+				return Action.CommitMessage;
+			}
 		}
 		return Action.CommitMessage;
 	}

--
Gitblit v1.8.0