From 01e773cf27e572b8fb83538d85f31130930d93d1 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期四, 15 八月 2019 15:57:23 +0800
Subject: [PATCH] 券赠送

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeServiceImpl.java |   22 +++++++++++++++++++++-
 1 files changed, 21 insertions(+), 1 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeServiceImpl.java
index 10466c9..6ae6cf5 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeServiceImpl.java
@@ -21,6 +21,7 @@
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service;
 import com.yeshi.fanli.service.inter.integral.CodePublishRecordService;
+import com.yeshi.fanli.service.inter.integral.IntegralExchangeRecordService;
 import com.yeshi.fanli.service.inter.integral.IntegralExchangeService;
 import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
 import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
@@ -58,6 +59,9 @@
 	
 	@Resource
 	private CodePublishRecordService codePublishRecordService;
+	
+	@Resource
+	private IntegralExchangeRecordService integralExchangeRecordService;
 	
 	
 
@@ -99,6 +103,14 @@
 			exchangeTip.setType(type.name());
 			return exchangeTip;
 		}
+		
+		int upperLimit = exchange.getUpperLimit();
+		// 浠婃棩鍏戞崲鎯呭喌
+		long exchangeCount = integralExchangeRecordService.countRecordByUid(id, uid);
+		if (exchangeCount >= upperLimit) {
+			throw new IntegralExchangeException(1, "浠婃棩鍏戞崲宸茶揪涓婇檺");
+		}
+		
 		
 		Integer goldCoinHas = extraVO.getGoldCoin();
 		if (goldCoin.intValue() > goldCoinHas.intValue()) {
@@ -150,6 +162,13 @@
 		if (exchange == null)
 			throw new IntegralExchangeException(1, "鍏戞崲鏂瑰紡涓嶅瓨鍦�");
 
+		int upperLimit = exchange.getUpperLimit();
+		// 浠婃棩鍏戞崲鎯呭喌
+		long exchangeCount = integralExchangeRecordService.countRecordByUid(id, uid);
+		if (exchangeCount >= upperLimit) {
+			throw new IntegralExchangeException(1, "浠婃棩鍏戞崲宸茶揪涓婇檺");
+		}
+		
 		Integer goldCoin = exchange.getGoldCoin();
 		Integer goldCoinHas = extraVO.getGoldCoin();
 		if (goldCoin.intValue() > goldCoinHas.intValue()) {
@@ -197,9 +216,10 @@
 				throw new IntegralExchangeException(1, "鍏戞崲鏂瑰紡涓嶅瓨鍦�");
 			}
 			
+			exchangeCount ++;
 			String progress = exchange.getProgress();
 			if (!StringUtil.isNullOrEmpty(progress))
-				progress = progress.replace("{宸插厬鎹", 1 + "").replace("{涓婇檺鏁皚", exchange.getUpperLimit() + "");
+				progress = progress.replace("{宸插厬鎹",exchangeCount + "").replace("{涓婇檺鏁皚", exchange.getUpperLimit() + "");
 			exchange.setProgress(progress);
 			
 			// 鏇存柊閲戝竵

--
Gitblit v1.8.0