From beb2648726b79268968f3d4e319eeb70490268ba Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Fri, 10 Jan 2025 15:42:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1=E4=B8=AD?= =?UTF-8?q?=E5=BF=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/app/entity/InviteAchievement.java | 4 ++ .../service/impl/TaskCenterServiceImpl.java | 41 ++++++++++++++++--- 2 files changed, 39 insertions(+), 6 deletions(-) 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(); }