From fbc9d02e2ad147506bf183246968e536bee436db Mon Sep 17 00:00:00 2001 From: XuqmGroup Date: Thu, 18 Jun 2026 10:47:51 +0800 Subject: [PATCH] =?UTF-8?q?feat(bugcollect):=20=E6=96=B0=E5=A2=9E=20PUT=20?= =?UTF-8?q?/issues/{id}/reopen=20=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - LogService.reopenIssue() 将状态设回 open - LogController 暴露 /issues/{id}/reopen 端点 Co-Authored-By: Claude Sonnet 4.6 --- .../com/xuqm/bugcollect/controller/LogController.java | 6 ++++++ .../main/java/com/xuqm/bugcollect/service/LogService.java | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/controller/LogController.java b/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/controller/LogController.java index 8d2d19f..9c26fbc 100644 --- a/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/controller/LogController.java +++ b/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/controller/LogController.java @@ -106,6 +106,12 @@ public class LogController { return ApiResponse.ok(); } + @PutMapping("/issues/{id}/reopen") + public ApiResponse reopenIssue(@PathVariable Long id) { + logService.reopenIssue(id); + return ApiResponse.ok(); + } + @PutMapping("/issues/{id}/assign") public ApiResponse assignIssue( @PathVariable Long id, diff --git a/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/service/LogService.java b/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/service/LogService.java index 315999b..06e587a 100644 --- a/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/service/LogService.java +++ b/xuqm-bugcollect-service/src/main/java/com/xuqm/bugcollect/service/LogService.java @@ -270,6 +270,14 @@ public class LogService { issueRepository.save(issue); } + @Transactional + public void reopenIssue(Long id) { + LogIssueEntity issue = issueRepository.findById(id) + .orElseThrow(() -> new IllegalArgumentException("Issue not found: " + id)); + issue.setStatus("open"); + issueRepository.save(issue); + } + @Transactional public void assignIssue(Long id, String assignee) { issueRepository.updateAssignee(id, assignee);