From 8c04d27e5cebb7e654c208533e9567c4df2c8acc Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期四, 12 十二月 2019 14:21:44 +0800
Subject: [PATCH] 券时间限制

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImpl.java |   26 +++++++++++++++++++++-----
 1 files changed, 21 insertions(+), 5 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 2c77ed6..4a05ffa 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
@@ -25,8 +25,11 @@
 import com.yeshi.fanli.service.inter.order.OrderHongBaoMapService;
 import com.yeshi.fanli.service.inter.order.OrderService;
 import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
+import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
+import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TimeUtil;
 
 @Service
 public class InviteOrderSubsidyServiceImpl implements InviteOrderSubsidyService {
@@ -49,6 +52,9 @@
 	@Resource
 	private HongBaoManageService hongBaoManageService;
 
+	@Resource
+	private UserVIPInfoService userVIPInfoService;
+
 	@Override
 	public InviteOrderSubsidy getByOrderNoAndType(Long uid, String orderNo, Integer type) {
 		return inviteOrderSubsidyMapper.getByOrderNoAndType(uid, orderNo, type);
@@ -60,8 +66,12 @@
 	}
 
 	@Transactional
-	@Override
-	public void addOrderSubsidy(InviteOrderSubsidy orderSubsidy) throws InviteOrderSubsidyException {
+	private void addOrderSubsidy(InviteOrderSubsidy orderSubsidy) throws InviteOrderSubsidyException {
+		// TODO 纭畾鐢熸晥鏃ユ湡 鏈哄埗2020骞寸敓鏁�
+		if (System.currentTimeMillis() < TimeUtil.convertToTimeTemp("2020-01-01", "yyyy-MM-dd")&&!Constant.IS_TEST) {
+			return;
+		}
+
 		if (orderSubsidy.getMoney() == null || StringUtil.isNullOrEmpty(orderSubsidy.getOrderNo())
 				|| orderSubsidy.getSourceType() == null || orderSubsidy.getUid() == null)
 			throw new InviteOrderSubsidyException(1, "鏁版嵁涓嶅畬鏁�");
@@ -75,6 +85,9 @@
 			// 淇敼鐘舵��
 			InviteOrderSubsidy update = new InviteOrderSubsidy(old.getId());
 			update.setMoney(orderSubsidy.getMoney());
+			if (old.getState() == InviteOrderSubsidy.STATE_UNKNOWN) {// 鐘舵�佹湭纭畾涔嬪墠鎵嶅彲浠ユ洿鏀瑰師濮嬭ˉ璐磋祫閲�
+				update.setOriginalMoney(orderSubsidy.getOriginalMoney());
+			}
 			update.setState(orderSubsidy.getState());
 			update.setUpdateTime(new Date());
 			inviteOrderSubsidyMapper.updateByPrimaryKeySelective(update);
@@ -92,7 +105,7 @@
 		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)
@@ -147,15 +160,18 @@
 								rate = firstRate;
 							else
 								rate = secondRate;
-							BigDecimal money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(totalMoney, rate),
+							BigDecimal money = MoneyBigDecimalUtil.div(MoneyBigDecimalUtil.mul(totalMoney, rate),
 									new BigDecimal(100));
 							InviteOrderSubsidy orderSubsidy = new InviteOrderSubsidy();
 							orderSubsidy.setMoney(money);
+							orderSubsidy.setOriginalMoney(money);
 							orderSubsidy.setUid(uid);
 							orderSubsidy.setOrderNo(orderId);
 							orderSubsidy.setSourceType(sourceType);
 							orderSubsidy.setState(state);
-							addOrderSubsidy(orderSubsidy);
+							// VIP鐢ㄦ埛鎵嶈兘琛ヨ创
+							if (userVIPInfoService.isVIP(uid))
+								addOrderSubsidy(orderSubsidy);
 						}
 					}
 				}

--
Gitblit v1.8.0