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