diff --git a/src/main/java/com/sqx/modules/discSpinning/service/DiscSpinningRecordService.java b/src/main/java/com/sqx/modules/discSpinning/service/DiscSpinningRecordService.java index 1b05bb8d..e84cd96a 100644 --- a/src/main/java/com/sqx/modules/discSpinning/service/DiscSpinningRecordService.java +++ b/src/main/java/com/sqx/modules/discSpinning/service/DiscSpinningRecordService.java @@ -9,6 +9,6 @@ public interface DiscSpinningRecordService extends IService Integer countDraw(Long userId); //当月的 月记录 已抽 抽奖次数 - Integer countSourceRecord(Long sourceId); + Integer countSourceRecord(Long sourceId,String source); } diff --git a/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningRecordServiceImpl.java b/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningRecordServiceImpl.java index 0d1503e4..d16cc051 100644 --- a/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningRecordServiceImpl.java +++ b/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningRecordServiceImpl.java @@ -26,10 +26,10 @@ public class DiscSpinningRecordServiceImpl extends ServiceImpl recordQuery = new QueryWrapper<>(); recordQuery.eq("source_id", sourceId); - recordQuery.eq("source", "taskM"); + recordQuery.eq("source", source); recordQuery.gt("create_time", DateUtil.beginOfMonth(new Date())); return discSpinningRecordDao.selectCount(recordQuery); } diff --git a/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningServiceImpl.java b/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningServiceImpl.java index c01a41a8..d4036c32 100644 --- a/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningServiceImpl.java +++ b/src/main/java/com/sqx/modules/discSpinning/service/impl/DiscSpinningServiceImpl.java @@ -167,6 +167,8 @@ public class DiscSpinningServiceImpl extends ServiceImpl 1 && s.getNumber() < 8) { if (rewardMap.containsKey(9)) { + Integer spinningCount = discSpinningRecordService.countSourceRecord(s.getId(), "taskW"); + if (spinningCount != null && spinningCount > 0) { + s.setButtonTitle("已领取"); + s.setDisabled(false); + s.setNumber(null); + break; + } boolean isBreak = false; //抽奖次数 Map taskWCount = signRecordService.getTaskWCount(userId, rewardMap.get(9)); @@ -140,7 +142,7 @@ public class TaskCenterServiceImpl extends ServiceImpl 0) { s.setDiscNumber(null); s.setNumber(null); @@ -207,7 +209,7 @@ public class TaskCenterServiceImpl extends ServiceImpl 0) { continue; - }else { + } else { s.setDiscNumber(null); s.setNumber(null); s.setJumpType(0); @@ -350,6 +352,10 @@ public class TaskCenterServiceImpl extends ServiceImpl taskWRedisMap = new HashMap<>(); if ("2".equals(type)) { + Integer spinningCount = discSpinningRecordService.countSourceRecord(userId, "taskW"); + if (spinningCount != null && spinningCount > 0) { + return 0; + } //抽奖次数 Map taskWCount = signRecordService.getTaskWCount(userId, rewardMap.get(9)); if (CollectionUtil.isNotEmpty(taskWCount)) { @@ -371,7 +377,7 @@ public class TaskCenterServiceImpl extends ServiceImpl= taskCenter.getNumber()) { if (rewardMap.containsKey(9)) { - Integer spinningCount = discSpinningRecordService.countSourceRecord(taskCenter.getId()); + Integer spinningCount = discSpinningRecordService.countSourceRecord(taskCenter.getId(), "taskM"); countTaskDisc = rewardMap.get(9) + (spinningCount == null ? 0 : spinningCount); if (countTaskDisc > 0) { taskWRedisMap.put(taskCenter.getId(), countTaskDisc); diff --git a/src/main/resources/mapper/userSign/TaskCenterDto.xml b/src/main/resources/mapper/userSign/TaskCenterDto.xml index f77487a2..a09ffe6c 100644 --- a/src/main/resources/mapper/userSign/TaskCenterDto.xml +++ b/src/main/resources/mapper/userSign/TaskCenterDto.xml @@ -7,12 +7,10 @@ sign.id FROM user_sign_record sign - LEFT JOIN task_center_record cenRecord ON sign.id = cenRecord.source_id WHERE sign.`DAY` = 7 AND sign.user_id = #{userId} and sign.create_time > #{time} - AND cenRecord.id IS NULL order by sign.create_time asc