From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-flow-engine/src/main/java/jnpf/workflow/admin/controller/InstanceController.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/jnpf-flow-engine/src/main/java/jnpf/workflow/admin/controller/InstanceController.java b/jnpf-flow-engine/src/main/java/jnpf/workflow/admin/controller/InstanceController.java
new file mode 100644
index 0000000..f811d60
--- /dev/null
+++ b/jnpf-flow-engine/src/main/java/jnpf/workflow/admin/controller/InstanceController.java
@@ -0,0 +1,57 @@
+package jnpf.workflow.admin.controller;
+
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.validation.Valid;
+import jnpf.workflow.admin.result.Result;
+import jnpf.workflow.common.exception.ResultCode;
+import jnpf.workflow.common.model.fo.InstanceDeleteFo;
+import jnpf.workflow.common.model.fo.InstanceStartFo;
+import jnpf.workflow.common.model.vo.HistoricInstanceVo;
+import jnpf.workflow.common.model.vo.InstanceVo;
+import jnpf.workflow.common.service.IInstanceService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+@Tag(name = "娴佺▼瀹炰緥鎺у埗灞�", description = "InstanceController")
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/api/Flow/instance")
+public class InstanceController {
+
+    private final IInstanceService instanceService;
+
+    @Operation(summary = "start", description = "鍚姩娴佺▼瀹炰緥")
+    @PostMapping("/start")
+    public Result<InstanceVo> start(@RequestBody @Valid InstanceStartFo fo) {
+        InstanceVo vo = instanceService.startById(fo);
+        if (null != vo) {
+            return Result.success(vo);
+        }
+        return Result.failed(ResultCode.START_FAILURE);
+    }
+
+    @Operation(summary = "get", description = "鑾峰彇娴佺▼瀹炰緥")
+    @GetMapping("/{instanceId}")
+    public Result<HistoricInstanceVo> getInstance(@PathVariable("instanceId") String instanceId) {
+        return Result.success(instanceService.getHistoricProcessInstance(instanceId));
+    }
+
+    @Operation(summary = "delete", description = "鍒犻櫎娴佺▼瀹炰緥")
+    @DeleteMapping
+    public Result<Boolean> delete(InstanceDeleteFo fo) {
+        if (instanceService.deleteInstance(fo)) {
+            return Result.success(ResultCode.DELETE_SUCCESS);
+        }
+        return Result.failed(ResultCode.DELETE_FAILURE);
+    }
+}

--
Gitblit v1.8.0