|
@@ -9,6 +9,8 @@ import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmDefini
|
|
|
import cn.iocoder.yudao.adminserver.modules.bpm.service.model.dto.BpmModelMetaInfoRespDTO;
|
|
|
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
|
|
import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
|
|
|
+import org.activiti.engine.impl.persistence.entity.SuspensionState;
|
|
|
+import org.activiti.engine.repository.Deployment;
|
|
|
import org.activiti.engine.repository.Model;
|
|
|
import org.activiti.engine.repository.ProcessDefinition;
|
|
|
import org.mapstruct.Mapper;
|
|
@@ -29,16 +31,18 @@ public interface ModelConvert {
|
|
|
ModelConvert INSTANCE = Mappers.getMapper(ModelConvert.class);
|
|
|
|
|
|
default List<BpmModelPageItemRespVO> convertList(List<Model> list, Map<Long, BpmFormDO> formMap,
|
|
|
+ Map<String, Deployment> deploymentMap,
|
|
|
Map<String, ProcessDefinition> processDefinitionMap) {
|
|
|
return CollectionUtils.convertList(list, model -> {
|
|
|
BpmModelMetaInfoRespDTO metaInfo = JsonUtils.parseObject(model.getMetaInfo(), BpmModelMetaInfoRespDTO.class);
|
|
|
BpmFormDO form = metaInfo != null ? formMap.get(metaInfo.getFormId()) : null;
|
|
|
+ Deployment deployment = model.getDeploymentId() != null ? deploymentMap.get(model.getDeploymentId()) : null;
|
|
|
ProcessDefinition processDefinition = model.getDeploymentId() != null ? processDefinitionMap.get(model.getDeploymentId()) : null;
|
|
|
- return convert(model, form, processDefinition);
|
|
|
+ return convert(model, form, deployment, processDefinition);
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- default BpmModelPageItemRespVO convert(Model model, BpmFormDO form, ProcessDefinition processDefinition) {
|
|
|
+ default BpmModelPageItemRespVO convert(Model model, BpmFormDO form, Deployment deployment, ProcessDefinition processDefinition) {
|
|
|
BpmModelPageItemRespVO modelRespVO = new BpmModelPageItemRespVO();
|
|
|
modelRespVO.setId(model.getId());
|
|
|
modelRespVO.setName(model.getName());
|
|
@@ -54,6 +58,11 @@ public interface ModelConvert {
|
|
|
modelRespVO.setFormName(form.getName());
|
|
|
}
|
|
|
modelRespVO.setProcessDefinition(this.convert(processDefinition));
|
|
|
+ if (modelRespVO.getProcessDefinition() != null) {
|
|
|
+ modelRespVO.getProcessDefinition().setSuspensionState(processDefinition.isSuspended() ?
|
|
|
+ SuspensionState.SUSPENDED.getStateCode() : SuspensionState.ACTIVE.getStateCode());
|
|
|
+ modelRespVO.getProcessDefinition().setDeploymentTime(deployment.getDeploymentTime());
|
|
|
+ }
|
|
|
return modelRespVO;
|
|
|
}
|
|
|
|