diff --git a/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/manage/PrintAdminApi.java b/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/manage/PrintAdminApi.java index b727c3512..9dec9a0a9 100644 --- a/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/manage/PrintAdminApi.java +++ b/workflow-engine-api/src/main/java/cn/axzo/workflow/client/feign/manage/PrintAdminApi.java @@ -72,5 +72,6 @@ public interface PrintAdminApi { @GetMapping("/api/print/admin/field/variables") @Manageable @InvokeMode(SYNC) - CommonResponse> getPrintFieldVariables(@NotBlank(message = "流程实例不能为空") @RequestParam String processInstanceId); + CommonResponse> getPrintFieldVariables(@NotBlank(message = "流程实例不能为空") @RequestParam String processInstanceId, + @RequestParam(required = false, defaultValue = "true") Boolean throwException); } diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java index 38d4cd32f..00cdd9200 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java @@ -322,10 +322,11 @@ public class PrintAdminController implements PrintAdminApi { @Operation(summary = "获取指定流程下用于替换打印的相关变量") @GetMapping("/field/variables") @Override - public CommonResponse> getPrintFieldVariables(@NotBlank(message = "流程实例不能为空") @RequestParam String processInstanceId) { + public CommonResponse> getPrintFieldVariables(@NotBlank(message = "流程实例不能为空") @RequestParam String processInstanceId, + @RequestParam(required = false, defaultValue = "true") Boolean throwException) { Map result = new HashMap<>(); CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutor(); - byte[] formInstanceValue = commandExecutor.execute(new CustomGetFormInstanceLatestValuesCmd(processInstanceId)); + byte[] formInstanceValue = commandExecutor.execute(new CustomGetFormInstanceLatestValuesCmd(processInstanceId, throwException)); if (!ObjectUtils.isEmpty(formInstanceValue)) { JSONObject treeNode = JSON.parseObject(new String(formInstanceValue)); result.putAll(treeNode.getJSONObject("values").getInnerMap());