|
|
@@ -298,15 +298,15 @@ public class KxsCampServiceImpl extends ServiceImpl<KxsCampMapper, KxsCamp> impl
|
|
|
}
|
|
|
//盟主兑换券特殊处理,总共不能超过5组进入训练营的统计
|
|
|
if(param.getProductId() == 10000){
|
|
|
- long count = campBonusLogService.count(Wrappers.<KxsCampBonusLog>query()
|
|
|
- .select("SUM(source_num)")
|
|
|
+ KxsCampBonusLog bonusLog = campBonusLogService.getOne(Wrappers.<KxsCampBonusLog>query()
|
|
|
+ .select("IFNULL(SUM(source_num), 0) as source_num")
|
|
|
.eq("camp_id", kxsCamp.getId())
|
|
|
.eq("source_id", user.getId())
|
|
|
.eq("source_type", CampSourceTypeEnum.S_MZQ.getType()));
|
|
|
- if(count >= 5){
|
|
|
+ if(bonusLog.getSourceNum() >= 5){
|
|
|
throw new GlobalCustomerException("用户"+user.getId()+"盟主兑换券已经兑换过5组,无法继续加入统计");
|
|
|
}
|
|
|
- long subCount = 5 - count;
|
|
|
+ long subCount = 5 - bonusLog.getSourceNum();
|
|
|
kxsCampBonusLog.setSourceNum(param.getBuyCount() > subCount ? (int) subCount : param.getBuyCount());
|
|
|
kxsCampBonusLog.setSourceType(CampSourceTypeEnum.S_MZQ.getType());
|
|
|
kxsCampBonusLog.setRemark("盟主兑换");
|