1.解决完成任务时如果上传文件为空报错问题

main
yitonglei 3 years ago
parent fb6157f2a6
commit 1dfa1d91e9
  1. 23
      lab-plugin/lab-workflow/src/main/java/org/springblade/plugin/workbench/service/impl/WorkBenchServiceImpl.java
  2. 1
      lab-plugin/lab-workflow/src/main/java/org/springblade/plugin/workflow/process/controller/WfProcessController.java
  3. 2
      lab-plugin/lab-workflow/src/main/java/org/springblade/plugin/workflow/process/model/WfProcess.java
  4. 2
      lab-plugin/lab-workflow/src/main/java/org/springblade/plugin/workflow/process/service/impl/WfProcessService.java

@ -3,13 +3,17 @@ package org.springblade.plugin.workbench.service.impl;
import lombok.AllArgsConstructor;
import org.flowable.engine.TaskService;
import org.flowable.task.api.Task;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.plugin.workbench.service.IWorkBenchService;
import org.springblade.plugin.workflow.core.utils.WfTaskUtil;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @Description
@ -23,11 +27,28 @@ public class WorkBenchServiceImpl implements IWorkBenchService {
private final TaskService taskService;
public void getTask(){
//获取正在运行的任务
List<Task> list = taskService.createTaskQuery().taskTenantId(WfTaskUtil.getTenantId()).list();
Map<String,List<Task>> taskRemindMap = new HashMap<>();
list.forEach(hi -> {
//筛选出到期的任务
List<Task> collect = list.stream().filter(ts -> {
Map<String, Object> variableMap = ts.getProcessVariables();
if(Func.isNotEmpty(variableMap.get("qiwangwanchengshijian")) && Func.isNotBlank(variableMap.get("qiwangwanchengshijian").toString())){
Date qiwangwanchengshijian = DateUtil.parse(variableMap.get("qiwangwanchengshijian").toString(), "yyyy-MM-dd HH:mm:ss");
if(DateUtil.between(DateUtil.now(), qiwangwanchengshijian).isNegative()){
return true;
}else{
return false;
}
}else{
return false;
}
}).collect(Collectors.toList());
//将到期任务按照
collect.forEach(cl ->{
});
}

@ -315,6 +315,7 @@ public class WfProcessController {
@ApiImplicitParam(name = "copyUser", value = "抄送人"),
@ApiImplicitParam(name = "assignee", value = "指定审批人"),
@ApiImplicitParam(name = "variables", value = "表单参数"),
@ApiImplicitParam(name = "uploadrecord", value = "上传的文件")
})
public R completeTask(@ApiIgnore @RequestBody WfProcess process) {
if (ObjectUtil.isAnyEmpty(process.getTaskId(), process.getProcessInstanceId())) {

@ -242,6 +242,6 @@ public class WfProcess implements Serializable {
*/
private String formSearch;
private List<Map<String,Object>> uploadrecord;
private String uploadrecord;
}

@ -579,7 +579,7 @@ public class WfProcessService implements IWfProcessService {
runtimeService.setVariable(task.getProcessInstanceId(), "wf_latest_task_assignee", WfTaskUtil.getTaskUser());
//重新给上传附件赋值,把新增的上传加上
if(!Func.isEmpty(process.getUploadrecord()) && process.getUploadrecord().toString() != ""){
if(Func.isNotEmpty(process.getUploadrecord()) && process.getUploadrecord().toString() != "" ){
runtimeService.setVariable(task.getProcessInstanceId(), "uploadrecord", process.getUploadrecord());
}

Loading…
Cancel
Save