From ee5c8055b1c0dd7c67a9025a76b10bd287c93d9a Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 15 四月 2020 09:52:27 +0800
Subject: [PATCH] 资金明细增加团队分红

---
 fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java |   63 +++++++++++++++++++++++++++++--
 1 files changed, 58 insertions(+), 5 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java b/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java
index 751df38..e024e5e 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java
@@ -20,6 +20,7 @@
 
 import com.yeshi.fanli.dto.ad.DouYinDeviceActiveQueueDTO;
 import com.yeshi.fanli.dto.money.UserMoneyChangeDTO;
+import com.yeshi.fanli.dto.order.dividents.UserDividentsDayDTO;
 import com.yeshi.fanli.entity.ad.DouYinClickEvent;
 import com.yeshi.fanli.entity.bus.user.AlipayTransferResultInfo;
 import com.yeshi.fanli.entity.bus.user.HongBaoV2;
@@ -57,6 +58,7 @@
 import com.yeshi.fanli.service.inter.user.integral.IntegralGetService;
 import com.yeshi.fanli.service.inter.user.integral.IntegralTaskRecordService;
 import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
+import com.yeshi.fanli.service.manger.order.TeamDividentsManager;
 import com.yeshi.fanli.util.ad.DouYinAdUtil;
 import com.yeshi.fanli.util.cmq.DouYinDeviceActiveCMQManager;
 import com.yeshi.fanli.util.cmq.HongBaoRecieveCMQManager;
@@ -138,6 +140,9 @@
 	@Resource
 	private DeviceActiveService deviceActiveService;
 
+	@Resource
+	private TeamDividentsManager teamDividentsManager;
+
 	private static boolean isInited = false;
 
 	public void onApplicationEvent(ContextRefreshedEvent arg0) {
@@ -174,6 +179,9 @@
 			doHongBaoRecieveIntegralGetJob();// 杩斿埄鍒拌处锛岄噾甯佸鍔�
 			// doPlaceOrderIntegralJob();// 涓嬪崟璧犻�侀噾甯佷换鍔�
 			// doDouYinDeviceActiveJob();// 鎶栭煶璁惧婵�娲诲箍鍛婄洃娴�
+
+			doDividentsJob();
+
 		}
 	}
 
@@ -327,7 +335,8 @@
 								try {
 									HongBaoV2 hongbao = map.get(handler);
 									if (hongbao != null) {
-										String key = "hongbao-fanli-" + hongbao.getId();
+										String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.hongBaoFanLi,
+												hongbao.getId() + "");
 										if (StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) {
 											// 澶勭悊涔嬪悗瑕侀殧2灏忔椂鍐嶆杩涜澶勭悊
 											redisManager.cacheCommonString(key, "1", 60 * 60 * 2);
@@ -840,14 +849,28 @@
 	private void fanliGetIntegral(HongBaoV2 hongBaoV2) {
 		if (hongBaoV2 != null && hongBaoV2.getState() == HongBaoV2.STATE_YILINGQU
 				&& hongBaoV2.getMoney().compareTo(new BigDecimal(0)) > 0) {
+			// 鏌ヨ瀵瑰簲鐨勮鍗曞彿
+			Long mainHongBaoId = hongBaoV2.getId();
+			if (hongBaoV2.getParent() != null && hongBaoV2.getParent().getId() != null)
+				mainHongBaoId = hongBaoV2.getParent().getId();
+
+			HongBaoOrder hongbaoOrder = hongBaoOrderService.selectDetailByHongBaoId(mainHongBaoId);
+			if (hongbaoOrder == null || hongbaoOrder.getCommonOrder() == null)
+				return;
+			CommonOrder commonOrder = hongbaoOrder.getCommonOrder();
+
 			if (hongBaoV2.getType() == HongBaoV2.TYPE_ZIGOU) {// 鑷喘璁㈠崟
-				integralGetService.addRebateOrder(hongBaoV2.getUserInfo().getId());
+				integralGetService.addRebateOrder(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(),
+						commonOrder.getSourceType());
 			} else if (hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_GOODS) {// 鍒嗕韩璁㈠崟
-				integralGetService.addShareOrder(hongBaoV2.getUserInfo().getId());
+				integralGetService.addShareOrder(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(),
+						commonOrder.getSourceType());
 			} else if (hongBaoV2.getType() == HongBaoV2.TYPE_YIJI || hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_YIJI) {// 涓�绾ч個璇�
-				integralGetService.addInviteOrderLevelOne(hongBaoV2.getUserInfo().getId());
+				integralGetService.addInviteOrderLevelOne(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(),
+						commonOrder.getSourceType());
 			} else if (hongBaoV2.getType() == HongBaoV2.TYPE_ERJI || hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_ERJI) {// 浜岀骇閭�璇�
-				integralGetService.addInviteOrderLevelTwo(hongBaoV2.getUserInfo().getId());
+				integralGetService.addInviteOrderLevelTwo(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(),
+						commonOrder.getSourceType());
 			}
 		}
 	}
@@ -1051,4 +1074,34 @@
 		});
 	}
 
+	// 鍒嗙孩
+	public void doDividentsJob() {
+		executor.execute(new Runnable() {
+			@Override
+			public void run() {
+				while (true) {
+					Map<String, UserDividentsDayDTO> map = CMQManager.getInstance().consumeTeamDividentsMsg(16);
+					if (map != null) {
+						Iterator<String> its = map.keySet().iterator();
+						while (its.hasNext()) {
+							String key = its.next();
+							UserDividentsDayDTO dto = map.get(key);
+							try {
+								teamDividentsManager.addToTeamEincome(dto.getUid(), dto.getPreGetTime());
+							} catch (Exception e) {
+								try {
+									LogHelper.errorDetailInfo(e);
+								} catch (Exception e1) {
+									e1.printStackTrace();
+								}
+							} finally {
+
+							}
+						}
+					}
+				}
+			}
+		});
+	}
+
 }

--
Gitblit v1.8.0