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-dms/jnpf-dms-controller/src/main/java/jnpf/dmsController/DmsWenjianBianhaoController.java | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 105 insertions(+), 0 deletions(-)
diff --git a/jnpf-dms/jnpf-dms-controller/src/main/java/jnpf/dmsController/DmsWenjianBianhaoController.java b/jnpf-dms/jnpf-dms-controller/src/main/java/jnpf/dmsController/DmsWenjianBianhaoController.java
new file mode 100644
index 0000000..93c4dce
--- /dev/null
+++ b/jnpf-dms/jnpf-dms-controller/src/main/java/jnpf/dmsController/DmsWenjianBianhaoController.java
@@ -0,0 +1,105 @@
+package jnpf.dmsController;
+
+import cn.dev33.satoken.annotation.SaCheckLogin;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.validation.Valid;
+import jnpf.base.ActionResult;
+import jnpf.base.Pagination;
+import jnpf.base.vo.PageListVO;
+import jnpf.base.vo.PaginationVO;
+import jnpf.dmsEntity.wenjianbianhao.form.DmsFlowEventForm;
+import jnpf.dmsEntity.wenjianbianhao.form.DmsWenjianBianhaoPreviewForm;
+import jnpf.dmsEntity.wenjianbianhao.vo.DmsWenjianBianhaoOptionVO;
+import jnpf.dmsEntity.wenjianbianhao.vo.DmsWenjianBianhaoPreviewVO;
+import jnpf.dmsEntity.wenjianbianhao.vo.DmsWenjianBianhaoRuleVO;
+import jnpf.dmsService.DmsWenjianBianhaoApplicationService;
+import jnpf.exception.DataException;
+import jnpf.flowable.WorkFlowApi;
+import jnpf.flowable.entity.TaskEntity;
+import jnpf.util.JsonUtil;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+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.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@Tag(name = "DMS鏂囦欢缂栧彿鐢宠鎺ュ彛")
+@RestController
+@SaCheckLogin
+@RequiredArgsConstructor
+@RequestMapping("/biz/wenjian/bianhao")
+public class DmsWenjianBianhaoController {
+
+ private final DmsWenjianBianhaoApplicationService service;
+ private final WorkFlowApi workFlowApi;
+
+ @Operation(summary = "鍙敵璇风殑鏂囦欢缂栧彿瑙勫垯")
+ @GetMapping("/guize/enabled")
+ public ActionResult<PageListVO<DmsWenjianBianhaoRuleVO>> enabledRules(
+ Pagination pagination,
+ @RequestParam(name = "guize_id", required = false) String guizeId,
+ @RequestParam(name = "search_val", required = false) String searchValue)
+ throws DataException {
+ List<DmsWenjianBianhaoRuleVO> list = service.enabledRules(
+ pagination, guizeId, searchValue);
+ PaginationVO paginationVO = JsonUtil.getJsonToBean(pagination, PaginationVO.class);
+ return ActionResult.page(list, paginationVO);
+ }
+
+ @Operation(summary = "棰勮鏂囦欢缂栧彿锛屼笉鍗犵敤娴佹按鍙�")
+ @PostMapping("/preview")
+ public ActionResult<DmsWenjianBianhaoPreviewVO> preview(
+ @Valid @RequestBody DmsWenjianBianhaoPreviewForm form) throws DataException {
+ return ActionResult.success(service.preview(form.getGuizeId()));
+ }
+
+ @Operation(summary = "鍙叧鑱旂殑浣跨敤涓枃浠剁紪鍙�")
+ @GetMapping("/using")
+ public ActionResult<PageListVO<DmsWenjianBianhaoOptionVO>> usingNumbers(
+ Pagination pagination,
+ @RequestParam(name = "bianhao_id", required = false) String bianhaoId,
+ @RequestParam(name = "search_val", required = false) String searchValue)
+ throws DataException {
+ List<DmsWenjianBianhaoOptionVO> list = service.usingNumbers(
+ pagination, bianhaoId, searchValue);
+ PaginationVO paginationVO = JsonUtil.getJsonToBean(pagination, PaginationVO.class);
+ return ActionResult.page(list, paginationVO);
+ }
+
+ @Operation(summary = "鍚屾鏂囦欢缂栧彿鐢宠娴佺▼浜嬩欢")
+ @PostMapping("/shenqing/flow-event")
+ public ActionResult<String> syncApplicationFlowEvent(
+ @Valid @RequestBody DmsFlowEventForm form) throws DataException {
+ service.syncApplicationFlow(form.getFlowId(), form.getTaskId(),
+ requireWorkflowState(form.getTaskId()), form.getEventType());
+ return ActionResult.success("鏂囦欢缂栧彿鐢宠娴佺▼鐘舵�佸悓姝ユ垚鍔�", "鏂囦欢缂栧彿鐢宠娴佺▼鐘舵�佸悓姝ユ垚鍔�");
+ }
+
+ @Operation(summary = "鍚屾鏂囦欢鍚嶇О鍙樻洿娴佺▼浜嬩欢")
+ @PostMapping("/mingcheng-biangeng/flow-event")
+ public ActionResult<String> syncNameChangeFlowEvent(
+ @Valid @RequestBody DmsFlowEventForm form) throws DataException {
+ service.syncNameChangeFlow(form.getFlowId(), form.getTaskId(),
+ requireWorkflowState(form.getTaskId()), form.getEventType());
+ return ActionResult.success("鏂囦欢鍚嶇О鍙樻洿娴佺▼鐘舵�佸悓姝ユ垚鍔�", "鏂囦欢鍚嶇О鍙樻洿娴佺▼鐘舵�佸悓姝ユ垚鍔�");
+ }
+
+ private Integer requireWorkflowState(String taskId) throws DataException {
+ TaskEntity task = workFlowApi.getInfoSubmit(taskId.trim());
+ if (task == null || task.getId() == null) {
+ throw new DataException("鏈壘鍒版祦绋嬩换鍔★細" + taskId);
+ }
+ if (!taskId.trim().equals(task.getId())) {
+ throw new DataException("娴佺▼浠诲姟涓庝紶鍏ヤ换鍔D涓嶅尮閰�");
+ }
+ if (task.getStatus() == null) {
+ throw new DataException("娴佺▼浠诲姟鐘舵�佷负绌猴細" + taskId);
+ }
+ return task.getStatus();
+ }
+}
--
Gitblit v1.8.0