Merge branch 'feature/REQ-4418' into pre
This commit is contained in:
commit
42755a3393
@ -9,6 +9,7 @@ import cn.axzo.workflow.common.model.request.bpmn.log.LogApproveSearchDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BeforeProcessInstanceCreateDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAdminPageReqVO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceBatchQueryDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCancelDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCarbonCopyDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCheckApproverDTO;
|
||||
@ -155,6 +156,17 @@ public interface ProcessInstanceApi {
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<BpmnProcessInstanceVO> getProcessInstanceVO(@Validated @RequestBody BpmnProcessInstanceQueryDTO dto);
|
||||
|
||||
/**
|
||||
* 批量获得流程实例
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "批量获得流程实例")
|
||||
@PostMapping("/api/process/instance/batch/get")
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<BpmPageResult<BpmnProcessInstanceVO>> getBatchProcessInstanceVO(@Validated @RequestBody BpmnProcessInstanceBatchQueryDTO dto);
|
||||
|
||||
/**
|
||||
* 获取指定流程实例的流程变量
|
||||
*
|
||||
|
||||
@ -16,7 +16,6 @@ import cn.axzo.workflow.common.model.request.bpmn.model.doc.DocStatusDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.model.doc.DocTenantQueryDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.model.doc.DocUpdateDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.print.PrintTemplateConfigQueryDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.print.PrintTemplateConfigUpsertDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.print.RestPrintTemplateConfigDTO;
|
||||
import cn.axzo.workflow.common.model.response.BpmPageResult;
|
||||
import cn.axzo.workflow.common.model.response.bpmn.model.BpmnModelDetailVO;
|
||||
@ -220,17 +219,6 @@ public interface ProcessModelApi {
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<List<String>> getModelTenantIds();
|
||||
|
||||
/**
|
||||
* 打印模板配置内容更新保存
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "打印模板配置内容更新保存")
|
||||
@PostMapping("/api/process/model/print/template/upsert")
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<Void> printTemplateConfig(@Validated @RequestBody PrintTemplateConfigUpsertDTO dto);
|
||||
|
||||
/**
|
||||
* 获取打印模板配置内容
|
||||
*
|
||||
|
||||
@ -5,6 +5,7 @@ import cn.axzo.workflow.common.annotation.InvokeMode;
|
||||
import cn.axzo.workflow.common.annotation.Manageable;
|
||||
import cn.axzo.workflow.common.model.dto.print.PrintFieldDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.print.PrintFieldQueryDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.print.PrintTemplateConfigUpsertDTO;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@ -26,20 +27,50 @@ import static cn.axzo.workflow.common.enums.RpcInvokeModeEnum.SYNC;
|
||||
* @since 2025-01-16 17:35
|
||||
*/
|
||||
@WorkflowEngineFeignClient
|
||||
@Manageable
|
||||
public interface PrintAdminApi {
|
||||
/**
|
||||
* 查询指定审批流程是否能打印,打印开关是否开启,是否存在打印模板
|
||||
*
|
||||
* @param processInstanceId
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "查询指定审批流程是否能打印,打印开关是否开启,是否存在打印模板")
|
||||
@GetMapping("/api/print/admin/template/exists")
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<Boolean> hasPrintTemplate(@NotBlank(message = "流程实例不能为空") @RequestParam String processInstanceId);
|
||||
|
||||
/**
|
||||
* 打印模板配置内容更新保存
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "打印模板配置内容更新保存")
|
||||
@PostMapping("/api/process/model/print/template/upsert")
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<Void> printTemplateConfig(@Validated @RequestBody PrintTemplateConfigUpsertDTO dto);
|
||||
|
||||
/**
|
||||
* 获取打印模板中可打印的字段
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "获取打印模板中可打印的字段")
|
||||
@PostMapping("/api/print/admin/fields")
|
||||
@Manageable
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<List<PrintFieldDTO>> getPrintFields(@Validated @RequestBody PrintFieldQueryDTO dto);
|
||||
|
||||
/**
|
||||
* 获取指定流程下用于替换打印的相关变量
|
||||
*
|
||||
* @param processInstanceId
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "获取指定流程下用于替换打印的相关变量")
|
||||
@GetMapping("/api/print/admin/field/variables")
|
||||
@Manageable
|
||||
@InvokeMode(SYNC)
|
||||
CommonResponse<Map<String, Object>> getPrintFieldVariables(@NotBlank(message = "流程实例不能为空") @RequestParam String processInstanceId);
|
||||
}
|
||||
|
||||
@ -27,7 +27,7 @@ public enum ApproverSpecifyEnum {
|
||||
initiator_v2("initiator_v2", "发起人自己", 2),
|
||||
initiatorLeader_v2("initiatorLeader_v2", "发起人主管", 2),
|
||||
fixedPerson_v2("fixedPerson_v2", "固定人员", 2),
|
||||
preAllNodApprover_v2("preAllNodeApprover_v2", "所有前序节点审批人", 2),
|
||||
preAllNodeApprover_v2("preAllNodeApprover_v2", "所有前序节点审批人", 2),
|
||||
;
|
||||
|
||||
private String type;
|
||||
|
||||
@ -0,0 +1,28 @@
|
||||
package cn.axzo.workflow.common.model.request.bpmn.process;
|
||||
|
||||
import cn.axzo.workflow.common.model.request.BpmPageParam;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 批量查询流程实例的入参模型
|
||||
*
|
||||
* @author wangli
|
||||
* @since 2023/7/14 10:12
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@ApiModel("批量查询流程实例的入参模型")
|
||||
@Accessors(chain = true)
|
||||
public class BpmnProcessInstanceBatchQueryDTO extends BpmPageParam {
|
||||
|
||||
/**
|
||||
* 流程实例 ID 列表
|
||||
*/
|
||||
private List<String> processInstanceIds;
|
||||
|
||||
}
|
||||
@ -81,6 +81,11 @@ public class ProcessInstanceDTO implements Serializable {
|
||||
*/
|
||||
private String businessProcessInstanceName;
|
||||
|
||||
/**
|
||||
* 模型定义的原始名称
|
||||
*/
|
||||
private String definitionName;
|
||||
|
||||
/**
|
||||
* 发起人信息
|
||||
*/
|
||||
|
||||
@ -320,7 +320,7 @@ public class ServiceTaskJsonConverter extends AbstractBpmnJsonConverter<ServiceT
|
||||
break;
|
||||
case fixedPerson_v2:
|
||||
break;
|
||||
case preAllNodApprover_v2:
|
||||
case preAllNodeApprover_v2:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@ -35,7 +35,7 @@ public class BasedPreAllNodeTaskAssigneeSelector extends AbstractBpmnTaskAssigne
|
||||
|
||||
@Override
|
||||
public String getType() {
|
||||
return ApproverSpecifyEnum.preAllNodApprover_v2.getType();
|
||||
return ApproverSpecifyEnum.preAllNodeApprover_v2.getType();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -85,7 +85,8 @@ public class RocketMqBpmnProcessEventListener extends AbstractBpmnEventListener<
|
||||
.setStartTime(((ExecutionEntityImpl) event.getEntity()).getStartTime())
|
||||
.setTenantId(((ExecutionEntityImpl) event.getEntity()).getTenantId())
|
||||
.setBusinessKey(((ExecutionEntityImpl) event.getEntity()).getBusinessKey())
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) event.getEntity()).getName());
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) event.getEntity()).getName())
|
||||
.setDefinitionName(mainProcess.getName());
|
||||
BpmnMetaParserHelper.getNoticeConfig(mainProcess).ifPresent(dto::setNoticeConf);
|
||||
BpmnMetaParserHelper.getSignConfig(mainProcess).ifPresent(dto::setSignConf);
|
||||
|
||||
@ -154,7 +155,8 @@ public class RocketMqBpmnProcessEventListener extends AbstractBpmnEventListener<
|
||||
.setStartTime(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getStartTime())
|
||||
.setTenantId(((FlowableProcessCancelledEventImpl) event).getExecution().getTenantId())
|
||||
.setBusinessKey(((FlowableProcessCancelledEventImpl) event).getExecution().getProcessInstanceBusinessKey())
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getName());
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getName())
|
||||
.setDefinitionName(mainProcess.getName());
|
||||
BpmnMetaParserHelper.getNoticeConfig(mainProcess).ifPresent(dto::setNoticeConf);
|
||||
BpmnMetaParserHelper.getSignConfig(mainProcess).ifPresent(dto::setSignConf);
|
||||
|
||||
@ -194,7 +196,8 @@ public class RocketMqBpmnProcessEventListener extends AbstractBpmnEventListener<
|
||||
.setStartTime(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getStartTime())
|
||||
.setTenantId(((FlowableProcessCancelledEventImpl) event).getExecution().getTenantId())
|
||||
.setBusinessKey(((FlowableProcessCancelledEventImpl) event).getExecution().getProcessInstanceBusinessKey())
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getName());
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getName())
|
||||
.setDefinitionName(mainProcess.getName());
|
||||
BpmnMetaParserHelper.getNoticeConfig(mainProcess).ifPresent(dto::setNoticeConf);
|
||||
BpmnMetaParserHelper.getSignConfig(mainProcess).ifPresent(dto::setSignConf);
|
||||
|
||||
@ -229,7 +232,8 @@ public class RocketMqBpmnProcessEventListener extends AbstractBpmnEventListener<
|
||||
.setStartTime(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getStartTime())
|
||||
.setTenantId(((FlowableProcessCancelledEventImpl) event).getExecution().getTenantId())
|
||||
.setBusinessKey(((FlowableProcessCancelledEventImpl) event).getExecution().getProcessInstanceBusinessKey())
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getName());
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getName())
|
||||
.setDefinitionName(mainProcess.getName());
|
||||
BpmnMetaParserHelper.getNoticeConfig(mainProcess).ifPresent(dto::setNoticeConf);
|
||||
BpmnMetaParserHelper.getSignConfig(mainProcess).ifPresent(dto::setSignConf);
|
||||
|
||||
@ -264,7 +268,8 @@ public class RocketMqBpmnProcessEventListener extends AbstractBpmnEventListener<
|
||||
.setStartTime(((ExecutionEntityImpl) event.getEntity()).getStartTime())
|
||||
.setTenantId(((ExecutionEntityImpl) event.getEntity()).getTenantId())
|
||||
.setBusinessKey(((ExecutionEntityImpl) event.getEntity()).getProcessInstanceBusinessKey())
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) event.getEntity()).getName());
|
||||
.setBusinessProcessInstanceName(((ExecutionEntityImpl) event.getEntity()).getName())
|
||||
.setDefinitionName(mainProcess.getName());
|
||||
BpmnMetaParserHelper.getNoticeConfig(mainProcess).ifPresent(dto::setNoticeConf);
|
||||
BpmnMetaParserHelper.getSignConfig(mainProcess).ifPresent(dto::setSignConf);
|
||||
|
||||
|
||||
@ -13,6 +13,7 @@ import cn.axzo.workflow.common.model.request.bpmn.log.LogApproveSearchDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BeforeProcessInstanceCreateDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAbortDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceAdminPageReqVO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceBatchQueryDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCancelDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCarbonCopyDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceCheckApproverDTO;
|
||||
@ -42,7 +43,6 @@ import cn.axzo.workflow.common.model.response.bpmn.process.ProcessNodeDetailVO;
|
||||
import cn.axzo.workflow.common.model.response.bpmn.process.doc.DocPendingVO;
|
||||
import cn.axzo.workflow.common.model.response.bpmn.task.BpmnTaskButtonVo;
|
||||
import cn.axzo.workflow.common.model.response.bpmn.task.BpmnTaskInstanceLogVO;
|
||||
import cn.axzo.workflow.common.model.response.category.CategoryItemVO;
|
||||
import cn.axzo.workflow.common.valid.group.ValidGroup;
|
||||
import cn.axzo.workflow.core.engine.cmd.CustomGetModelDocsCmd;
|
||||
import cn.axzo.workflow.core.repository.entity.ExtAxProcessLog;
|
||||
@ -88,7 +88,6 @@ import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
@ -96,7 +95,6 @@ import java.util.stream.Stream;
|
||||
import static cn.axzo.workflow.common.code.BpmnInstanceRespCode.PROCESS_DOC_ID_NOT_IN_MODEL;
|
||||
import static cn.axzo.workflow.common.code.BpmnInstanceRespCode.PROCESS_DOC_READ_PARAM_ERROR;
|
||||
import static cn.axzo.workflow.common.code.BpmnInstanceRespCode.PROCESS_EXT_LOG_PARAM_ERROR;
|
||||
import static cn.axzo.workflow.common.constant.BpmnConstants.BPM_MODEL_CATEGORY;
|
||||
import static cn.azxo.framework.common.model.CommonResponse.success;
|
||||
|
||||
/**
|
||||
@ -284,6 +282,20 @@ public class BpmnProcessInstanceController extends BasicPopulateAvatarController
|
||||
return success(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量获得流程实例
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "批量获得流程实例")
|
||||
@GetMapping("/batch/get")
|
||||
@Override
|
||||
public CommonResponse<BpmPageResult<BpmnProcessInstanceVO>> getBatchProcessInstanceVO(@Validated @RequestBody BpmnProcessInstanceBatchQueryDTO dto) {
|
||||
log.info("获得历史的流程实例 getProcessInstanceVO===>>>参数:{}", JSONUtil.toJsonStr(dto));
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新指定流程定义的版本的状态, 处于 suspended 状态的流程模型将不能再发起实例
|
||||
*
|
||||
|
||||
@ -410,21 +410,6 @@ public class BpmnProcessModelController implements ProcessModelApi {
|
||||
return success(bpmnProcessModelService.getTenantIds());
|
||||
}
|
||||
|
||||
/**
|
||||
* 打印模板配置内容
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "打印模板配置内容")
|
||||
@PostMapping("/print/template/upsert")
|
||||
@Override
|
||||
public CommonResponse<Void> printTemplateConfig(@Validated @RequestBody PrintTemplateConfigUpsertDTO dto) {
|
||||
log.info("操作打印模板配置内容: {}", JSON.toJSONString(dto));
|
||||
bpmnProcessModelService.printTemplateConfig(dto);
|
||||
return success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取打印模板配置内容
|
||||
*
|
||||
|
||||
@ -9,6 +9,7 @@ import cn.axzo.workflow.common.exception.WorkflowEngineException;
|
||||
import cn.axzo.workflow.common.model.dto.print.FieldAttributeDTO;
|
||||
import cn.axzo.workflow.common.model.dto.print.PrintFieldDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.print.PrintFieldQueryDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.print.PrintTemplateConfigUpsertDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.process.BpmnProcessInstanceLogQueryDTO;
|
||||
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskDelegateAssigner;
|
||||
import cn.axzo.workflow.common.model.request.category.CategoryGroupVarSearchDto;
|
||||
@ -20,6 +21,7 @@ import cn.axzo.workflow.core.engine.cmd.CustomGetFormInstanceLatestValuesCmd;
|
||||
import cn.axzo.workflow.core.engine.cmd.CustomGetProcessInstanceVariablesCmd;
|
||||
import cn.axzo.workflow.core.service.BpmnProcessDefinitionService;
|
||||
import cn.axzo.workflow.core.service.BpmnProcessInstanceService;
|
||||
import cn.axzo.workflow.core.service.BpmnProcessModelService;
|
||||
import cn.axzo.workflow.core.service.CategoryGroupService;
|
||||
import cn.axzo.workflow.server.common.annotation.ErrorReporter;
|
||||
import cn.axzo.workflow.server.common.util.RpcExternalUtil;
|
||||
@ -130,6 +132,8 @@ public class PrintAdminController implements PrintAdminApi {
|
||||
private BpmnProcessInstanceService bpmnProcessInstanceService;
|
||||
@Resource
|
||||
private CategoryGroupService categoryGroupService;
|
||||
@Resource
|
||||
private BpmnProcessModelService bpmnProcessModelService;
|
||||
|
||||
/**
|
||||
* 查询指定流程实例是否能使用打印
|
||||
@ -144,6 +148,20 @@ public class PrintAdminController implements PrintAdminApi {
|
||||
return CommonResponse.success(bpmnProcessInstanceService.hasPrintTemplate(processInstanceId, null));
|
||||
}
|
||||
|
||||
/**
|
||||
* 打印模板配置内容
|
||||
*
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "打印模板配置内容")
|
||||
@PostMapping("/print/template/upsert")
|
||||
@Override
|
||||
public CommonResponse<Void> printTemplateConfig(@Validated @RequestBody PrintTemplateConfigUpsertDTO dto) {
|
||||
log.info("操作打印模板配置内容: {}", JSON.toJSONString(dto));
|
||||
bpmnProcessModelService.printTemplateConfig(dto);
|
||||
return success();
|
||||
}
|
||||
/**
|
||||
* 获取打印模板中可打印的字段, 或者是 WPS 模板中可配置的变量字段
|
||||
*
|
||||
|
||||
Loading…
Reference in New Issue
Block a user