diff --git a/src/main/java/com/sqx/modules/app/entity/InviteAchievement.java b/src/main/java/com/sqx/modules/app/entity/InviteAchievement.java index 672f3d5f..59f0ee6c 100644 --- a/src/main/java/com/sqx/modules/app/entity/InviteAchievement.java +++ b/src/main/java/com/sqx/modules/app/entity/InviteAchievement.java @@ -50,6 +50,10 @@ public class InviteAchievement implements Serializable { * 是否首次达标 */ private Integer state; + /** + * 一次性任务领取记录 默认为空 存储为 taskId,taskId + */ + private String tasks; /** * 创建时间 diff --git a/src/main/java/com/sqx/modules/taskCenter/service/impl/TaskCenterServiceImpl.java b/src/main/java/com/sqx/modules/taskCenter/service/impl/TaskCenterServiceImpl.java index 72417894..218c85e2 100644 --- a/src/main/java/com/sqx/modules/taskCenter/service/impl/TaskCenterServiceImpl.java +++ b/src/main/java/com/sqx/modules/taskCenter/service/impl/TaskCenterServiceImpl.java @@ -2,7 +2,9 @@ package com.sqx.modules.taskCenter.service.impl; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.sqx.common.utils.DateUtils; import com.sqx.common.utils.RedisKeys; @@ -168,23 +170,35 @@ public class TaskCenterServiceImpl extends ServiceImpl users = userInfoService.getUsersByNameAndCertNo(userInfo.getCertName(), userInfo.getCertNo()); Set courseIds = users.stream().map(UserInfo::getUserId).collect(Collectors.toSet()); - if (recordService.countTaskNum(courseIds, s.getId(), null) > 0){ + if (recordService.countTaskNum(courseIds, s.getId(), null) > 0) { continue; } - }else if (recordService.countTaskNum(userId, s.getId(), null) > 0){ + } else if (recordService.countTaskNum(userId, s.getId(), null) > 0) { s.setDiscNumber(0); s.setNumber(null); s.setJumpType(0); @@ -205,6 +219,7 @@ public class TaskCenterServiceImpl extends ServiceImpl users = userInfoService.getUsersByNameAndCertNo(userInfo.getCertName(), userInfo.getCertNo()); Set courseIds = users.stream().map(UserInfo::getUserId).collect(Collectors.toSet()); - if (recordService.countTaskNum(courseIds, taskCenter.getId(), null) > 0) return Result.error("同一实名算一个新用户,不可重复领取"); + if (recordService.countTaskNum(courseIds, taskCenter.getId(), null) > 0) + return Result.error("同一实名算一个新用户,不可重复领取"); } } List records = new ArrayList<>(); @@ -286,6 +309,12 @@ public class TaskCenterServiceImpl extends ServiceImpl() + .eq(InviteAchievement::getUserId, inviteAchievement.getUserId()) + .eq(InviteAchievement::getId, inviteAchievement.getId()) + .set(InviteAchievement::getTasks, StringUtils.isBlank(inviteAchievement.getTasks()) ? "1" : inviteAchievement.getTasks() + ",1")); + } return Result.success(); }