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