|
@@ -10,17 +10,22 @@ import com.jeeplus.common.utils.StringUtils;
|
|
import com.jeeplus.core.web.BaseController;
|
|
import com.jeeplus.core.web.BaseController;
|
|
import com.jeeplus.modules.act.service.ActProcessService;
|
|
import com.jeeplus.modules.act.service.ActProcessService;
|
|
import com.jeeplus.modules.act.service.ActTaskService;
|
|
import com.jeeplus.modules.act.service.ActTaskService;
|
|
|
|
+import com.jeeplus.modules.act.utils.ProcessDefCache;
|
|
import com.jeeplus.modules.sg.managementcenter.activiti.entity.Construction;
|
|
import com.jeeplus.modules.sg.managementcenter.activiti.entity.Construction;
|
|
import com.jeeplus.modules.sg.managementcenter.activiti.service.ConstructionService;
|
|
import com.jeeplus.modules.sg.managementcenter.activiti.service.ConstructionService;
|
|
import com.jeeplus.modules.sys.utils.UserUtils;
|
|
import com.jeeplus.modules.sys.utils.UserUtils;
|
|
import com.jeeplus.modules.test.activiti.entity.OALeave;
|
|
import com.jeeplus.modules.test.activiti.entity.OALeave;
|
|
import com.jeeplus.modules.test.activiti.service.OALeaveService;
|
|
import com.jeeplus.modules.test.activiti.service.OALeaveService;
|
|
-import org.activiti.engine.ProcessEngine;
|
|
|
|
-import org.activiti.engine.ProcessEngines;
|
|
|
|
-import org.activiti.engine.TaskService;
|
|
|
|
|
|
+import org.activiti.engine.*;
|
|
|
|
+import org.activiti.engine.delegate.Expression;
|
|
import org.activiti.engine.impl.RepositoryServiceImpl;
|
|
import org.activiti.engine.impl.RepositoryServiceImpl;
|
|
|
|
+import org.activiti.engine.impl.TaskServiceImpl;
|
|
|
|
+import org.activiti.engine.impl.persistence.entity.ExecutionEntity;
|
|
import org.activiti.engine.impl.persistence.entity.ProcessDefinitionEntity;
|
|
import org.activiti.engine.impl.persistence.entity.ProcessDefinitionEntity;
|
|
|
|
+import org.activiti.engine.impl.pvm.PvmActivity;
|
|
|
|
+import org.activiti.engine.impl.pvm.PvmTransition;
|
|
import org.activiti.engine.impl.pvm.process.ActivityImpl;
|
|
import org.activiti.engine.impl.pvm.process.ActivityImpl;
|
|
|
|
+import org.activiti.engine.impl.task.TaskDefinition;
|
|
import org.activiti.engine.repository.ProcessDefinition;
|
|
import org.activiti.engine.repository.ProcessDefinition;
|
|
import org.activiti.engine.task.Task;
|
|
import org.activiti.engine.task.Task;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -30,6 +35,7 @@ import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
+import java.util.Set;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 施工交底Controller
|
|
* 施工交底Controller
|
|
@@ -47,7 +53,9 @@ public class ConstructionController extends BaseController {
|
|
private ActProcessService actProcessService;
|
|
private ActProcessService actProcessService;
|
|
@Autowired
|
|
@Autowired
|
|
private ActTaskService actTaskService;
|
|
private ActTaskService actTaskService;
|
|
-
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private RuntimeService runtimeService;
|
|
|
|
+
|
|
@ModelAttribute
|
|
@ModelAttribute
|
|
public Construction get(@RequestParam(required=false) String id) {
|
|
public Construction get(@RequestParam(required=false) String id) {
|
|
Construction entity = null;
|
|
Construction entity = null;
|
|
@@ -68,36 +76,59 @@ public class ConstructionController extends BaseController {
|
|
*/
|
|
*/
|
|
@RequestMapping(value = "form/{mode}")
|
|
@RequestMapping(value = "form/{mode}")
|
|
public String form(@PathVariable String mode, Construction construction, Model model) {
|
|
public String form(@PathVariable String mode, Construction construction, Model model) {
|
|
-/* String proId = construction.getAct().getProcDefId();
|
|
|
|
|
|
+ String proId = construction.getAct().getProcDefId();
|
|
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
|
|
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
|
|
TaskService taskService = processEngine.getTaskService();
|
|
TaskService taskService = processEngine.getTaskService();
|
|
//根据assignee(代理人)查询任务
|
|
//根据assignee(代理人)查询任务
|
|
- List<Task> tasks = taskService.createTaskQuery().processDefinitionId(proId).list();*//*taskAssignee(proDefId).list();*//*
|
|
|
|
-
|
|
|
|
- ProcessDefinitionEntity def = (ProcessDefinitionEntity) ((RepositoryServiceImpl)rs).getDeployedProcessDefinition(construction.getAct().getProcDefId());
|
|
|
|
- List<ActivityImpl> activitiList = def.getActivities(); //rs是指RepositoryService的实例
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+ List<Task> tasks = taskService.createTaskQuery().processDefinitionId(proId).list();
|
|
|
|
+ RepositoryService rs = processEngine.getRepositoryService();
|
|
|
|
+// List processDefinitions = rs.createProcessDefinitionQuery().list();
|
|
|
|
+ String procDefId = construction.getAct().getProcDefId();
|
|
|
|
+ ProcessDefinitionEntity def = (ProcessDefinitionEntity) ((RepositoryServiceImpl)rs).getProcessDefinition(procDefId);
|
|
|
|
+// List<ActivityImpl> activitiList = def.getActivities(); //rs是指RepositoryService的实例
|
|
int size = tasks.size();
|
|
int size = tasks.size();
|
|
for (int i = 0; i < size; i++) {
|
|
for (int i = 0; i < size; i++) {
|
|
Task task = tasks.get(i);
|
|
Task task = tasks.get(i);
|
|
-
|
|
|
|
}
|
|
}
|
|
//首次运行的时候这个没有输出,因为第一次运行的时候扫描act_ru_task的表里面是空的,但第一次运行完成之后里面会添加一条记录,之后每次运行里面都会添加一条记录
|
|
//首次运行的时候这个没有输出,因为第一次运行的时候扫描act_ru_task的表里面是空的,但第一次运行完成之后里面会添加一条记录,之后每次运行里面都会添加一条记录
|
|
for (Task task : tasks) {
|
|
for (Task task : tasks) {
|
|
|
|
+ ActivityImpl activityImpl=def.findActivity(task.getTaskDefinitionKey());
|
|
|
|
+ TaskDefinition taskDef = (TaskDefinition)activityImpl.getProperties().get("taskDefinition");
|
|
|
|
+ Set<Expression> roleCodes = taskDef.getCandidateGroupIdExpressions();//候选组
|
|
System.out.println("taskId:" + task.getId() +
|
|
System.out.println("taskId:" + task.getId() +
|
|
",taskName:" + task.getName() +
|
|
",taskName:" + task.getName() +
|
|
",assignee:" + task.getAssignee() +
|
|
",assignee:" + task.getAssignee() +
|
|
",createTime:" + task.getCreateTime() +
|
|
",createTime:" + task.getCreateTime() +
|
|
- ",getTaskLocalVariables:" + task.getTaskLocalVariables());
|
|
|
|
- }*/
|
|
|
|
|
|
+ ",getTaskLocalVariables:" + task.getProcessVariables()+
|
|
|
|
+ ",roleCodes:"+roleCodes.toString());
|
|
|
|
+ }
|
|
model.addAttribute("construction", construction);
|
|
model.addAttribute("construction", construction);
|
|
|
|
+// model.addAttribute("roleCodes");
|
|
if("add".equals(mode) || "edit".equals(mode)){
|
|
if("add".equals(mode) || "edit".equals(mode)){
|
|
return "modules/sg/managementcenter/activiti/constructionForm";
|
|
return "modules/sg/managementcenter/activiti/constructionForm";
|
|
}else{//audit
|
|
}else{//audit
|
|
return "modules/sg/managementcenter/activiti/constructionAudit";
|
|
return "modules/sg/managementcenter/activiti/constructionAudit";
|
|
}
|
|
}
|
|
- }
|
|
|
|
|
|
+/* String procInstanceId = construction.getAct().getProcDefId();
|
|
|
|
+ ProcessDefinitionEntity def = (ProcessDefinitionEntity) ((RepositoryServiceImpl)repositoryService).getDeployedProcessDefinition(procInstanceId);
|
|
|
|
+ List<ActivityImpl> activitiList = def.getActivities();*/
|
|
|
|
+
|
|
|
|
+/* for(ActivityImpl act : activitiList) {
|
|
|
|
+ System.out.println("当前任务:"+act.getProperty("name")); //输出某个节点的某种属性
|
|
|
|
+ List<PvmTransition> outTransitions = act.getOutgoingTransitions();//获取从某个节点出来的所有线路
|
|
|
|
+ for(PvmTransition tr:outTransitions){
|
|
|
|
+ PvmActivity ac = tr.getDestination(); //获取线路的终点节点
|
|
|
|
+ System.out.println("下一步任务任务:"+ac.getProperty("name"));
|
|
|
|
+ }*/
|
|
|
|
+// System.out.println("活动节点:" + act.getProperty("name") + "," + act.getId()+act.getProperty(""));
|
|
|
|
+ /* String excId = task.getExecutionId();
|
|
|
|
+ ExecutionEntity execution = (ExecutionEntity) runtimeService.createExecutionQuery().executionId(excId).singleResult();
|
|
|
|
+ String activitiId = execution.getActivityId();*/
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
/**
|
|
/**
|
|
* 保存请假申请
|
|
* 保存请假申请
|
|
@@ -143,7 +174,6 @@ public class ConstructionController extends BaseController {
|
|
j.setMsg("提交成功!");
|
|
j.setMsg("提交成功!");
|
|
j.getBody().put("targetUrl", "/act/task/todo/");
|
|
j.getBody().put("targetUrl", "/act/task/todo/");
|
|
}
|
|
}
|
|
-
|
|
|
|
return j;
|
|
return j;
|
|
}
|
|
}
|
|
|
|
|