add 添加流程流程实例,流程定义分类查询

This commit is contained in:
gssong 2023-07-01 11:15:29 +08:00
parent 52bf215b6d
commit 6479864c85
6 changed files with 25 additions and 1 deletions

View File

@ -34,7 +34,7 @@ public class ModelBo extends PageEntity implements Serializable {
private String key; private String key;
/** /**
* 模型标识key * 模型分类
*/ */
@NotBlank(message = "模型分类不能为空", groups = {AddGroup.class}) @NotBlank(message = "模型分类不能为空", groups = {AddGroup.class})
private String categoryCode; private String categoryCode;

View File

@ -23,9 +23,15 @@ public class ProcessDefinitionBo extends PageEntity implements Serializable {
* 流程定义名称key * 流程定义名称key
*/ */
private String key; private String key;
/** /**
* 流程定义名称 * 流程定义名称
*/ */
private String name; private String name;
/**
* 模型分类
*/
private String categoryCode;
} }

View File

@ -33,4 +33,9 @@ public class ProcessInstanceBo extends PageEntity implements Serializable {
* 业务id * 业务id
*/ */
private String businessKey; private String businessKey;
/**
* 模型分类
*/
private String categoryCode;
} }

View File

@ -36,6 +36,7 @@ import org.flowable.engine.RepositoryService;
import org.flowable.engine.repository.Deployment; import org.flowable.engine.repository.Deployment;
import org.flowable.engine.repository.Model; import org.flowable.engine.repository.Model;
import org.flowable.engine.repository.ModelQuery; import org.flowable.engine.repository.ModelQuery;
import org.flowable.engine.repository.ProcessDefinition;
import org.flowable.validation.ValidationError; import org.flowable.validation.ValidationError;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -292,6 +293,9 @@ public class ActModelServiceImpl implements IActModelService {
// 更新 部署id 到流程定义模型数据表中 // 更新 部署id 到流程定义模型数据表中
model.setDeploymentId(deployment.getId()); model.setDeploymentId(deployment.getId());
repositoryService.saveModel(model); repositoryService.saveModel(model);
// 更新分类
ProcessDefinition definition = repositoryService.createProcessDefinitionQuery().deploymentId(deployment.getId()).singleResult();
repositoryService.setProcessDefinitionCategory(definition.getId(), model.getCategory());
return true; return true;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();

View File

@ -64,6 +64,9 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer
if (StringUtils.isNotEmpty(processDefinitionBo.getKey())) { if (StringUtils.isNotEmpty(processDefinitionBo.getKey())) {
query.processDefinitionKey(processDefinitionBo.getKey()); query.processDefinitionKey(processDefinitionBo.getKey());
} }
if (StringUtils.isNotEmpty(processDefinitionBo.getCategoryCode())) {
query.processDefinitionCategory(processDefinitionBo.getCategoryCode());
}
if (StringUtils.isNotEmpty(processDefinitionBo.getName())) { if (StringUtils.isNotEmpty(processDefinitionBo.getName())) {
query.processDefinitionNameLike("%" + processDefinitionBo.getName() + "%"); query.processDefinitionNameLike("%" + processDefinitionBo.getName() + "%");
} }

View File

@ -93,6 +93,9 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService
if (StringUtils.isNotBlank(processInstanceBo.getBusinessKey())) { if (StringUtils.isNotBlank(processInstanceBo.getBusinessKey())) {
query.processInstanceBusinessKey(processInstanceBo.getBusinessKey()); query.processInstanceBusinessKey(processInstanceBo.getBusinessKey());
} }
if (StringUtils.isNotBlank(processInstanceBo.getCategoryCode())) {
query.processDefinitionCategory(processInstanceBo.getCategoryCode());
}
List<ProcessInstance> processInstances = query.listPage(processInstanceBo.getPageNum(), processInstanceBo.getPageSize()); List<ProcessInstance> processInstances = query.listPage(processInstanceBo.getPageNum(), processInstanceBo.getPageSize());
for (ProcessInstance processInstance : processInstances) { for (ProcessInstance processInstance : processInstances) {
ProcessInstanceVo processInstanceVo = BeanUtil.toBean(processInstance, ProcessInstanceVo.class); ProcessInstanceVo processInstanceVo = BeanUtil.toBean(processInstance, ProcessInstanceVo.class);
@ -124,6 +127,9 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService
if (StringUtils.isNotBlank(processInstanceBo.getBusinessKey())) { if (StringUtils.isNotBlank(processInstanceBo.getBusinessKey())) {
query.processInstanceBusinessKey(processInstanceBo.getBusinessKey()); query.processInstanceBusinessKey(processInstanceBo.getBusinessKey());
} }
if (StringUtils.isNotBlank(processInstanceBo.getCategoryCode())) {
query.processDefinitionCategory(processInstanceBo.getCategoryCode());
}
List<HistoricProcessInstance> historicProcessInstances = query.listPage(processInstanceBo.getPageNum(), processInstanceBo.getPageSize()); List<HistoricProcessInstance> historicProcessInstances = query.listPage(processInstanceBo.getPageNum(), processInstanceBo.getPageSize());
for (HistoricProcessInstance historicProcessInstance : historicProcessInstances) { for (HistoricProcessInstance historicProcessInstance : historicProcessInstances) {
ProcessInstanceVo processInstanceVo = BeanUtil.toBean(historicProcessInstance, ProcessInstanceVo.class); ProcessInstanceVo processInstanceVo = BeanUtil.toBean(historicProcessInstance, ProcessInstanceVo.class);