mirror of
https://github.com/dromara/RuoYi-Vue-Plus.git
synced 2025-09-29 14:46:40 +08:00
add 添加动态表单提交流程
This commit is contained in:
parent
c28c6ba4c4
commit
50484c5442
@ -60,4 +60,14 @@ public class WfBusinessFormVo implements Serializable {
|
||||
@ExcelProperty(value = "表单值")
|
||||
private String contentValue;
|
||||
|
||||
/**
|
||||
* 动态单与流程定义关联信息业务对象
|
||||
*/
|
||||
private WfFormDefinitionVo wfFormDefinitionVo;
|
||||
|
||||
/**
|
||||
* 流程实例对象
|
||||
*/
|
||||
private ProcessInstanceVo processInstanceVo;
|
||||
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ package org.dromara.workflow.service.impl;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import org.dromara.common.core.utils.DateUtils;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StreamUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.json.utils.JsonUtils;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
@ -11,6 +12,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.workflow.domain.WfFormDefinition;
|
||||
import org.dromara.workflow.domain.vo.WfFormDefinitionVo;
|
||||
import org.dromara.workflow.mapper.WfFormDefinitionMapper;
|
||||
import org.dromara.workflow.utils.WorkflowUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.dromara.workflow.domain.bo.WfBusinessFormBo;
|
||||
import org.dromara.workflow.domain.vo.WfBusinessFormVo;
|
||||
@ -34,12 +39,21 @@ public class WfBusinessFormServiceImpl implements IWfBusinessFormService {
|
||||
|
||||
private final WfBusinessFormMapper baseMapper;
|
||||
|
||||
private final WfFormDefinitionMapper wfFormDefinitionMapper;
|
||||
|
||||
/**
|
||||
* 查询发起流程
|
||||
*/
|
||||
@Override
|
||||
public WfBusinessFormVo queryById(Long id) {
|
||||
return baseMapper.selectVoById(id);
|
||||
WfBusinessFormVo wfBusinessFormVo = baseMapper.selectVoById(id);
|
||||
if (wfBusinessFormVo != null) {
|
||||
WfFormDefinitionVo wfFormDefinitionVo = wfFormDefinitionMapper.selectVoOne(
|
||||
new LambdaQueryWrapper<WfFormDefinition>().eq(WfFormDefinition::getFormId, wfBusinessFormVo.getFormId())
|
||||
);
|
||||
wfBusinessFormVo.setWfFormDefinitionVo(wfFormDefinitionVo);
|
||||
}
|
||||
return wfBusinessFormVo;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -49,6 +63,8 @@ public class WfBusinessFormServiceImpl implements IWfBusinessFormService {
|
||||
public TableDataInfo<WfBusinessFormVo> queryPageList(WfBusinessFormBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<WfBusinessForm> lqw = buildQueryWrapper(bo);
|
||||
Page<WfBusinessFormVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
List<WfBusinessFormVo> records = result.getRecords();
|
||||
WorkflowUtils.setProcessInstanceListVo(records,StreamUtils.toList(records, e -> String.valueOf(e.getId())),"id");
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
|
@ -306,6 +306,9 @@ public class WorkflowUtils {
|
||||
* @param fieldName 主键属性名称
|
||||
*/
|
||||
public static void setProcessInstanceListVo(Object obj, List<String> idList, String fieldName) {
|
||||
if (CollUtil.isEmpty(idList)) {
|
||||
return;
|
||||
}
|
||||
List<ActHiProcinst> actHiProcinstList = I_ACT_HI_PROCINST_SERVICE.selectByBusinessKeyIn(idList);
|
||||
if (obj instanceof Collection<?> collection) {
|
||||
for (Object o : collection) {
|
||||
|
Loading…
Reference in New Issue
Block a user