diff --git a/src/main/java/com/sqx/modules/app/service/impl/InviteAchievementServiceImpl.java b/src/main/java/com/sqx/modules/app/service/impl/InviteAchievementServiceImpl.java index 1e13404d..261caf17 100644 --- a/src/main/java/com/sqx/modules/app/service/impl/InviteAchievementServiceImpl.java +++ b/src/main/java/com/sqx/modules/app/service/impl/InviteAchievementServiceImpl.java @@ -41,6 +41,7 @@ public class InviteAchievementServiceImpl extends ServiceImpl() + .eq(InviteAchievement::getState, 1) .eq(InviteAchievement::getSourceUserId, userId)); } diff --git a/src/main/java/com/sqx/modules/pay/controller/app/WuyouController.java b/src/main/java/com/sqx/modules/pay/controller/app/WuyouController.java index c3811033..5365688c 100644 --- a/src/main/java/com/sqx/modules/pay/controller/app/WuyouController.java +++ b/src/main/java/com/sqx/modules/pay/controller/app/WuyouController.java @@ -3,6 +3,7 @@ package com.sqx.modules.pay.controller.app; import cn.hutool.core.date.DateUtil; import cn.hutool.core.thread.ThreadUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.sqx.common.annotation.Debounce; import com.sqx.common.utils.ApiAccessLimitUtil; @@ -46,12 +47,11 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; +import java.util.*; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; +import java.util.stream.Collectors; /** * @author GYJ @@ -278,9 +278,10 @@ public class WuyouController { inviteAchievement.setState(1); inviteAchievementService.updateById(inviteAchievement); - int count = inviteAchievementService.countBySourceUserId(sourceUser.getUserId()); + List list = inviteAchievementService.list(new LambdaQueryWrapper().eq(InviteAchievement::getSourceUserId, sourceUser.getUserId())); + Set collect = list.stream().filter(item -> item.getState() == 1).collect(Collectors.toSet()); // 首次达标奖励 - if (count == 1) { + if (collect.isEmpty() && list.size() == 1) { SysUserEntity sysUser = sysUserService.selectSysUserByQdCode(user.getQdCode()); String qdAward = commonRepository.findOne(915).getValue(); UserMoneyDetails userMoneyDetails4 = new UserMoneyDetails( @@ -304,11 +305,12 @@ public class WuyouController { moneyDetailsQuery.eq("classify", 6); moneyDetailsQuery.eq("user_id", sourceUser.getUserId()); //达标人数 -// int completeCount = userMoneyDetailsService.count(moneyDetailsQuery); - int completeCount = inviteAchievementService.countNum(sourceUser.getUserId(), signCount); + int completeCount = userMoneyDetailsService.count(moneyDetailsQuery); +// int completeCount = inviteAchievementService.countNum(sourceUser.getUserId(), signCount); completAwardService.list(new QueryWrapper().eq("invite_count", completeCount)).forEach(completAward -> { switch (completAward.getType()) { case 1: + UserMoneyDetails userMoneyDetails1 = new UserMoneyDetails( sourceUser.getUserId(), null, null, "[分享达标额外奖励]", 6, 1, 2, completAward.getAwardNumber(), "邀请人员已有" + completAward.getInviteCount() + "人完成达标任务,额外奖励金币" + completAward.getAwardNumber(), 2);