From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 25 二月 2025 16:41:22 +0800
Subject: [PATCH] 淘宝转链接口更新

---
 fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/UserVIPMessageListener.java |  306 ++++++++++++++++++++++++++++----------------------
 1 files changed, 169 insertions(+), 137 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 47c3d3e..a791b5c 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
@@ -1,137 +1,169 @@
-package com.yeshi.fanli.util.rocketmq.consumer.user;
-
-import javax.annotation.Resource;
-
-import org.springframework.stereotype.Component;
-
-import com.aliyun.openservices.ons.api.Action;
-import com.aliyun.openservices.ons.api.ConsumeContext;
-import com.aliyun.openservices.ons.api.Message;
-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.ThreeSaleSeparateMQMsg;
-import com.yeshi.fanli.dto.mq.user.body.UserLevelChangedMQMsg;
-import com.yeshi.fanli.entity.bus.user.UserActiveLog;
-import com.yeshi.fanli.entity.bus.user.UserInfo;
-import com.yeshi.fanli.log.LogHelper;
-import com.yeshi.fanli.service.inter.user.UserActiveLogService;
-import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
-import com.yeshi.fanli.service.inter.user.invite.UserInviteValidNumService;
-import com.yeshi.fanli.service.inter.user.vip.TeamUserLevelStatisticService;
-import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService;
-import com.yeshi.fanli.util.Constant;
-import com.yeshi.fanli.util.VersionUtil;
-import com.yeshi.fanli.util.rocketmq.MQTopicName;
-
-/**
- * 鐢ㄦ埛瓒呯骇浼氬憳
- * 
- * @author Administrator
- *
- */
-@Component
-public class UserVIPMessageListener implements MessageListener {
-
-	@Resource
-	private UserVIPPreInfoService userVIPPreInfoService;
-
-	@Resource
-	private TeamUserLevelStatisticService teamUserLevelStatisticService;
-
-	@Resource
-	private ThreeSaleSerivce threeSaleSerivce;
-
-	@Resource
-	private UserInviteValidNumService userInviteValidNumService;
-
-	@Resource
-	private UserActiveLogService userActiveLogService;
-	
-
-	@Override
-	public Action consume(Message message, ConsumeContext context) {
-
-		LogHelper.mqInfo("consumer-UserVIPMessageListener", message.getMsgID(), message.getTopic(), message.getTag(),
-				new String(message.getBody()));
-		String tag = message.getTag();
-		if (tag == null)
-			tag = "";
-
-		if (java.lang.System.currentTimeMillis() <= Constant.NEW_ORDER_FANLI_RULE_TIME) {
-			return Action.CommitMessage;
-		}
-
-		// 閭�璇风浉鍏�
-		if (MQTopicName.TOPIC_USER.name().equalsIgnoreCase(message.getTopic())) {
-			if (tag.equalsIgnoreCase(UserTopicTagEnum.userLevelChanged.name())) {// 鐢ㄦ埛绛夌骇鍙戠敓鍙樺寲
-				UserLevelChangedMQMsg msg = new Gson().fromJson(new String(message.getBody()),
-						UserLevelChangedMQMsg.class);
-
-				for (Long fuid : Constant.NO_UPGRADE_UIDS) {// 绂佹涓嶈兘鍗囩骇鐨勭敤鎴峰崌绾�
-					if (msg.getUid().longValue() == fuid)
-						return Action.CommitMessage;
-				}
-
-				// 鏇存柊涓�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 (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) {
-					for (Long fuid : Constant.NO_UPGRADE_UIDS) {// 绂佹涓嶈兘鍗囩骇鐨勭敤鎴峰崌绾�
-						if (dto.getUid().longValue() == fuid)
-							return Action.CommitMessage;
-					}
-					// 鍒ゆ柇鐗堟湰
-					UserActiveLog log = userActiveLogService.getUserLatestActiveInfo(dto.getUid());
-
-					if (log == null || !VersionUtil.greaterThan_2_1(
-							"appstore".equalsIgnoreCase(log.getChannel()) ? "ios" : "android", log.getVersionCode())) {
-						return Action.CommitMessage;
-					}
-
-					if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_ZIGOU) {// 鑷喘鍒拌处
-						// 浼氬憳鍗囩骇-鑷喘璁㈠崟鏁伴噺楠岃瘉
-						userVIPPreInfoService.upgradeVipByMyOrder(dto.getUid());
-					} else if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_SHARE) {// 鍒嗕韩鍒拌处
-						// 浼氬憳鍗囩骇-鍒嗕韩璁㈠崟鏁伴噺楠岃瘉
-						userVIPPreInfoService.upgradeVipByMyOrder(dto.getUid());
-					}
-				}
-			} else if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderConfirm.name())) {
-				OrderConfirmMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderConfirmMQMsg.class);
-				if (dto != null) {
-					for (Long fuid : Constant.NO_UPGRADE_UIDS) {// 绂佹涓嶈兘鍗囩骇鐨勭敤鎴峰崌绾�
-						if (dto.getSourceUid().longValue() == fuid)
-							return Action.CommitMessage;
-					}
-
-					// 浼氬憳绛夌骇鍗囩骇-绮変笣鏁伴噺楠岃瘉
-					userVIPPreInfoService.upgradeVipByTeamNum(dto.getSourceUid());
-					userInviteValidNumService.addValidTeamNum(dto.getSourceUid(), dto.getSettleMent(),
-							dto.getPlaceOrderTime());
-				}
-			}
-		}
-
-		return Action.CommitMessage;
-	}
-}
+package com.yeshi.fanli.util.rocketmq.consumer.user;
+
+import javax.annotation.Resource;
+
+import com.yeshi.fanli.entity.SystemEnum;
+import com.yeshi.fanli.entity.SystemFunction;
+import com.yeshi.fanli.exception.user.vip.UserVIPUpgradeException;
+import com.yeshi.fanli.service.inter.user.UserInfoService;
+import com.yeshi.fanli.util.SystemInfoUtil;
+import org.springframework.stereotype.Component;
+
+import com.aliyun.openservices.ons.api.Action;
+import com.aliyun.openservices.ons.api.ConsumeContext;
+import com.aliyun.openservices.ons.api.Message;
+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.ThreeSaleSeparateMQMsg;
+import com.yeshi.fanli.dto.mq.user.body.UserLevelChangedMQMsg;
+import com.yeshi.fanli.entity.bus.user.UserActiveLog;
+import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.service.inter.user.UserActiveLogService;
+import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
+import com.yeshi.fanli.service.inter.user.invite.UserInviteValidNumService;
+import com.yeshi.fanli.service.inter.user.vip.TeamUserLevelStatisticService;
+import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService;
+import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.VersionUtil;
+import com.yeshi.fanli.util.rocketmq.MQTopicName;
+
+/**
+ * 鐢ㄦ埛瓒呯骇浼氬憳
+ *
+ * @author Administrator
+ */
+@Component
+public class UserVIPMessageListener implements MessageListener {
+
+    @Resource
+    private UserVIPPreInfoService userVIPPreInfoService;
+
+    @Resource
+    private TeamUserLevelStatisticService teamUserLevelStatisticService;
+
+    @Resource
+    private ThreeSaleSerivce threeSaleSerivce;
+
+    @Resource
+    private UserInviteValidNumService userInviteValidNumService;
+
+    @Resource
+    private UserActiveLogService userActiveLogService;
+
+    @Resource
+    private UserInfoService userInfoService;
+
+
+    @Override
+    public Action consume(Message message, ConsumeContext context) {
+
+        LogHelper.mqInfo("consumer-UserVIPMessageListener", message.getMsgID(), message.getTopic(), message.getTag(),
+                new String(message.getBody()));
+        String tag = message.getTag();
+        if (tag == null)
+            tag = "";
+
+        if (java.lang.System.currentTimeMillis() <= Constant.NEW_ORDER_FANLI_RULE_TIME) {
+            return Action.CommitMessage;
+        }
+
+        // 閭�璇风浉鍏�
+        if (MQTopicName.TOPIC_USER.name().equalsIgnoreCase(message.getTopic())) {
+            if (tag.equalsIgnoreCase(UserTopicTagEnum.userLevelChanged.name())) {// 鐢ㄦ埛绛夌骇鍙戠敓鍙樺寲
+                UserLevelChangedMQMsg msg = new Gson().fromJson(new String(message.getBody()),
+                        UserLevelChangedMQMsg.class);
+
+                //鍒ゆ柇绯荤粺鏄惁鏈変笁绾у垎閿�鍔熻兘
+                Long sourceUid = msg.getUid();
+                SystemEnum system = userInfoService.getUserSystem(sourceUid);
+                if (!SystemInfoUtil.hasFunctions(system, SystemFunction.threeSale, SystemFunction.vip))
+                    return Action.CommitMessage;
+
+                for (Long fuid : Constant.NO_UPGRADE_UIDS) {// 绂佹涓嶈兘鍗囩骇鐨勭敤鎴峰崌绾�
+                    if (msg.getUid().longValue() == fuid)
+                        return Action.CommitMessage;
+                }
+
+
+                // 鏇存柊涓�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 (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) {
+                    SystemEnum system = userInfoService.getUserSystem(dto.getUid());
+                    if (!SystemInfoUtil.hasFunctions(system, SystemFunction.vip))
+                        return Action.CommitMessage;
+                    for (Long fuid : Constant.NO_UPGRADE_UIDS) {// 绂佹涓嶈兘鍗囩骇鐨勭敤鎴峰崌绾�
+                        if (dto.getUid().longValue() == fuid)
+                            return Action.CommitMessage;
+                    }
+                    // 鍒ゆ柇鐗堟湰
+                    UserActiveLog log = userActiveLogService.getUserLatestActiveInfo(dto.getUid());
+                    if (log == null || !VersionUtil.greaterThan_2_1(
+                            "appstore".equalsIgnoreCase(log.getChannel()) ? "ios" : "android", log.getVersionCode())) {
+                        return Action.CommitMessage;
+                    }
+
+                    if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_ZIGOU) {// 鑷喘鍒拌处
+                        // 浼氬憳鍗囩骇-鑷喘璁㈠崟鏁伴噺楠岃瘉
+                        try {
+                            userVIPPreInfoService.upgradeVipByMyOrder(dto.getUid());
+                        } catch (UserVIPUpgradeException e) {
+                            e.printStackTrace();
+                        }
+                    } else if (dto.getType() == OrderMoneyRecievedMQMsg.TYPE_SHARE) {// 鍒嗕韩鍒拌处
+                        // 浼氬憳鍗囩骇-鍒嗕韩璁㈠崟鏁伴噺楠岃瘉
+                        try {
+                            userVIPPreInfoService.upgradeVipByMyOrder(dto.getUid());
+                        } catch (UserVIPUpgradeException e) {
+                            e.printStackTrace();
+                        }
+                    }
+                }
+
+            } else if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderConfirm.name())) {
+                OrderConfirmMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderConfirmMQMsg.class);
+                if (dto != null) {
+                    SystemEnum system = userInfoService.getUserSystem(dto.getSourceUid());
+                    if (!SystemInfoUtil.hasFunctions(system, SystemFunction.vip))
+                        return Action.CommitMessage;
+                    for (Long fuid : Constant.NO_UPGRADE_UIDS) {// 绂佹涓嶈兘鍗囩骇鐨勭敤鎴峰崌绾�
+                        if (dto.getSourceUid().longValue() == fuid)
+                            return Action.CommitMessage;
+                    }
+
+                    // 浼氬憳绛夌骇鍗囩骇-绮変笣鏁伴噺楠岃瘉
+                    try {
+                        userVIPPreInfoService.upgradeVipByTeamNum(dto.getSourceUid());
+                    } catch (UserVIPUpgradeException e) {
+                        e.printStackTrace();
+                    }
+                    userInviteValidNumService.addValidTeamNum(dto.getSourceUid(), dto.getSettleMent(),
+                            dto.getPlaceOrderTime());
+                }
+            }
+        }
+
+        return Action.CommitMessage;
+    }
+}

--
Gitblit v1.8.0