From c73bb313abea3a7f417c938eb00e3f4aa1132f52 Mon Sep 17 00:00:00 2001 From: taerimiiii Date: Thu, 18 Jun 2026 22:05:23 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=9D=B4=EC=8A=88=20=ED=95=80=20?= =?UTF-8?q?=EC=83=81=ED=83=9C=20=EC=A1=B0=ED=9A=8C=20=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backend/domain/issue/entity/IssuePin.java | 12 ++++++++++++ .../command/ProblemSolverCommandServiceImpl.java | 4 ++++ 2 files changed, 16 insertions(+) diff --git a/src/main/java/issueissyu/backend/domain/issue/entity/IssuePin.java b/src/main/java/issueissyu/backend/domain/issue/entity/IssuePin.java index 3165edfe..40a0dcd9 100644 --- a/src/main/java/issueissyu/backend/domain/issue/entity/IssuePin.java +++ b/src/main/java/issueissyu/backend/domain/issue/entity/IssuePin.java @@ -57,4 +57,16 @@ public class IssuePin extends BaseEntity { public void incrementPetitionCount() { this.petitionCount++; } + + public void markInProgressIfBeforeProgress() { + if (this.issuePinState == IssuePinState.BEFORE_PROGRESS) { + this.issuePinState = IssuePinState.IN_PROGRESS; + } + } + + public void markResolvedIfInProgress() { + if (this.issuePinState == IssuePinState.IN_PROGRESS) { + this.issuePinState = IssuePinState.RESOLVED; + } + } } diff --git a/src/main/java/issueissyu/backend/domain/issue/service/command/ProblemSolverCommandServiceImpl.java b/src/main/java/issueissyu/backend/domain/issue/service/command/ProblemSolverCommandServiceImpl.java index 576cc641..4c7dd637 100644 --- a/src/main/java/issueissyu/backend/domain/issue/service/command/ProblemSolverCommandServiceImpl.java +++ b/src/main/java/issueissyu/backend/domain/issue/service/command/ProblemSolverCommandServiceImpl.java @@ -93,6 +93,8 @@ public GoNowResDTO participateGoNow(Long pinId, String uid) { throw ProblemSolverException.of(IssueErrorCode.GO_NOW_400_1); } + issuePin.markInProgressIfBeforeProgress(); + return GoNowResDTO.builder() .pinId(pinId) .problemSolverId(saved.getProblemSolverId()) @@ -198,6 +200,8 @@ public ProblemSolverCheckResDTO resolveCitizenVerification(Long problemSolverId, solver.markResolved(); problemSolverRepository.save(solver); + solver.getIssuePin().markResolvedIfInProgress(); + return ProblemSolverCheckResDTO.builder() .problemSolveState(ProblemSolveState.RESOLVED.name()) .build();