package org.jeecg.modules.dncFlow.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.flowable.engine.ProcessEngine;
|
import org.flowable.engine.TaskService;
|
import org.jeecg.modules.dncFlow.entity.WorkTaskDataVo;
|
import org.jeecg.modules.dncFlow.mapper.IWorkTaskVoMapper;
|
import org.jeecg.modules.dncFlow.service.IWorkTaskServiceVo;
|
import org.jeecg.modules.dncFlow.vo.FlowMy;
|
import org.jeecg.modules.system.service.ISysUserService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Map;
|
|
@Service
|
public class WorkTaskServiceImplVo extends ServiceImpl<IWorkTaskVoMapper, WorkTaskDataVo> implements IWorkTaskServiceVo {
|
@Autowired
|
ProcessEngine processEngine;
|
@Autowired
|
private ISysUserService sysUserService;
|
@Override
|
public IPage<WorkTaskDataVo> toTaskBySelf(FlowMy flowMy, Page page) {
|
IPage<WorkTaskDataVo> workTaskDataVoList = baseMapper.taskBySelf(flowMy,page);
|
workTaskDataVoList.getRecords().forEach(workTaskDataVo -> {
|
TaskService taskService = processEngine.getTaskService();
|
String taskId=workTaskDataVo.getId();
|
Map<String, Object> variables = taskService.getVariables(taskId);
|
String realname=sysUserService.getUserByName((String) variables.get("INITIATOR")).getRealname();
|
variables.put("INITIATOR",realname);
|
workTaskDataVo.setVariables(variables);
|
});
|
return workTaskDataVoList;
|
}
|
}
|