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/order/OrderDividentsMessageListener.java |  285 ++++++++++++++++++++++++++++++---------------------------
 1 files changed, 150 insertions(+), 135 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java
index 2d60100..e1c6cb8 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java
@@ -1,135 +1,150 @@
-package com.yeshi.fanli.util.rocketmq.consumer.order;
-
-import java.util.ArrayList;
-import java.util.List;
-
-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.OrderMQMsg;
-import com.yeshi.fanli.dto.mq.order.body.OrderWeiQuanMQMsg;
-import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum;
-import com.yeshi.fanli.dto.mq.user.body.UserForbiddenMQMsg;
-import com.yeshi.fanli.dto.order.UserTeamLevel;
-import com.yeshi.fanli.entity.bus.user.ThreeSale;
-import com.yeshi.fanli.entity.bus.user.vip.TeamUserLevelStatistic;
-import com.yeshi.fanli.entity.order.CommonOrder;
-import com.yeshi.fanli.exception.ParamsException;
-import com.yeshi.fanli.exception.money.TeamDividentsDebtException;
-import com.yeshi.fanli.exception.order.dividents.TeamDividentsSourceOrderException;
-import com.yeshi.fanli.log.LogHelper;
-import com.yeshi.fanli.service.inter.order.CommonOrderService;
-import com.yeshi.fanli.service.inter.order.dividents.TeamDividentsSourceOrderService;
-import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
-import com.yeshi.fanli.service.inter.user.vip.TeamUserLevelStatisticService;
-import com.yeshi.fanli.service.manger.order.TeamDividentsManager;
-import com.yeshi.fanli.service.manger.order.TeamDividentsSourceManager;
-import com.yeshi.fanli.util.order.CommonOrderUtil;
-import com.yeshi.fanli.util.rocketmq.MQTopicName;
-
-/**
- * 璁㈠崟鍒嗙孩娑堟伅
- * @author Administrator
- *
- */
-@Component
-public class OrderDividentsMessageListener implements MessageListener {
-
-	@Resource
-	private TeamDividentsSourceOrderService teamDividentsSourceOrderService;
-
-	@Resource
-	private CommonOrderService commonOrderService;
-
-	@Resource
-	private TeamDividentsManager teamDividentsManager;
-
-	@Resource
-	private TeamDividentsSourceManager teamDividentsSourceManager;
-
-	@Resource
-	private ThreeSaleSerivce threeSaleSerivce;
-
-	@Resource
-	private TeamUserLevelStatisticService teamUserLevelStatisticService;
-
-	public OrderDividentsMessageListener() {
-
-	}
-
-	@Override
-	public Action consume(Message message, ConsumeContext context) {
-		LogHelper.mqInfo("consumer:OrderDividentsMessageListener", message.getMsgID(), message.getTopic(),
-				message.getTag(), new String(message.getBody()));
-		String tag = message.getTag();
-
-		if (MQTopicName.TOPIC_USER.name().equalsIgnoreCase(message.getTopic())) {
-			if (tag.equalsIgnoreCase(UserTopicTagEnum.forbiddenUser.name())) {
-				// 鏌ヨ涓婄骇绾㈠寘
-				UserForbiddenMQMsg dto = new Gson().fromJson(new String(message.getBody()), UserForbiddenMQMsg.class);
-				if (dto != null) {
-					teamDividentsSourceOrderService.invalidOrderByUid(dto.getUid(), "鐢ㄦ埛琚皝绂�");
-					return Action.CommitMessage;
-				}
-			}
-		} else if (MQTopicName.TOPIC_ORDER.name().equalsIgnoreCase(message.getTopic())) {
-			if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderStatistic.name())) {
-				OrderMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderMQMsg.class);
-				if (dto.getHandleType() == OrderMQMsg.HANDLE_TYPE_ADD) {
-					List<CommonOrder> commonOrderList = commonOrderService.listBySourceTypeAndOrderId(dto.getType(),
-							dto.getOrderId());
-
-					int state = CommonOrderUtil.getState(commonOrderList);
-					if (commonOrderList.size() > 0 && state != CommonOrder.STATE_SX) {
-						List<UserTeamLevel> bossList = new ArrayList<>();
-						List<ThreeSale> threeSalesList = threeSaleSerivce.getMyBossDeepList(dto.getUid(), 100);
-						if (threeSalesList != null)
-							for (ThreeSale ts : threeSalesList) {
-								TeamUserLevelStatistic levelStatistic = teamUserLevelStatisticService
-										.selectByUid(ts.getBoss().getId());
-								if (levelStatistic == null) {
-									teamUserLevelStatisticService.initData(ts.getBoss().getId());
-									levelStatistic = teamUserLevelStatisticService.selectByUid(ts.getBoss().getId());
-								}
-								bossList.add(new UserTeamLevel(ts.getBoss().getId(), levelStatistic.getLevel()));
-							}
-						try {
-							teamDividentsSourceManager.addSource(commonOrderList, bossList);
-							return Action.CommitMessage;
-						} catch (TeamDividentsSourceOrderException e) {
-							if (e.getCode() == TeamDividentsSourceOrderException.CODE_EXIST) {
-								return Action.CommitMessage;
-							}
-						} catch (ParamsException e) {
-							e.printStackTrace();
-						}
-					}
-				} else {
-					teamDividentsSourceManager.updateOrderMoney(dto.getOrderId(), dto.getType());
-				}
-
-			} else if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderConfirm.name())) {// 璁㈠崟纭鏀惰揣
-				// 鎻掑叆鍒嗙孩
-				OrderConfirmMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderConfirmMQMsg.class);
-				teamDividentsSourceManager.orderSettle(dto.getOrderNo(), dto.getSourceType());
-			} else if (tag.equalsIgnoreCase(OrderTopicTagEnum.taoBaoOrderWeiQuan.name())) {
-				OrderWeiQuanMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderWeiQuanMQMsg.class);
-				try {
-					teamDividentsManager.weiQuan(dto.getOrderNo(), dto.getSourceType());
-					return Action.CommitMessage;
-				} catch (TeamDividentsDebtException e) {
-					e.printStackTrace();
-				}
-			}
-		}
-		return Action.CommitMessage;
-	}
-}
+package com.yeshi.fanli.util.rocketmq.consumer.order;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.annotation.Resource;
+
+import com.yeshi.fanli.entity.SystemEnum;
+import com.yeshi.fanli.entity.SystemFunction;
+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.OrderMQMsg;
+import com.yeshi.fanli.dto.mq.order.body.OrderWeiQuanMQMsg;
+import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum;
+import com.yeshi.fanli.dto.mq.user.body.UserForbiddenMQMsg;
+import com.yeshi.fanli.dto.order.UserTeamLevel;
+import com.yeshi.fanli.entity.bus.user.ThreeSale;
+import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
+import com.yeshi.fanli.entity.order.CommonOrder;
+import com.yeshi.fanli.exception.ParamsException;
+import com.yeshi.fanli.exception.money.TeamDividentsDebtException;
+import com.yeshi.fanli.exception.order.dividents.TeamDividentsSourceOrderException;
+import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.service.inter.order.CommonOrderService;
+import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
+import com.yeshi.fanli.service.manger.order.TeamDividentsManager;
+import com.yeshi.fanli.service.manger.order.TeamDividentsSourceManager;
+import com.yeshi.fanli.service.manger.user.UserLevelManager;
+import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.order.CommonOrderUtil;
+import com.yeshi.fanli.util.rocketmq.MQTopicName;
+
+/**
+ * 璁㈠崟鍒嗙孩娑堟伅
+ *
+ * @author Administrator
+ */
+@Component
+public class OrderDividentsMessageListener implements MessageListener {
+
+    @Resource
+    private CommonOrderService commonOrderService;
+
+    @Resource
+    private TeamDividentsManager teamDividentsManager;
+
+    @Resource
+    private TeamDividentsSourceManager teamDividentsSourceManager;
+
+    @Resource
+    private ThreeSaleSerivce threeSaleSerivce;
+
+    @Resource
+    private UserLevelManager userLevelManager;
+
+    @Resource
+    private UserInfoService userInfoService;
+
+    public OrderDividentsMessageListener() {
+
+    }
+
+    @Override
+    public Action consume(Message message, ConsumeContext context) {
+        LogHelper.mqInfo("consumer:OrderDividentsMessageListener", message.getMsgID(), message.getTopic(),
+                message.getTag(), new String(message.getBody()));
+        String tag = message.getTag();
+
+        if (MQTopicName.TOPIC_USER.name().equalsIgnoreCase(message.getTopic())) {
+            if (tag.equalsIgnoreCase(UserTopicTagEnum.forbiddenUser.name())) {
+                // 鏌ヨ涓婄骇绾㈠寘
+                UserForbiddenMQMsg dto = new Gson().fromJson(new String(message.getBody()), UserForbiddenMQMsg.class);
+                if (dto != null) {
+                    teamDividentsSourceManager.invalidBySourceUid(dto.getUid(), "鐢ㄦ埛琚皝绂�");
+                    return Action.CommitMessage;
+                }
+            }
+        } else if (MQTopicName.TOPIC_ORDER.name().equalsIgnoreCase(message.getTopic())) {
+            if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderStatistic.name())) {
+
+                OrderMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderMQMsg.class);
+                if (dto == null || dto.getStaticticDate().getTime() < Constant.NEW_ORDER_FANLI_RULE_TIME)
+                    return Action.CommitMessage;
+
+                //鏄惁鏈変笁绾у垎閿�鏉冮檺
+                SystemEnum system = userInfoService.getUserSystem(dto.getUid());
+                if (!SystemInfoUtil.hasFunctions(system, SystemFunction.threeSale))
+                    return Action.CommitMessage;
+
+                if (dto.isMiandan())// 鍏嶅崟鐨勫晢鍝佷笉鍙備笌鍒嗙孩
+                    return Action.CommitMessage;
+
+
+                if (dto.getHandleType() == OrderMQMsg.HANDLE_TYPE_ADD) {
+                    List<CommonOrder> commonOrderList = commonOrderService.listBySourceTypeAndOrderId(dto.getType(),
+                            dto.getOrderId());
+
+                    int state = CommonOrderUtil.getState(commonOrderList);
+                    if (commonOrderList.size() > 0 && state != CommonOrder.STATE_SX) {
+                        List<UserTeamLevel> bossList = new ArrayList<>();
+                        List<ThreeSale> threeSalesList = threeSaleSerivce.getMyBossDeepList(dto.getUid(), 100);
+                        if (threeSalesList != null)
+                            for (ThreeSale ts : threeSalesList) {
+                                UserLevelEnum level = userLevelManager.getUserLevel(ts.getBoss().getId());
+                                bossList.add(new UserTeamLevel(ts.getBoss().getId(), level));
+                            }
+                        try {
+                            teamDividentsSourceManager.addSource(commonOrderList, bossList);
+                            return Action.CommitMessage;
+                        } catch (TeamDividentsSourceOrderException e) {
+                            if (e.getCode() == TeamDividentsSourceOrderException.CODE_EXIST) {
+                                return Action.CommitMessage;
+                            }
+                        } catch (ParamsException e) {
+                            e.printStackTrace();
+                        }
+                    }
+                } else {
+                    teamDividentsSourceManager.updateOrderMoney(dto.getOrderId(), dto.getType());
+                }
+
+            } else if (tag.equalsIgnoreCase(OrderTopicTagEnum.orderConfirm.name())) {// 璁㈠崟纭鏀惰揣
+                OrderConfirmMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderConfirmMQMsg.class);
+                //鏄惁鏈変笁绾у垎閿�鏉冮檺
+                SystemEnum system = userInfoService.getUserSystem(dto.getSourceUid());
+                if (!SystemInfoUtil.hasFunctions(system, SystemFunction.threeSale))
+                    return Action.CommitMessage;
+                teamDividentsSourceManager.orderSettle(dto.getOrderNo(), dto.getSourceType());
+            } else if (tag.equalsIgnoreCase(OrderTopicTagEnum.taoBaoOrderWeiQuan.name())) {
+                OrderWeiQuanMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderWeiQuanMQMsg.class);
+                try {
+                    teamDividentsManager.weiQuan(dto.getOrderNo(), dto.getSourceType());
+                    return Action.CommitMessage;
+                } catch (TeamDividentsDebtException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        return Action.CommitMessage;
+    }
+}

--
Gitblit v1.8.0