From fe879975a3e8a0a1aa280fb839e02d159bfbcff8 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 27 八月 2019 18:04:38 +0800
Subject: [PATCH] 金币任务多次获取bug修改

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeRecordServiceImpl.java |   57 +++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 45 insertions(+), 12 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeRecordServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeRecordServiceImpl.java
index 6e87300..588a874 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeRecordServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/integral/IntegralExchangeRecordServiceImpl.java
@@ -13,6 +13,7 @@
 import com.yeshi.fanli.entity.integral.IntegralExchange.ExchangeTypeEnum;
 import com.yeshi.fanli.entity.integral.IntegralExchangeRecord;
 import com.yeshi.fanli.log.LogHelper;
+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.user.UserInfoExtraService;
@@ -29,6 +30,11 @@
 	
 	@Resource
 	private UserInfoExtraService userInfoExtraService;
+	
+	@Resource
+	private CodePublishRecordService codePublishRecordService;
+	
+	
 	
 	@Override
 	public List<IntegralExchange> listExchange(long start, int count, Long uid){
@@ -60,7 +66,7 @@
 			Long id = exchange.getId();
 			if (type == ExchangeTypeEnum.freeCouponBuy) {
 				// 娉細鍥犺嚜璐厤鍗曞埜锛屼竴涓敤鎴峰彧鑳藉厬鎹竴娆★紝鍒欏綋鍓嶇敤鎴蜂竴鏃﹀厬鎹㈡垚鍔燂紝鑷喘鍏嶅崟鍒稿厬鎹㈠叆鍙f案涔呭湪褰撳墠鐢ㄦ埛閲戝竵鍏戞崲鍒楄〃涓秷澶便��
-				long num = integralExchangeRecordMapper.countRecordByUid(id, uid);
+				long num = integralExchangeRecordMapper.countRecordByUid(id, uid, null);
 				if (num >= 1) {
 					listValid.remove(i);
 					i --;
@@ -69,25 +75,52 @@
 			}
 			
 			// 閭�璇风爜婵�娲诲崱锛屽厬鎹㈤」锛屽鏋滃綋鍓嶇敤鎴峰凡缁忔縺娲讳簡閭�璇峰姛鑳斤紝鍒欎笉闇�瑕佹樉绀鸿鍏戞崲椤广��
-			if (type == ExchangeTypeEnum.inviteCodeActivate && hasCode) {
-				listValid.remove(i);
-				i --;
-				continue;
+			if (type == ExchangeTypeEnum.inviteCodeActivate) {
+				if (hasCode) {
+					listValid.remove(i);
+					i --;
+					continue;
+				} 
+				
+				// 鍏戞崲涓�娆′箣鍚庨殣钘�
+				long num = integralExchangeRecordMapper.countRecordByUid(id, uid, null);
+				if  (num >= 1) {
+					listValid.remove(i);
+					i --;
+					continue;
+				}
 			}
 			
 			// 閭�璇风爜鍙戝竷鍗★紝鍏戞崲椤癸紝濡傛灉褰撳墠鐢ㄦ埛鏈縺娲婚個璇峰姛鑳斤紝鍒欎笉闇�瑕佹樉绀鸿鍏戞崲椤广��
-			if (type == ExchangeTypeEnum.inviteCodePublish && !hasCode) {
-				listValid.remove(i);
-				i --;
-				continue;
+			if (type == ExchangeTypeEnum.inviteCodePublish) {
+				if (!hasCode) {
+					listValid.remove(i);
+					i --;
+					continue;
+				}
+				
+				if(codePublishRecordService.countValidRecord(uid) > 0) {
+					exchange.setBtnName("鍘绘煡鐪�");
+					exchange.setNeedJump(true);
+				}
 			}
 			
 			String progress = exchange.getProgress();
 			if (StringUtil.isNullOrEmpty(progress))
 				continue;
 			
+			// 鑷喘鍏嶅崟鍒�-鍙兘鍏戞崲涓�娆�
+			if (type == ExchangeTypeEnum.freeCouponBuy) {
+				long num = integralExchangeRecordMapper.countRecordByUid(id, uid, null);
+				if  (num >= 1) {
+					listValid.remove(i);
+					i --;
+					continue;
+				}
+			}
+			
 			// 浠婃棩鍏戞崲鎯呭喌
-			long num = integralExchangeRecordMapper.countRecordByUid(id, uid);
+			long num = integralExchangeRecordMapper.countRecordByUid(id, uid, 1);
 			Integer upperLimit = exchange.getUpperLimit();
 			if (upperLimit == null) {
 				progress = progress.replace("{宸插厬鎹", num + "").replace("/{涓婇檺鏁皚", "");
@@ -100,8 +133,8 @@
 	}
 	
 	@Override
-	public long countRecordByUid(long exchangeid, Long uid){
-		return integralExchangeRecordMapper.countRecordByUid(exchangeid, uid);
+	public long countRecordByUid(long exchangeid, Long uid, Integer today){
+		return integralExchangeRecordMapper.countRecordByUid(exchangeid, uid, today);
 	}
 	
 	@Override

--
Gitblit v1.8.0