周任务抽奖 改为 单次
This commit is contained in:
parent
d376c3ad22
commit
881f3b8faf
|
|
@ -9,6 +9,6 @@ public interface DiscSpinningRecordService extends IService<DiscSpinningRecord>
|
||||||
|
|
||||||
Integer countDraw(Long userId);
|
Integer countDraw(Long userId);
|
||||||
//当月的 月记录 已抽 抽奖次数
|
//当月的 月记录 已抽 抽奖次数
|
||||||
Integer countSourceRecord(Long sourceId);
|
Integer countSourceRecord(Long sourceId,String source);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -26,10 +26,10 @@ public class DiscSpinningRecordServiceImpl extends ServiceImpl<DiscSpinningRecor
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Integer countSourceRecord(Long sourceId) {
|
public Integer countSourceRecord(Long sourceId,String source) {
|
||||||
QueryWrapper<DiscSpinningRecord> recordQuery = new QueryWrapper<>();
|
QueryWrapper<DiscSpinningRecord> recordQuery = new QueryWrapper<>();
|
||||||
recordQuery.eq("source_id", sourceId);
|
recordQuery.eq("source_id", sourceId);
|
||||||
recordQuery.eq("source", "taskM");
|
recordQuery.eq("source", source);
|
||||||
recordQuery.gt("create_time", DateUtil.beginOfMonth(new Date()));
|
recordQuery.gt("create_time", DateUtil.beginOfMonth(new Date()));
|
||||||
return discSpinningRecordDao.selectCount(recordQuery);
|
return discSpinningRecordDao.selectCount(recordQuery);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -167,6 +167,8 @@ public class DiscSpinningServiceImpl extends ServiceImpl<DiscSpinningDao, DiscSp
|
||||||
DiscSpinningRecord record = new DiscSpinningRecord(result.getName(), sourceId, userId, result.getUrl(), result.getType(),
|
DiscSpinningRecord record = new DiscSpinningRecord(result.getName(), sourceId, userId, result.getUrl(), result.getType(),
|
||||||
result.getNumber(), DateUtils.formatYMD(new Date()), DateUtils.format(new Date()), source);
|
result.getNumber(), DateUtils.formatYMD(new Date()), DateUtils.format(new Date()), source);
|
||||||
recordService.save(record);
|
recordService.save(record);
|
||||||
|
//前端下标
|
||||||
|
record.setId(result.getId());
|
||||||
return record;
|
return record;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -82,11 +82,6 @@ public class TaskCenterServiceImpl extends ServiceImpl<TaskCenterDao, TaskCenter
|
||||||
//日任务
|
//日任务
|
||||||
if (s.getNumber().equals(1)) {
|
if (s.getNumber().equals(1)) {
|
||||||
Integer dayOrderNum = ordersService.countOrderNum(userId, DateUtil.today() + " 00:00:00");
|
Integer dayOrderNum = ordersService.countOrderNum(userId, DateUtil.today() + " 00:00:00");
|
||||||
// InviteAchievement inviteAchievement = inviteAchievementService.getByUserId(userId);
|
|
||||||
// Integer dayOrderNum = 0;
|
|
||||||
// if (inviteAchievement != null) {
|
|
||||||
// dayOrderNum = inviteAchievement.getCount();
|
|
||||||
// }
|
|
||||||
if (dayOrderNum < 3) {
|
if (dayOrderNum < 3) {
|
||||||
s.setDiscNumber(dayOrderNum);
|
s.setDiscNumber(dayOrderNum);
|
||||||
s.setNumber(3);
|
s.setNumber(3);
|
||||||
|
|
@ -103,6 +98,13 @@ public class TaskCenterServiceImpl extends ServiceImpl<TaskCenterDao, TaskCenter
|
||||||
//周任务
|
//周任务
|
||||||
if (s.getNumber() > 1 && s.getNumber() < 8) {
|
if (s.getNumber() > 1 && s.getNumber() < 8) {
|
||||||
if (rewardMap.containsKey(9)) {
|
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;
|
boolean isBreak = false;
|
||||||
//抽奖次数
|
//抽奖次数
|
||||||
Map<Long, Integer> taskWCount = signRecordService.getTaskWCount(userId, rewardMap.get(9));
|
Map<Long, Integer> taskWCount = signRecordService.getTaskWCount(userId, rewardMap.get(9));
|
||||||
|
|
@ -140,7 +142,7 @@ public class TaskCenterServiceImpl extends ServiceImpl<TaskCenterDao, TaskCenter
|
||||||
s.setDisabled(false);
|
s.setDisabled(false);
|
||||||
} else {
|
} else {
|
||||||
if (rewardMap.containsKey(9)) {
|
if (rewardMap.containsKey(9)) {
|
||||||
Integer spinningCount = discSpinningRecordService.countSourceRecord(s.getId());
|
Integer spinningCount = discSpinningRecordService.countSourceRecord(s.getId(), "taskM");
|
||||||
if (spinningCount == null || rewardMap.get(9) - spinningCount > 0) {
|
if (spinningCount == null || rewardMap.get(9) - spinningCount > 0) {
|
||||||
s.setDiscNumber(null);
|
s.setDiscNumber(null);
|
||||||
s.setNumber(null);
|
s.setNumber(null);
|
||||||
|
|
@ -207,7 +209,7 @@ public class TaskCenterServiceImpl extends ServiceImpl<TaskCenterDao, TaskCenter
|
||||||
}
|
}
|
||||||
if (recordService.countTaskNum(userId, s.getId(), null) > 0) {
|
if (recordService.countTaskNum(userId, s.getId(), null) > 0) {
|
||||||
continue;
|
continue;
|
||||||
}else {
|
} else {
|
||||||
s.setDiscNumber(null);
|
s.setDiscNumber(null);
|
||||||
s.setNumber(null);
|
s.setNumber(null);
|
||||||
s.setJumpType(0);
|
s.setJumpType(0);
|
||||||
|
|
@ -350,6 +352,10 @@ public class TaskCenterServiceImpl extends ServiceImpl<TaskCenterDao, TaskCenter
|
||||||
}
|
}
|
||||||
Map<Long, Integer> taskWRedisMap = new HashMap<>();
|
Map<Long, Integer> taskWRedisMap = new HashMap<>();
|
||||||
if ("2".equals(type)) {
|
if ("2".equals(type)) {
|
||||||
|
Integer spinningCount = discSpinningRecordService.countSourceRecord(userId, "taskW");
|
||||||
|
if (spinningCount != null && spinningCount > 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
//抽奖次数
|
//抽奖次数
|
||||||
Map<Long, Integer> taskWCount = signRecordService.getTaskWCount(userId, rewardMap.get(9));
|
Map<Long, Integer> taskWCount = signRecordService.getTaskWCount(userId, rewardMap.get(9));
|
||||||
if (CollectionUtil.isNotEmpty(taskWCount)) {
|
if (CollectionUtil.isNotEmpty(taskWCount)) {
|
||||||
|
|
@ -371,7 +377,7 @@ public class TaskCenterServiceImpl extends ServiceImpl<TaskCenterDao, TaskCenter
|
||||||
}
|
}
|
||||||
if (signCount >= taskCenter.getNumber()) {
|
if (signCount >= taskCenter.getNumber()) {
|
||||||
if (rewardMap.containsKey(9)) {
|
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);
|
countTaskDisc = rewardMap.get(9) + (spinningCount == null ? 0 : spinningCount);
|
||||||
if (countTaskDisc > 0) {
|
if (countTaskDisc > 0) {
|
||||||
taskWRedisMap.put(taskCenter.getId(), countTaskDisc);
|
taskWRedisMap.put(taskCenter.getId(), countTaskDisc);
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,10 @@
|
||||||
sign.id
|
sign.id
|
||||||
FROM
|
FROM
|
||||||
user_sign_record sign
|
user_sign_record sign
|
||||||
LEFT JOIN task_center_record cenRecord ON sign.id = cenRecord.source_id
|
|
||||||
WHERE
|
WHERE
|
||||||
sign.`DAY` = 7
|
sign.`DAY` = 7
|
||||||
AND sign.user_id = #{userId}
|
AND sign.user_id = #{userId}
|
||||||
and sign.create_time > #{time}
|
and sign.create_time > #{time}
|
||||||
AND cenRecord.id IS NULL
|
|
||||||
order by sign.create_time asc
|
order by sign.create_time asc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue