From 79f0c8f15aef228309e177f14645ba68085920e2 Mon Sep 17 00:00:00 2001 From: tianfeng <769204422@qq.com> Date: Thu, 23 Oct 2025 19:17:10 +0800 Subject: [PATCH] =?UTF-8?q?task=20=E4=BF=AE=E5=A4=8D3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../other/app/listener/task/TaskListener.java | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/task/TaskListener.java b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/task/TaskListener.java index 37d66ae1..f2c4ca09 100644 --- a/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/task/TaskListener.java +++ b/rc-service/rc-service-other/other-application/src/main/java/com/red/circle/other/app/listener/task/TaskListener.java @@ -211,7 +211,8 @@ public class TaskListener implements MessageListener { private void handleTask2(TaskApprovalEvent eventBody) { log.warn("处理任务-2 在房间内赠送礼物: {}", eventBody); - // 更新任务状态的逻辑 直接更新 + eventBody.setTargetValue(1); + eventBody.setCompleteValue(1); updateTaskStatus(eventBody); } @@ -229,7 +230,8 @@ public class TaskListener implements MessageListener { private void handleTask4(TaskApprovalEvent eventBody) { // 具体的任务 4 处理逻辑 log.warn("处理任务-4 玩一局游戏: {}", eventBody); - // 更新任务状态的逻辑 + eventBody.setTargetValue(1); + eventBody.setCompleteValue(1); updateTaskStatus(eventBody); } @@ -262,7 +264,8 @@ public class TaskListener implements MessageListener { private void handleTask3(TaskApprovalEvent eventBody) { log.warn("处理任务-3: {}", eventBody); - // 在商店购买任意商品 + eventBody.setTargetValue(1); + eventBody.setCompleteValue(1); updateTaskStatus(eventBody); } @@ -291,20 +294,17 @@ public class TaskListener implements MessageListener { // 关注用户计数,每日过期 String redisKey = "task:follow-user:" + eventBody.getUserId(); String countStr = redisService.getString(redisKey); - - if (StringUtils.isEmpty(countStr)) { + + if (StringUtils.isBlank(countStr)) { // 计算到凌晨的过期时间(秒) long expireSeconds = DateTimeAsiaRiyadhUtils.getSecondsUntilMidnight(); redisService.increment(redisKey, 1, expireSeconds, TimeUnit.SECONDS); // 第一次关注就完成任务 - updateTaskStatus(eventBody); - } else { - // 已经完成过了 - if (Integer.parseInt(countStr) >= 1) { - updateTaskStatus(eventBody); - } else { - redisService.increment(redisKey, 1); - updateTaskStatus(eventBody); + eventBody.setTargetValue(1); + eventBody.setCompleteValue(1); + boolean updated = updateTaskStatus(eventBody); + if (updated) { + redisService.increment(redisKey, 1); } } } @@ -319,6 +319,8 @@ public class TaskListener implements MessageListener { // 计算到凌晨的过期时间(秒) long expireSeconds = DateTimeAsiaRiyadhUtils.getSecondsUntilMidnight(); redisService.increment(redisKey, 1, expireSeconds, TimeUnit.SECONDS); + eventBody.setTargetValue(1); + eventBody.setCompleteValue(1); // 第一次关注就完成任务 updateTaskStatus(eventBody); } else { @@ -362,6 +364,8 @@ public class TaskListener implements MessageListener { private void handleTask5(TaskApprovalEvent eventBody) { log.warn("处理任务-5 创建我的房间: {}", eventBody); + eventBody.setTargetValue(1); + eventBody.setCompleteValue(1); updateTaskStatus(eventBody); }