From 2e17c5347f1754a9b61a512a2fb80d3849014278 Mon Sep 17 00:00:00 2001 From: Derran Date: Wed, 28 Jan 2026 10:32:38 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9B=B4=E6=92=AD=E7=BA=A2=E5=A8=98=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/aggregate/utc/entity/UserSubTaskComplete.java | 9 +++++++++ .../handler/utc/UserTaskCompleteEventHandler.java | 8 +++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/utc/entity/UserSubTaskComplete.java b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/utc/entity/UserSubTaskComplete.java index 3f4bf7e..a28e837 100644 --- a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/utc/entity/UserSubTaskComplete.java +++ b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/utc/entity/UserSubTaskComplete.java @@ -36,4 +36,13 @@ public class UserSubTaskComplete extends Entity { return entity; } + public void commit(Integer commitCount, Integer requiredCount) { + if (!completeStatus) { + completeCount = commitCount + commitCount; + completeStatus = completeCount >= requiredCount; + if (completeStatus) { + completeTime = LocalDateTime.now(); + } + } + } } diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java index fbfb213..b99a704 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/utc/UserTaskCompleteEventHandler.java @@ -66,20 +66,18 @@ public class UserTaskCompleteEventHandler extends BaseApplicationService { if (Objects.isNull(userTaskComplete)) { userTaskComplete = UserTaskComplete.init(mq.getUserId(), taskTemplate.getId(), tuple.get(0), tuple.get(1)); UserSubTaskComplete userSubTaskComplete = UserSubTaskComplete.init(subTaskTemplate.getId()); + userSubTaskComplete.commit(mq.getCommitCount(), subTaskTemplate.getRequiredCount()); userTaskComplete.setInsertSubList(Collections.singletonList(userSubTaskComplete)); } else { if (!userTaskComplete.getCompleteStatus()) { UserSubTaskComplete userSubTaskComplete = userTaskCompleteQueryService.querySubBy(userTaskComplete.getId(), subTaskTemplate.getId()); if (Objects.isNull(userSubTaskComplete)) { userSubTaskComplete = UserSubTaskComplete.init(subTaskTemplate.getId()); + userSubTaskComplete.commit(mq.getCommitCount(), subTaskTemplate.getRequiredCount()); userTaskComplete.setInsertSubList(Collections.singletonList(userSubTaskComplete)); } else { if (!userSubTaskComplete.getCompleteStatus()) { - userSubTaskComplete.setCompleteCount(userSubTaskComplete.getCompleteCount() + mq.getCommitCount()); - userSubTaskComplete.setCompleteStatus(userSubTaskComplete.getCompleteCount() >= subTaskTemplate.getRequiredCount()); - if (userSubTaskComplete.getCompleteStatus()) { - userSubTaskComplete.setCompleteTime(LocalDateTime.now()); - } + userSubTaskComplete.commit(mq.getCommitCount(), subTaskTemplate.getRequiredCount()); userTaskComplete.setUpdateSubList(Collections.singletonList(userSubTaskComplete)); } }