From 393e3a365b5ebbed6e9eef07fbd18881cde73711 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 28 三月 2020 16:51:04 +0800
Subject: [PATCH] Merge branch 'div' into div-1

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java |   29 ++++++++++++++++++++---------
 1 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java
index b582b81..ec8c4bc 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java
@@ -2,6 +2,7 @@
 
 import java.math.BigDecimal;
 import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.Iterator;
 import java.util.List;
@@ -16,9 +17,11 @@
 import com.yeshi.fanli.dao.mybatis.order.InviteOrderSubsidyMapper;
 import com.yeshi.fanli.entity.bus.user.HongBaoV2;
 import com.yeshi.fanli.entity.bus.user.Order;
+import com.yeshi.fanli.entity.order.CommonOrder;
 import com.yeshi.fanli.entity.order.HongBaoOrder;
 import com.yeshi.fanli.entity.order.InviteOrderSubsidy;
 import com.yeshi.fanli.exception.order.InviteOrderSubsidyException;
+import com.yeshi.fanli.service.inter.order.CommonOrderService;
 import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
 import com.yeshi.fanli.service.inter.order.HongBaoV2Service;
 import com.yeshi.fanli.service.inter.order.InviteOrderSubsidyService;
@@ -54,6 +57,9 @@
 	@Resource
 	private UserVIPInfoService userVIPInfoService;
 
+	@Resource
+	private CommonOrderService commonOrderService;
+
 	@Override
 	public InviteOrderSubsidy getByOrderNoAndType(Long uid, String orderNo, Integer type) {
 		return inviteOrderSubsidyMapper.getByOrderNoAndType(uid, orderNo, type);
@@ -64,13 +70,8 @@
 		return inviteOrderSubsidyMapper.getByOrderNoAndTypeForUpdate(uid, orderNo, type);
 	}
 
-	@Transactional
+	@Transactional(rollbackFor = Exception.class)
 	private void addOrderSubsidy(InviteOrderSubsidy orderSubsidy) throws InviteOrderSubsidyException {
-		//TODO 纭畾鐢熸晥鏃ユ湡  鏈哄埗2020骞寸敓鏁�
-		if (System.currentTimeMillis() < TimeUtil.convertToTimeTemp("2020-01-01", "yyyy-MM-dd")) {
-			return;
-		}
-
 		if (orderSubsidy.getMoney() == null || StringUtil.isNullOrEmpty(orderSubsidy.getOrderNo())
 				|| orderSubsidy.getSourceType() == null || orderSubsidy.getUid() == null)
 			throw new InviteOrderSubsidyException(1, "鏁版嵁涓嶅畬鏁�");
@@ -97,14 +98,14 @@
 		}
 	}
 
-	@Transactional
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void addOrUpdateByOrder(String orderId, int sourceType) throws InviteOrderSubsidyException {
 		List<HongBaoOrder> list = hongBaoOrderService.listByOrderIdAndSourceType(orderId, sourceType);
 		if (list != null && list.size() > 0) {
 			// 蹇呴』鏄嚜璐鍗曟墠杩斿埄
 			HongBaoV2 parent = hongBaoV2Service.selectByPrimaryKey(list.get(0).getHongBaoV2().getId());
-			if (parent != null && parent.getType() == HongBaoV2.TYPE_ZIGOU) {
+			if (parent != null && parent.getType() == HongBaoV2.TYPE_ZIGOU && parent.getUrank() != 100) {// 涓嶆槸浼氬憳鐨勮嚜璐墠琛ヨ创
 				Order order = orderService.findOrderByOrderIdAndType(orderId, sourceType);
 				List<Long> idList = new ArrayList<>();
 				for (HongBaoOrder ho : list)
@@ -168,6 +169,10 @@
 							orderSubsidy.setOrderNo(orderId);
 							orderSubsidy.setSourceType(sourceType);
 							orderSubsidy.setState(state);
+							if (type == HongBaoV2.TYPE_YIJI)
+								orderSubsidy.setLevel(InviteOrderSubsidy.LEVEL_ONE);
+							else
+								orderSubsidy.setLevel(InviteOrderSubsidy.LEVEL_TWO);
 							// VIP鐢ㄦ埛鎵嶈兘琛ヨ创
 							if (userVIPInfoService.isVIP(uid))
 								addOrderSubsidy(orderSubsidy);
@@ -218,6 +223,7 @@
 					InviteOrderSubsidy update = new InviteOrderSubsidy(subsidy.getId());
 					update.setState(InviteOrderSubsidy.STATE_INVALID);
 					update.setUpdateTime(new Date());
+					update.setInValidTime(new Date());
 					inviteOrderSubsidyMapper.updateByPrimaryKeySelective(update);
 				}
 			}
@@ -225,7 +231,8 @@
 
 	@Transactional
 	@Override
-	public void validByOrderIdAndSourceType(String orderId, int sourceType) {
+	public void validByOrderIdAndSourceType(String orderId, int sourceType) throws InviteOrderSubsidyException {
+
 		List<InviteOrderSubsidy> list = inviteOrderSubsidyMapper.listByOrderNoAndType(orderId, sourceType);
 		if (list != null && list.size() > 0)
 			for (InviteOrderSubsidy subsidy : list) {
@@ -233,12 +240,14 @@
 					InviteOrderSubsidy update = new InviteOrderSubsidy(subsidy.getId());
 					update.setState(InviteOrderSubsidy.STATE_VALID);
 					update.setUpdateTime(new Date());
+					update.setValidTime(new Date());
 					inviteOrderSubsidyMapper.updateByPrimaryKeySelective(update);
 				}
 			}
 
 	}
 
+	@Transactional
 	@Override
 	public void settleById(Long id, BigDecimal money) {
 		InviteOrderSubsidy orderSubsidy = new InviteOrderSubsidy(id);
@@ -246,6 +255,8 @@
 		orderSubsidy.setState(InviteOrderSubsidy.STATE_SUBSIDIZED);
 		orderSubsidy.setUpdateTime(new Date());
 		inviteOrderSubsidyMapper.updateByPrimaryKeySelective(orderSubsidy);
+		// 璁剧疆鍙粨绠�
+
 	}
 
 }

--
Gitblit v1.8.0