From 24a8d17e007545f7426c48352109aa1a9c6587ee Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 06 五月 2020 12:02:09 +0800
Subject: [PATCH] IOS上线隐藏我的界面的banner与超级会员升级信息

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/elme/ElmeOrderProcessServiceImpl.java |   39 +++++++++++++++++++++++++--------------
 1 files changed, 25 insertions(+), 14 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/elme/ElmeOrderProcessServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/elme/ElmeOrderProcessServiceImpl.java
index 8507938..2753bfe 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/elme/ElmeOrderProcessServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/elme/ElmeOrderProcessServiceImpl.java
@@ -9,7 +9,9 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import com.yeshi.fanli.entity.bus.user.HongBaoV2;
+import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
 import com.yeshi.fanli.entity.elme.ElmeHongBaoOrderMap;
 import com.yeshi.fanli.entity.elme.ElmeOrder;
 import com.yeshi.fanli.exception.elme.ElmeHongBaoOrderMapException;
@@ -21,7 +23,7 @@
 import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
 import com.yeshi.fanli.service.inter.order.msg.UserOrderMsgNotificationService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
-import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.elme.ElmeOrderUtil;
@@ -47,7 +49,10 @@
 	@Resource
 	private UserOrderMsgNotificationService userOrderMsgNotificationService;
 
-	@Transactional
+	@Resource
+	private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
+
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void processOrder(ElmeOrder elmeOrder) throws ElmeOrderException {
 		try {
@@ -62,11 +67,20 @@
 		ElmeHongBaoOrderMap map = elmeHongBaoOrderMapService.selectByOrderId(elmeOrder.getId());
 		if (map == null)// 璁㈠崟涓嶅瓨鍦�
 		{
-			String rid = elmeOrder.getRid();
-			if (StringUtil.isNullOrEmpty(rid))
+			Long uid = null;
+			if (StringUtil.isNullOrEmpty(elmeOrder.getChannelId())) {// 鏂扮増鏈�
+				UserExtraTaoBaoInfo extra = userExtraTaoBaoInfoService.getByRelationId(elmeOrder.getRid());
+				if (extra != null)
+					uid = extra.getUser().getId();
+			} else {// 鑰佺増鏈�
+				uid = Long.parseLong(elmeOrder.getRid());
+			}
+
+			if (uid == null)
 				return;
+
 			// 鏌ヨ鏄犲皠鐢ㄦ埛
-			UserInfo user = userInfoService.selectByPKey(Long.parseLong(rid));
+			UserInfo user = userInfoService.selectByPKey(uid);
 			if (user == null)
 				return;
 			// 鍒堕�爃ongbao
@@ -83,9 +97,7 @@
 			} catch (ElmeHongBaoOrderMapException e) {
 				throw new ElmeOrderException(e.getCode(), e.getMsg());
 			}
-			// 鍙戦�佹秷鎭�
-			userOrderMsgNotificationService.orderElmeStatistic(user.getId(), elmeOrder.getOrderId(),
-					Constant.SOURCE_TYPE_ELME, elmeOrder.getPayMoney(), hongBao.getMoney(), hongBao.getState());
+
 		} else {// 璁㈠崟瀛樺湪
 			HongBaoV2 oldHongBao = hongBaoV2Service.selectByPrimaryKey(map.getHongBao().getId());
 			if (oldHongBao == null)
@@ -101,17 +113,15 @@
 				update.setPreGetTime(hongBao.getPreGetTime());
 				update.setUpdateTime(new Date());
 				hongBaoV2Service.updateByPrimaryKeySelective(update);
-				// 鍙戦�佹秷鎭�
-				userOrderMsgNotificationService.orderElmeStateChanged(oldHongBao.getUserInfo().getId(),
-						elmeOrder.getOrderId(), Constant.SOURCE_TYPE_ELME, elmeOrder.getPayMoney(), hongBao.getMoney(),
-						hongBao.getState());
+
 			}
 		}
 
 	}
 
 	private HongBaoV2 createHongBao(ElmeOrder elmeOrder, UserInfo userInfo) {
-		BigDecimal fanliRate = hongBaoManageService.getFanLiRate(elmeOrder.getOrderDate().getTime());
+		BigDecimal fanliRate = hongBaoManageService.getFanLiRate(UserLevelEnum.daRen,
+				elmeOrder.getOrderDate().getTime());
 		HongBaoV2 hongBao = new HongBaoV2();
 		hongBao.setCreateTime(new Date());
 		hongBao.setGetTime(null);
@@ -120,7 +130,8 @@
 				new BigDecimal(100)));
 		if (elmeOrder.getIsSettle() == true)
 			hongBao.setPreGetTime(new Date(elmeOrder.getOrderDate().getTime() + 1000 * 60 * 60 * 24 * 15L));
-		if (elmeOrder.getPayMoney().compareTo(new BigDecimal(0)) <= 0)
+		if (elmeOrder.getPayMoney().compareTo(new BigDecimal(0)) <= 0
+				|| (elmeOrder.getState() != null && elmeOrder.getState() == 0))
 			hongBao.setState(HongBaoV2.STATE_SHIXIAO);
 		else {
 			if (elmeOrder.getIsSettle() == true) {

--
Gitblit v1.8.0