From 9c9cd8c60b18133e1d66f811a61af6f11b66d0d3 Mon Sep 17 00:00:00 2001 From: bjkim Date: Fri, 12 Sep 2025 10:21:56 +0900 Subject: [PATCH] =?UTF-8?q?[ADD]=20Workflow=20edit=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../re/etri/autoflow/repository/WorkflowRepository.java | 1 - .../kr/re/etri/autoflow/service/WorkFlowService.java | 9 +++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/kr/re/etri/autoflow/repository/WorkflowRepository.java b/src/main/java/kr/re/etri/autoflow/repository/WorkflowRepository.java index 49fc736..efbb29e 100644 --- a/src/main/java/kr/re/etri/autoflow/repository/WorkflowRepository.java +++ b/src/main/java/kr/re/etri/autoflow/repository/WorkflowRepository.java @@ -5,5 +5,4 @@ import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; public interface WorkflowRepository extends JpaRepository, JpaSpecificationExecutor { - Integer findVersionById(Long id); } diff --git a/src/main/java/kr/re/etri/autoflow/service/WorkFlowService.java b/src/main/java/kr/re/etri/autoflow/service/WorkFlowService.java index 82dab80..c0ce018 100644 --- a/src/main/java/kr/re/etri/autoflow/service/WorkFlowService.java +++ b/src/main/java/kr/re/etri/autoflow/service/WorkFlowService.java @@ -24,7 +24,6 @@ public class WorkFlowService { private final WorkflowRepository workflowRepository; private final WorkflowSpecification workflowSpecification; - public List findAll() { return workflowRepository.findAll(); } @@ -33,6 +32,7 @@ public class WorkFlowService { return workflowRepository.findById(id); } + @Transactional public WorkflowEntity save(WorkflowEntity workflow) { if (workflow.getId() == null) { @@ -40,9 +40,10 @@ public class WorkFlowService { workflow.setVersion(1); } else { // 업데이트 시 기존 max 버전 + 1 - Integer maxVersion = workflowRepository.findVersionById(workflow.getId()); - workflow.setVersion(maxVersion != null ? maxVersion + 1 : 1); - } + WorkflowEntity existing = workflowRepository.findById(workflow.getId()) + .orElseThrow(() -> new IllegalArgumentException("워크플로우가 존재하지 않습니다. id=" + workflow.getId())); + Integer maxVersion = existing.getVersion(); + workflow.setVersion(maxVersion != null ? maxVersion + 1 : 1); } return workflowRepository.save(workflow); }