From dd5b15229cb15459fa7c31ccea77dac28cbfafbd Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 13 四月 2020 10:04:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java |   99 ++++++++++++++++++++++---------------------------
 1 files changed, 44 insertions(+), 55 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java b/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java
index cc875e0..02d8abe 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java
@@ -23,6 +23,7 @@
 import com.yeshi.fanli.entity.bus.user.HongBaoV2;
 import com.yeshi.fanli.entity.bus.user.ThreeSale;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
 import com.yeshi.fanli.entity.order.CommonOrder;
 import com.yeshi.fanli.entity.order.CommonOrderGoods;
 import com.yeshi.fanli.entity.order.HongBaoOrder;
@@ -36,6 +37,7 @@
 import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
 import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
 import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
+import com.yeshi.fanli.service.manger.user.UserLevelManager;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.TaoBaoConstant;
@@ -76,6 +78,9 @@
 
 	@Resource
 	private UserVIPInfoService userVIPInfoService;
+
+	@Resource
+	private UserLevelManager userLevelManager;
 
 	/**
 	 * 娣诲姞绾㈠寘淇℃伅
@@ -129,59 +134,42 @@
 						switch (t) {
 						case HongBaoV2.TYPE_ZIGOU:
 							userOrderMsgNotificationService.orderFanLiStatistic(uid, orderId, orderType,
-									commonOrder.getPayment(), money, goodsCount, state);
+									commonOrder.getPayment(), money, goodsCount, commonOrder.getState(),
+									commonOrder.getThirdCreateTime());
+
 							break;
 						case HongBaoV2.TYPE_SHARE_GOODS:
+
 							userOrderMsgNotificationService.orderShareStatistic(uid, orderId, orderType,
-									commonOrder.getPayment(), money, goodsCount, state);
+									commonOrder.getPayment(), money, goodsCount, commonOrder.getState(),
+									commonOrder.getThirdCreateTime());
+
 							break;
 						case HongBaoV2.TYPE_YIJI:
 							userOrderMsgNotificationService.orderInviteStatistic(uid, orderId, orderType,
-									commonOrder.getPayment(), money, goodsCount, state);
+									commonOrder.getPayment(), money, goodsCount, commonOrder.getState(),
+									commonOrder.getThirdCreateTime());
+
 							break;
 						case HongBaoV2.TYPE_ERJI:
+						
+							userOrderMsgNotificationService.orderInviteStatistic(uid, orderId, orderType, 	commonOrder.getPayment(), money,
+									goodsCount,  commonOrder.getState(), commonOrder.getThirdCreateTime());
+
+							break;
+
+						case HongBaoV2.TYPE_SHARE_YIJI:
 							userOrderMsgNotificationService.orderInviteStatistic(uid, orderId, orderType,
-									commonOrder.getPayment(), money, goodsCount, state);
+									commonOrder.getPayment(), money, goodsCount, commonOrder.getState(),
+									commonOrder.getThirdCreateTime());
 							break;
-						case HongBaoV2.TYPE_SHARE_YIJI:
-							userOrderMsgNotificationService.orderShareFirstLevelStatistic(uid, orderId, orderType,
-									commonOrder.getPayment(), money, goodsCount, state, notify.getBeizhu());
-							break;
-						}
-					}
-				}
+						case HongBaoV2.TYPE_SHARE_ERJI:
+						
+							userOrderMsgNotificationService.orderInviteStatistic(uid, orderId, orderType, 	commonOrder.getPayment(), money,
+									goodsCount,  commonOrder.getState(), commonOrder.getThirdCreateTime());
 
-				// 娣诲姞鏂扮増鏈�氱煡
-
-				if (!hasAdd) {
-					Iterator<Integer> its = notificationMap.keySet().iterator();
-					while (its.hasNext()) {
-						Integer t = its.next();
-						HongBaoV2 notify = notificationMap.get(t).getHongBaoV2();
-						CommonOrder commonOrder = notificationMap.get(t).getCommonOrder();
-						String orderId = commonOrderList.get(0).getOrderNo();
-						Long uid = notify.getUserInfo().getId();
-						BigDecimal money = notify.getMoney();
-						switch (t) {
-						case HongBaoV2.TYPE_ZIGOU:
-							userOrderMsgNotificationService.orderFanLiStateChanged(uid, orderId, orderType,
-									commonOrder.getPayment(), money, state);
-							break;
-						case HongBaoV2.TYPE_SHARE_GOODS:
-							userOrderMsgNotificationService.orderShareStateChanged(uid, orderId, orderType,
-									commonOrder.getPayment(), money, state);
-							break;
-						case HongBaoV2.TYPE_YIJI:
-							userOrderMsgNotificationService.orderInviteStateChanged(uid, orderId, orderType,
-									commonOrder.getPayment(), money, state);
-							break;
-						case HongBaoV2.TYPE_ERJI:
-							userOrderMsgNotificationService.orderInviteStateChanged(uid, orderId, orderType,
-									commonOrder.getPayment(), money, state);
-							break;
-						case HongBaoV2.TYPE_SHARE_YIJI:
-							userOrderMsgNotificationService.orderShareFirstLevelStateChanged(uid, orderId, orderType,
-									commonOrder.getPayment(), money, state);
+							break;	
+							
 						}
 					}
 				}
@@ -471,7 +459,7 @@
 				}
 			}
 
-			HongBaoV2 hongBao = createFanLiHongBao(commonOrder, fanliRate, mianDanMoney, vip);
+			HongBaoV2 hongBao = createFanLiHongBao(commonOrder, fanliRate, mianDanMoney);
 			if (hongBao == null)
 				return;
 			addFanLiOrShareHongBao(hongBao, commonOrder, notificationMap);
@@ -630,7 +618,8 @@
 		UserInfo user = userInfoService.selectAvailableByPrimaryKey(uid);
 		if (user == null)
 			return null;
-		boolean isVIP = userVIPInfoService.isVIP(uid);
+
+		UserLevelEnum level = userLevelManager.getUserLevel(uid);
 
 		HongBaoV2 child = new HongBaoV2();
 		child.setParent(parent);
@@ -649,13 +638,11 @@
 		}
 
 		child.setUserInfo(user);
-		child.setUrank(user.getRank());
+		child.setUrank(level.getOrderRank());
 		child.setVersion(2);
 		child.setCreateTime(new Date());
 		child.setOrderType(commonOrder.getSourceType());
 		if (child.getMoney() == null)
-			return null;
-		if (child.getMoney().compareTo(new BigDecimal(0)) <= 0 && !isVIP)
 			return null;
 		return child;
 	}
@@ -668,13 +655,11 @@
 	 *            -杩斿埄姣斾緥
 	 * @param mianDanMoney
 	 *            鍏嶅崟閲戦
-	 * @param isVIP-鏄惁涓篤IP璁㈠崟
 	 * @return
 	 * @throws HongBaoException
 	 * @throws UserAccountException
 	 */
