From d88c167fc5973a2c15ff1539e4cdab36e4a7842c Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期三, 28 八月 2019 14:47:15 +0800
Subject: [PATCH] 奖励券使用区分订单下单三方日期

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java |  100 ++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 89 insertions(+), 11 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
index 5a7cf37..43f8117 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
@@ -185,6 +185,11 @@
 	}
 	
 	@Override
+	public long countCouponOld(Long uid) {
+		return userSystemCouponMapper.countCouponOld(uid);
+	}
+	
+	@Override
 	public long countUserCouponList(Long uid) {
 		return userSystemCouponMapper.countUserCouponList(uid);
 	}
@@ -308,7 +313,7 @@
 		// 閫�鍥炲埜
 		sendBackTimeOutCoupon(uid);
 		
-		List<UserSystemCouponVO> listVO = userSystemCouponMapper.getUserCouponVOList(start, count, uid);
+		List<UserSystemCouponVO> listVO = userSystemCouponMapper.getCouponListOld(start, count, uid);
 		if (listVO == null || listVO.size() == 0) {
 			return listVO;
 		}
@@ -1834,11 +1839,12 @@
 					// 鍙娇鐢ㄣ�� 鍙禒閫�
 					userCouponVO.setState(UserSystemCoupon.STATE_USE_GIVE);
 
-					// 杩斿埄濂栧姳鍒�- 璺宠浆鑷宠鍗曞埌璐︾晫闈�
+					// 杩斿埄濂栧姳鍒�- 璺宠浆鑷冲凡鍒拌处-宸叉敹璐�
 					jumpLink.put("state", "2");
+					jumpLink.put("type", "1");
 					jumpBtn = new HashMap<String, Object>();
 					jumpBtn.put("params", jumpLink);
-					jumpBtn.put("jumpDetail", jumpDetailV2Service.getByTypeCache("orderList"));
+					jumpBtn.put("jumpDetail", jumpDetailV2Service.getByTypeCache("order_screen_list"));
 				}
 			} else if (UserSystemCoupon.STATE_IN_USE == state && give) {
 				userCouponVO.setCouponEffect("璧犻�佷腑");
@@ -2142,10 +2148,10 @@
 	
 	@Override
 	public boolean getIncludeExchange(Long uid) {
-		List<String> list = new ArrayList<String>();
-		list.add(UserSystemCoupon.SOURCE_EXCHANGE);
-		list.add(UserSystemCoupon.SOURCE_GIVE);
-		List<UserSystemCoupon> listCoupon = userSystemCouponMapper.getIncludeExchange(uid, list);
+		String percent = configService.get("exchange_rebate_percent");
+		if (StringUtil.isNullOrEmpty(percent)) 
+			percent = "35";
+		List<UserSystemCoupon> listCoupon = userSystemCouponMapper.getIncludeExchange(uid, Integer.parseInt(percent), CouponTypeEnum.rebatePercentCoupon.name());
 		if (listCoupon == null || listCoupon.size() == 0)
 			return false;
 		return true;
@@ -2154,13 +2160,85 @@
 	
 	@Override
 	public boolean getIncludeNotExchange(Long uid) {
-		List<String> list = new ArrayList<String>();
-		list.add(UserSystemCoupon.SOURCE_EXCHANGE);
-		list.add(UserSystemCoupon.SOURCE_GIVE);
-		List<UserSystemCoupon> listCoupon = userSystemCouponMapper.getIncludeNotExchange(uid, list);
+		String percent = configService.get("exchange_rebate_percent");
+		if (StringUtil.isNullOrEmpty(percent)) 
+			percent = "35";
+		List<UserSystemCouponVO> listCoupon = userSystemCouponMapper.getIncludeNotExchange(uid, Integer.parseInt(percent), CouponTypeEnum.rebatePercentCoupon.name());
 		if (listCoupon == null || listCoupon.size() == 0)
 			return false;
 		return true;
 	}
 
+	
+	@Override
+	public List<UserSystemCouponVO> listIncludeNotExchange(Long uid) throws Exception{
+		sendBackTimeOutCoupon(uid);
+		
+		String percent = configService.get("exchange_rebate_percent");
+		if (StringUtil.isNullOrEmpty(percent)) 
+			percent = "35";
+		
+		List<UserSystemCouponVO> listCoupon = userSystemCouponMapper.getIncludeNotExchange(uid, Integer.parseInt(percent), CouponTypeEnum.rebatePercentCoupon.name());
+		if (listCoupon == null || listCoupon.size() == 0)
+			return null;
+
+		for (UserSystemCouponVO userCouponVO : listCoupon) {
+			String source = userCouponVO.getSource();
+			if (source != null && "濂栧姳鍒稿ぉ澶╂娊".equals(source)) {
+				source = "澶╁ぉ鎶�";
+			}
+			
+			SystemCoupon systemCoupon = userCouponVO.getSystemCoupon();
+			if (systemCoupon == null) {
+				continue; // 鍒镐俊鎭笉瀹屾暣
+			}
+
+			systemCoupon = systemCouponService.selectByPrimaryKey(systemCoupon.getId());
+			
+			userCouponVO.setSource("鏉ユ簮锛�" + source);
+			userCouponVO.setCouponName(systemCoupon.getName());
+			userCouponVO.setCouponEffect(systemCoupon.getEffect());
+			userCouponVO.setCouponRule(systemCoupon.getRule());
+			userCouponVO.setCouponRuleLink(systemCoupon.getRuleLink());
+			userCouponVO.setCouponPicture(systemCoupon.getPicture());
+			userCouponVO.setCouponPictureInvalid(systemCoupon.getPictureInvalid());
+
+			int differentDays = 0;
+			String couponTerm = "鏈夋晥鏈燂細";
+			Date startTime = userCouponVO.getStartTime();
+			Date endTime = userCouponVO.getEndTime();
+			if (endTime != null && startTime != null) {
+				SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
+				couponTerm = couponTerm + sdf.format(startTime) + "-" + sdf.format(endTime);
+
+				SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd");
+				differentDays = DateUtil.daysBetween(sdf2.format(new Date()), sdf2.format(endTime)) + 1;
+				if (differentDays < 0) {
+					differentDays = 0;
+				}
+			}
+			userCouponVO.setCouponTerm(couponTerm);
+
+			// 鍓╀綑澶╂暟
+			Map<String, Object> remainDays = new HashMap<String, Object>();
+			remainDays.put("content", "杩樺墿" + differentDays + "澶╄繃鏈�");
+			String remainDaysFontColor = "";
+
+			Integer stateActivated = userCouponVO.getStateActivated();
+			if (stateActivated == null || stateActivated == 0) {
+				userCouponVO.setState(0);
+				userCouponVO.setCouponEffect("寰呮縺娲�");
+				userCouponVO.setCouponPicture(systemCoupon.getPictureInvalid());
+				remainDaysFontColor = "#CCCCCC";
+			} else {
+				userCouponVO.setCouponPicture(systemCoupon.getPicture());
+				remainDaysFontColor = "#F14242";
+			}
+
+			remainDays.put("fontColor", remainDaysFontColor);
+			userCouponVO.setRemainDays(remainDays);
+		}
+
+		return listCoupon;
+	}
 }

--
Gitblit v1.8.0