提交 d0419b58 authored 作者: whydesc's avatar whydesc

--流程增加待办工作台

上级 5c6ba540
......@@ -56,6 +56,16 @@
</a-select>
</a-form-item>
<a-form-item label="列表地址(URL)" name="formUrl">
<a-input
v-model:value="formState.formListurl"
placeholder="请输入列表地址(URL)"
show-count
:maxlength="128"
allow-clear
/>
</a-form-item>
<a-form-item label="备注" name="remark">
<a-textarea
v-model:value="formState.remark"
......
......@@ -22,6 +22,14 @@
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jeecgframework.boot3</groupId>
<artifactId>jeecg-module-stm</artifactId>
<version>${jeecgboot.version}</version>
</dependency>
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-spring-boot-starter-process</artifactId>
......
......@@ -56,5 +56,9 @@ public class FlowForm implements Serializable {
@Excel(name = "业务表名", width = 15)
private java.lang.String formTableName;
/**列表Url名*/
@Excel(name = "列表Url", width = 15)
private java.lang.String formListurl;
}
......@@ -35,6 +35,7 @@ import org.jeecg.modules.flowable.domain.dto.FlowNextDto;
import org.jeecg.modules.flowable.domain.dto.FlowProcDefDto;
import org.jeecg.modules.flowable.factory.FlowServiceFactory;
import org.jeecg.modules.flowable.service.IFlowDefinitionService;
import org.jeecg.modules.stm.my.service.IMyTaskService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -45,6 +46,8 @@ import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.*;
import java.util.stream.Collectors;
import org.jeecg.modules.stm.my.entity.MyTask;
/**
* 流程定义
......@@ -61,6 +64,7 @@ public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IFl
@Autowired
private ISysDeployFormService sysDeployFormService;
private static final String BPMN_FILE_SUFFIX = ".bpmn";
@Override
......@@ -482,6 +486,8 @@ public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IFl
result.put("procInsId", task.getProcessInstanceId());
result.put("executionId", task.getExecutionId());
result.put("instanceId", task.getProcessInstanceId());
String Title=task.getName();
//
// 给第一步申请人节点设置任务执行人和意见
// Task task = taskService.createTaskQuery().processInstanceId(processInstance.getProcessInstanceId()).active().singleResult();
......@@ -524,8 +530,6 @@ public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IFl
}
}
/*======================todo 启动之后 回调以及关键数据保存======================*/
......
......@@ -61,6 +61,8 @@ import org.jeecg.modules.flowable.flow.CustomProcessDiagramGenerator;
import org.jeecg.modules.flowable.flow.FindNextNodeUtil;
import org.jeecg.modules.flowable.flow.FlowableUtils;
import org.jeecg.modules.flowable.service.IFlowTaskService;
import org.jeecg.modules.stm.my.entity.MyTask;
import org.jeecg.modules.stm.my.service.IMyTaskService;
import org.jeecg.modules.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -93,6 +95,8 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
private IFlowFormService flowFormService;
@Autowired
private ISysDeployFormService sysDeployFormService;
@Autowired
private IMyTaskService myTaskService;
/**
* 完成任务
......@@ -103,6 +107,8 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
@Override
public Result complete(FlowTaskVo taskVo) {
Task task = taskService.createTaskQuery().taskId(taskVo.getTaskId()).singleResult();
if (Objects.isNull(task)) {
return Result.error("任务不存在");
......@@ -131,6 +137,46 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
} else {
taskService.addCandidateGroup(nextTask.getId(),approvalId);
}
// 获取流程变量
Map<String, Object> formValues = getProcessVariables(taskVo.getTaskId());
String zdmc="";
String zdval="";
if(formValues.get("dataName")==null){
if(formValues.get("_value")!=null) {
Map zdv = (Map) formValues.get("_value");
zdmc = (String) zdv.get("dataName");
zdval = zdv.get("dataId").toString();
}
}else{
zdmc=(String)formValues.get("dataName");
zdval=formValues.get("dataId").toString();
}
// 处理表单数据
// Map<String, Object> formData = processFormData(task);
// 根据表单KEY查询表单定义
Long formId = Long.parseLong(nextTask.getFormKey());
FlowForm sysForm = flowFormService.getById(formId); // 假设有这个方法
// 写入 待办
MyTask myTask = new MyTask();
myTask.setUid(approvalId);
myTask.setTp(5);
myTask.setTarget(nextTask.getName());
myTask.setTargetId(zdval); //zdval
myTask.setStTime(new Date());
myTask.setTaskName("待处理");
myTask.setName(nextTask.getName());
myTask.setSta(0);
myTask.setPriority("M");
myTask.setDes("");
//myTask.setLinkAddr("/project/plan/StPlanManList?"+zdmc+"="+zdval);
myTask.setLinkAddr(sysForm.getFormListurl());
myTaskService.save(myTask);
}
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论