-	private HongBaoV2 createFanLiHongBao(CommonOrder commonOrder, BigDecimal fanliRate, BigDecimal mianDanMoney,
-			boolean isVIP) throws HongBaoException, UserAccountException {
+	private HongBaoV2 createFanLiHongBao(CommonOrder commonOrder, BigDecimal fanliRate, BigDecimal mianDanMoney) throws HongBaoException, UserAccountException {
 		HongBaoV2 hongBao = new HongBaoV2();
 		hongBao.setUserInfo(commonOrder.getUserInfo());
 		hongBao.setCreateTime(new Date());
@@ -704,9 +689,11 @@
 		UserInfo user = userInfoService.getUserById(commonOrder.getUserInfo().getId());
 		if (user == null)
 			throw new UserAccountException(1001, "鐢ㄦ埛涓嶅瓨鍦�/琚皝绂�");
-		if (isVIP) {
-			hongBao.setUrank(100);// VIP鐨勭瓑绾ц缃负100
-		} else {
+		UserLevelEnum userLevel = userLevelManager.getUserLevel(commonOrder.getUserInfo().getId(),
+				commonOrder.getThirdCreateTime());
+		if (userLevel != null)
+			hongBao.setUrank(userLevel.getOrderRank());
+		else {
 			hongBao.setUrank(user.getRank());
 		}
 		hongBao.setOrderType(commonOrder.getSourceType());
@@ -850,8 +837,10 @@
 		UserInfo user = userInfoService.getUserById(commonOrder.getUserInfo().getId());
 		if (user == null)
 			throw new UserAccountException(1001, "鐢ㄦ埛涓嶅瓨鍦�/琚皝绂�");
-		if (isVip)
-			hongBao.setUrank(100);
+		UserLevelEnum userLevel = userLevelManager.getUserLevel(commonOrder.getUserInfo().getId(),
+				commonOrder.getThirdCreateTime());
+		if (userLevel != null)
+			hongBao.setUrank(userLevel.getOrderRank());
 		else
 			hongBao.setUrank(user.getRank());
 		hongBao.setUserInfo(user);

--
Gitblit v1.8.0