|
@@ -106,12 +106,11 @@ public class ActTaskService extends BaseService {
|
|
* 获取待办任务列表
|
|
* 获取待办任务列表
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- public Page<HashMap<String,String>> todoList(Page<HashMap<String,String>> page, Act act){
|
|
|
|
|
|
+ public Page<HashMap<String,String>> newTodoList(Page<HashMap<String,String>> page, Act act,String xmName){
|
|
List<HashMap<String,String>> result = new ArrayList<HashMap<String,String>>();
|
|
List<HashMap<String,String>> result = new ArrayList<HashMap<String,String>>();
|
|
String userId = UserUtils.getUser().getLoginName();//ObjectUtils.toString(UserUtils.getUser().getId());
|
|
String userId = UserUtils.getUser().getLoginName();//ObjectUtils.toString(UserUtils.getUser().getId());
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
// =============== 已经签收的任务 ===============
|
|
// =============== 已经签收的任务 ===============
|
|
TaskQuery todoTaskQuery = taskService.createTaskQuery().taskAssignee(userId).active()
|
|
TaskQuery todoTaskQuery = taskService.createTaskQuery().taskAssignee(userId).active()
|
|
.includeProcessVariables().orderByTaskCreateTime().desc();
|
|
.includeProcessVariables().orderByTaskCreateTime().desc();
|
|
@@ -126,6 +125,13 @@ public class ActTaskService extends BaseService {
|
|
if (act.getEndDate() != null){
|
|
if (act.getEndDate() != null){
|
|
todoTaskQuery.taskCreatedBefore(act.getEndDate());
|
|
todoTaskQuery.taskCreatedBefore(act.getEndDate());
|
|
}
|
|
}
|
|
|
|
+ if (!"".equals(xmName)&&xmName!=null) {
|
|
|
|
+ List<String> strings = constructionService.insIdByName(xmName);
|
|
|
|
+ if (strings!=null&&strings.size()>0) {
|
|
|
|
+ todoTaskQuery.processInstanceIdIn(strings);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
// =============== 等待签收的任务 ===============
|
|
// =============== 等待签收的任务 ===============
|
|
@@ -181,6 +187,13 @@ public class ActTaskService extends BaseService {
|
|
map.put("task.executionId",task.getExecutionId());
|
|
map.put("task.executionId",task.getExecutionId());
|
|
map.put("task.processDefinitionId", task.getProcessDefinitionId());
|
|
map.put("task.processDefinitionId", task.getProcessDefinitionId());
|
|
map.put("task.processInstanceId", task.getProcessInstanceId());
|
|
map.put("task.processInstanceId", task.getProcessInstanceId());
|
|
|
|
+ String s = constructionService.idProjectName(task.getProcessInstanceId());
|
|
|
|
+ if ("".equals(s) || s == null) {
|
|
|
|
+ String s1 = constructionService.idProjectName2(task.getProcessInstanceId());
|
|
|
|
+ map.put("task.projectName", s1);
|
|
|
|
+ } else {
|
|
|
|
+ map.put("task.projectName", s);
|
|
|
|
+ }
|
|
map.put("task.taskDefinitionKey", task.getTaskDefinitionKey());
|
|
map.put("task.taskDefinitionKey", task.getTaskDefinitionKey());
|
|
map.put("vars",task.getProcessVariables());
|
|
map.put("vars",task.getProcessVariables());
|
|
map.put("procDef.name", ProcessDefCache.get(task.getProcessDefinitionId()).getName());
|
|
map.put("procDef.name", ProcessDefCache.get(task.getProcessDefinitionId()).getName());
|
|
@@ -212,7 +225,118 @@ public class ActTaskService extends BaseService {
|
|
return page;
|
|
return page;
|
|
|
|
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 获取待办任务列表(旧)
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public Page<HashMap<String,String>> todoList(Page<HashMap<String,String>> page, Act act){
|
|
|
|
+ List<HashMap<String,String>> result = new ArrayList<HashMap<String,String>>();
|
|
|
|
+ String userId = UserUtils.getUser().getLoginName();//ObjectUtils.toString(UserUtils.getUser().getId());
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ // =============== 已经签收的任务 ===============
|
|
|
|
+ TaskQuery todoTaskQuery = taskService.createTaskQuery().taskAssignee(userId).active()
|
|
|
|
+ .includeProcessVariables().orderByTaskCreateTime().desc();
|
|
|
|
+
|
|
|
|
+ // 设置查询条件
|
|
|
|
+ if (StringUtils.isNotBlank(act.getProcDefKey())){
|
|
|
|
+ todoTaskQuery.processDefinitionKey(act.getProcDefKey());
|
|
|
|
+ }
|
|
|
|
+ if (act.getBeginDate() != null){
|
|
|
|
+ todoTaskQuery.taskCreatedAfter(act.getBeginDate());
|
|
|
|
+ }
|
|
|
|
+ if (act.getEndDate() != null){
|
|
|
|
+ todoTaskQuery.taskCreatedBefore(act.getEndDate());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ // =============== 等待签收的任务 ===============
|
|
|
|
+ TaskQuery toClaimQuery = taskService.createTaskQuery().taskCandidateUser(userId)
|
|
|
|
+ .includeProcessVariables().active().orderByTaskCreateTime().desc();
|
|
|
|
+
|
|
|
|
+ // 设置查询条件
|
|
|
|
+ if (StringUtils.isNotBlank(act.getProcDefKey())){
|
|
|
|
+ toClaimQuery.processDefinitionKey(act.getProcDefKey());
|
|
|
|
+ }
|
|
|
|
+ if (act.getBeginDate() != null){
|
|
|
|
+ toClaimQuery.taskCreatedAfter(act.getBeginDate());
|
|
|
|
+ }
|
|
|
|
+ if (act.getEndDate() != null){
|
|
|
|
+ toClaimQuery.taskCreatedBefore(act.getEndDate());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ long taskCount = todoTaskQuery.count();
|
|
|
|
+ long claimCount = toClaimQuery.count();
|
|
|
|
+ long total = taskCount + claimCount;
|
|
|
|
+ page.setCount(total);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ int start = page.getFirstResult();
|
|
|
|
+ int end = page.getFirstResult() + page.getMaxResults();
|
|
|
|
+ // 查询列表
|
|
|
|
+ List<Task> todoList = Lists.newArrayList();
|
|
|
|
+ // 查询列表
|
|
|
|
+ List<Task> toClaimList = Lists.newArrayList();
|
|
|
|
+ if(end == -1){//不分页
|
|
|
|
+ todoList = todoTaskQuery.list();
|
|
|
|
+ toClaimList = toClaimQuery.list();
|
|
|
|
+ }else{
|
|
|
|
+
|
|
|
|
+ if(end <= taskCount){
|
|
|
|
+ todoList = todoTaskQuery.listPage(start, page.getMaxResults());
|
|
|
|
+ }else if(start <taskCount){
|
|
|
|
+ todoList = todoTaskQuery.listPage(start, (int)taskCount - start);
|
|
|
|
+ toClaimList = toClaimQuery.listPage(0, end -(int)taskCount);
|
|
|
|
+ }else{
|
|
|
|
+ toClaimList= toClaimQuery.listPage(start-(int)taskCount, page.getMaxResults());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ for (Task task : todoList) {
|
|
|
|
+ HashMap map = new HashMap();
|
|
|
|
+ map.put("task.assignee",task.getAssignee());
|
|
|
|
+ map.put("task.id", task.getId());
|
|
|
|
+ map.put("task.createTime", task.getCreateTime());
|
|
|
|
+ map.put("task.name", task.getName());
|
|
|
|
+ map.put("task.executionId",task.getExecutionId());
|
|
|
|
+ map.put("task.processDefinitionId", task.getProcessDefinitionId());
|
|
|
|
+ map.put("task.processInstanceId", task.getProcessInstanceId());
|
|
|
|
+ map.put("task.taskDefinitionKey", task.getTaskDefinitionKey());
|
|
|
|
+ map.put("vars",task.getProcessVariables());
|
|
|
|
+ map.put("procDef.name", ProcessDefCache.get(task.getProcessDefinitionId()).getName());
|
|
|
|
+ map.put("procDef.version", ProcessDefCache.get(task.getProcessDefinitionId()).getVersion());
|
|
|
|
+ map.put("status","todo");
|
|
|
|
+ map.put("title",task.getProcessVariables().get("title"));
|
|
|
|
+ page.getList().add(map);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ for (Task task : toClaimList) {
|
|
|
|
+ HashMap map = new HashMap();
|
|
|
|
+ map.put("task.assignee",task.getAssignee());
|
|
|
|
+ map.put("task.id", task.getId());
|
|
|
|
+ map.put("task.name", task.getName());
|
|
|
|
+ map.put("task.createTime", task.getCreateTime());
|
|
|
|
+ map.put("task.executionId",task.getExecutionId());
|
|
|
|
+ map.put("task.processInstanceId", task.getProcessInstanceId());
|
|
|
|
+ map.put("task.processDefinitionId", task.getProcessDefinitionId());
|
|
|
|
+ map.put("task.taskDefinitionKey", task.getTaskDefinitionKey());
|
|
|
|
+ map.put("vars",task.getProcessVariables());
|
|
|
|
+ map.put("procDef.name", ProcessDefCache.get(task.getProcessDefinitionId()).getName());
|
|
|
|
+ map.put("procDef.version", ProcessDefCache.get(task.getProcessDefinitionId()).getVersion());
|
|
|
|
+ map.put("status", "claim");
|
|
|
|
+ map.put("title",task.getProcessVariables().get("title"));
|
|
|
|
+ page.getList().add(map);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return page;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 获取已办任务列表
|
|
* 获取已办任务列表
|
|
* @param page
|
|
* @param page
|
|
@@ -1448,8 +1572,9 @@ public class ActTaskService extends BaseService {
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
String flag = act.getFlag();
|
|
String flag = act.getFlag();
|
|
Project user = MyActiviUtils.findUser(act.getProcInsId());
|
|
Project user = MyActiviUtils.findUser(act.getProcInsId());
|
|
- //完成施工交底
|
|
|
|
|
|
+ //发给施工单位人员审核
|
|
if ("yes".equals(flag)) {
|
|
if ("yes".equals(flag)) {
|
|
|
|
+ vars.put("design", user.getConstructionUnitRole());
|
|
} else {
|
|
} else {
|
|
//驳回
|
|
//驳回
|
|
vars.put("design", user.getRunUnitRole());
|
|
vars.put("design", user.getRunUnitRole());
|
|
@@ -1464,6 +1589,31 @@ public class ActTaskService extends BaseService {
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 施工单位判断变更后材料
|
|
|
|
+ * @param act
|
|
|
|
+ */
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void conAfterChange(Act act) {
|
|
|
|
+ Map<String, Object> vars = Maps.newHashMap();
|
|
|
|
+ String flag = act.getFlag();
|
|
|
|
+ Project user = MyActiviUtils.findUser(act.getProcInsId());
|
|
|
|
+ //完成施工交底
|
|
|
|
+ if ("yes".equals(flag)) {
|
|
|
|
+ } else {
|
|
|
|
+ //驳回
|
|
|
|
+ vars.put("design", user.getProjectManageRole());
|
|
|
|
+ }
|
|
|
|
+ //根据登陆查询所属的角色
|
|
|
|
+ vars.put("pass", "yes".equals(flag)? true : false);
|
|
|
|
+ // 设置意见
|
|
|
|
+ act.preUpdate();
|
|
|
|
+ // 对不同环节的业务逻辑进行操作
|
|
|
|
+ String taskDefKey = act.getTaskDefKey();
|
|
|
|
+ // 提交流程任务
|
|
|
|
+ complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
/**
|
|
/**
|
|
* 经理保存审核意见
|
|
* 经理保存审核意见
|
|
@@ -2332,6 +2482,26 @@ public class ActTaskService extends BaseService {
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
|
|
+ * 施工单位物资专职审核
|
|
|
|
+ * @param act
|
|
|
|
+ */
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void fullExamine(Act act) {
|
|
|
|
+ String flag = act.getFlag();
|
|
|
|
+
|
|
|
|
+ // 设置意见
|
|
|
|
+ act.setComment(("yes".equals(flag)?"[同意] ":"[驳回] ")+act.getComment());
|
|
|
|
+ act.preUpdate();
|
|
|
|
+ // 对不同环节的业务逻辑进行操作
|
|
|
|
+ String taskDefKey = act.getTaskDefKey();
|
|
|
|
+ // 提交流程任务
|
|
|
|
+ Map<String, Object> vars = Maps.newHashMap();
|
|
|
|
+ vars.put("pass", "yes".equals(flag)? true : false);
|
|
|
|
+ vars.put("manager", "yes".equals(flag)? "项目经理A" : "施工单位领导A");
|
|
|
|
+ complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
* 项目中心领导审核领料单
|
|
* 项目中心领导审核领料单
|
|
* @param act
|
|
* @param act
|
|
*/
|
|
*/
|
|
@@ -2347,7 +2517,7 @@ public class ActTaskService extends BaseService {
|
|
// 提交流程任务
|
|
// 提交流程任务
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
vars.put("pass", "yes".equals(flag)? true : false);
|
|
vars.put("pass", "yes".equals(flag)? true : false);
|
|
- vars.put("manager", "yes".equals(flag)? "施工物资专职" : "施工项目经理A");
|
|
|
|
|
|
+ vars.put("manager", "yes".equals(flag)? "" : "沈忱");
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2367,7 +2537,7 @@ public class ActTaskService extends BaseService {
|
|
// 提交流程任务
|
|
// 提交流程任务
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
vars.put("pass", "yes".equals(flag)? true : false);
|
|
vars.put("pass", "yes".equals(flag)? true : false);
|
|
- vars.put("manager", "yes".equals(flag)? "施工物资专职" : "施工项目经理A");
|
|
|
|
|
|
+ vars.put("manager", "yes".equals(flag)? "沈忱" : "项目经理A");
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2387,7 +2557,7 @@ public class ActTaskService extends BaseService {
|
|
// 提交流程任务
|
|
// 提交流程任务
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
Map<String, Object> vars = Maps.newHashMap();
|
|
vars.put("pass", "yes".equals(flag)? true : false);
|
|
vars.put("pass", "yes".equals(flag)? true : false);
|
|
- vars.put("manager", "yes".equals(flag)? "施工物资专职" : "施工项目经理A");
|
|
|
|
|
|
+ vars.put("manager", "yes".equals(flag)? "夏卫进" : "项目经理A");
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
complete(act.getTaskId(), act.getProcInsId(), act.getComment(), vars);
|
|
}
|
|
}
|
|
|
|
|