|
|
@ -432,6 +432,7 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask |
|
|
|
}*/ |
|
|
|
taskQuery.active() |
|
|
|
.includeProcessVariables() |
|
|
|
.includeTaskLocalVariables() |
|
|
|
.or() |
|
|
|
//.taskCandidateGroupIn(roleSidList)
|
|
|
|
.taskAssigneeLike("%" + userSid + "%") |
|
|
@ -456,7 +457,8 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask |
|
|
|
FlowTaskDto flowTask = new FlowTaskDto(); |
|
|
|
Map<String, Object> processVariables = task.getProcessVariables(); |
|
|
|
flowTask.setProcessVariables(processVariables); |
|
|
|
|
|
|
|
Map<String, Object> taskLocalVariables= task.getTaskLocalVariables(); |
|
|
|
System.out.println(JSON.toJSONString(taskLocalVariables)); |
|
|
|
// 当前流程信息
|
|
|
|
flowTask.setTaskId(task.getId()); |
|
|
|
flowTask.setTaskDefKey(task.getTaskDefinitionKey()); |
|
|
@ -697,6 +699,127 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask |
|
|
|
// 设置手机端参数
|
|
|
|
// Map<String, Map<String, Object>> map = getAppOrPcVariables(flowTask);
|
|
|
|
// flowTask.setAppVariables(map.get("appVariables"));
|
|
|
|
// flowTask.setPcVariables(map.get("pcVariables"));
|
|
|
|
|
|
|
|
hisTaskList.add(flowTask); |
|
|
|
} |
|
|
|
page.setTotal(count); |
|
|
|
page.setRecords(hisTaskList); |
|
|
|
ResultBean<Page<FlowTaskDto>> rb = new ResultBean<Page<FlowTaskDto>>(); |
|
|
|
return rb.success().setData(page); |
|
|
|
} |
|
|
|
/** |
|
|
|
* 已办任务列表 |
|
|
|
* |
|
|
|
* @param pageNum 当前页码 |
|
|
|
* @param pageSize 每页条数 |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public ResultBean<Page<FlowTaskDto>> businessFinishedListForApp(String userSid, List<BusinessTaskParam> params, Integer pageNum, Integer pageSize) { |
|
|
|
|
|
|
|
Page<FlowTaskDto> page = new Page<>(); |
|
|
|
Map<String, Object> paraMap = new HashMap<>(); |
|
|
|
List<Map<String, Object>> ll = new ArrayList<>(); |
|
|
|
for (BusinessTaskParam btq : params) { |
|
|
|
paraMap.put(btq.getField(), btq.getValue()); |
|
|
|
|
|
|
|
Map<String, Object> mapss = new HashMap<>(); |
|
|
|
if (btq.getSqlOperationSymbol().equals(SQLOperationSymbol.EQUAL)) { |
|
|
|
mapss.put("symbol", "="); |
|
|
|
mapss.put("value", btq.getValue()); |
|
|
|
mapss.put("filed", btq.getField()); |
|
|
|
} |
|
|
|
if (btq.getSqlOperationSymbol().equals(SQLOperationSymbol.LIKE)) { |
|
|
|
mapss.put("symbol", "like"); |
|
|
|
mapss.put("value", "%" + btq.getValue() + "%"); |
|
|
|
mapss.put("filed", btq.getField()); |
|
|
|
} |
|
|
|
/* if(btq.getSqlOperationSymbol().equals(SQLOperationSymbol.NONE)){ |
|
|
|
if("processDefinitionId".equals(btq.getField())){ |
|
|
|
taskInstanceQuery.processDefinitionId(btq.getValue()); |
|
|
|
} |
|
|
|
}*/ |
|
|
|
ll.add(mapss); |
|
|
|
} |
|
|
|
|
|
|
|
paraMap.put("userSid", userSid); |
|
|
|
paraMap.put("list", ll); |
|
|
|
paraMap.put("page", (pageNum - 1) * pageSize); |
|
|
|
paraMap.put("size", pageSize); |
|
|
|
// List<Map<String, Object>> maps = baseMapper.finishedList(userSid, ll ,(pageNum-1)*pageSize,pageSize);
|
|
|
|
List<Map<String, Object>> maps = baseMapper.finishedList1(paraMap); |
|
|
|
int count = baseMapper.finishedListCount(paraMap); |
|
|
|
|
|
|
|
List<FlowTaskDto> hisTaskList = new ArrayList(); |
|
|
|
for (Map<String, Object> histTask : maps) { |
|
|
|
FlowTaskDto flowTask = new FlowTaskDto(); |
|
|
|
// 当前流程信息
|
|
|
|
flowTask.setTaskId(histTask.get("ID_").toString()); |
|
|
|
// 审批人员信息
|
|
|
|
Timestamp start_time_ = (Timestamp) histTask.get("START_TIME_"); |
|
|
|
long time = start_time_.getTime(); |
|
|
|
Date date = new Date(time); |
|
|
|
flowTask.setCreateTime(date); |
|
|
|
flowTask.setAssigneeSid(histTask.get("ASSIGNEE_") == null ? "" : histTask.get("ASSIGNEE_").toString()); |
|
|
|
if (histTask.get("ASSIGNEE_") != null && StringUtils.isNotBlank(histTask.get("ASSIGNEE_").toString())) { |
|
|
|
ResultBean<List<SysUserVo>> assignee_ = sysUserFeign.fetchBySids(histTask.get("ASSIGNEE_").toString()); |
|
|
|
StringBuilder userName=new StringBuilder(); |
|
|
|
List<SysUserVo> data1 = assignee_.getData(); |
|
|
|
for( SysUserVo data:data1){ |
|
|
|
userName.append(data.getName()).append(","); |
|
|
|
} |
|
|
|
String userName_str=""; |
|
|
|
userName_str=userName.substring(0,userName.length()-1); |
|
|
|
flowTask.setAssigneeName(userName_str); |
|
|
|
} |
|
|
|
|
|
|
|
flowTask.setHasRevokeButton(userSid.equals(flowTask.getAssigneeSid()) ? true : false); |
|
|
|
flowTask.setProcDefId(histTask.get("PROC_DEF_ID_") == null ? "" : histTask.get("PROC_DEF_ID_").toString()); |
|
|
|
flowTask.setTaskDefKey(histTask.get("taskDefKey") == null ? "" : histTask.get("taskDefKey").toString()); |
|
|
|
flowTask.setTaskName(histTask.get("NAME_") == null ? "" : histTask.get("NAME_").toString()); |
|
|
|
// 判断是否办结
|
|
|
|
/*Object end_act_id_ = histTask.get("END_ACT_ID_"); |
|
|
|
if (end_act_id_ != null) { |
|
|
|
flowTask.setTaskName(ProcessStateEnum.FINISHED.getStateName()); |
|
|
|
}*/ |
|
|
|
|
|
|
|
// 流程定义信息
|
|
|
|
// ProcessDefinition pd = repositoryService.createProcessDefinitionQuery()
|
|
|
|
// .processDefinitionId(histTask.get("PROC_DEF_ID_").toString())
|
|
|
|
// .singleResult();
|
|
|
|
flowTask.setDeployId(histTask.get("DEPLOYMENT_ID_") == null ? "" : histTask.get("DEPLOYMENT_ID_").toString()); |
|
|
|
flowTask.setProcDefName(histTask.get("PROC_DEF_NAME_") == null ? "" : histTask.get("PROC_DEF_NAME_").toString()); |
|
|
|
flowTask.setProcDefVersion(histTask.get("PROC_DEF_VERSION_") == null ? 0 : Integer.parseInt(histTask.get("PROC_DEF_VERSION_").toString())); |
|
|
|
flowTask.setProcInsId(histTask.get("PROC_INST_ID_").toString()); |
|
|
|
flowTask.setHisProcInsId(histTask.get("PROC_INST_ID_").toString()); |
|
|
|
|
|
|
|
// 流程发起人信息
|
|
|
|
// HistoricProcessInstance hi = historyService.createHistoricProcessInstanceQuery()
|
|
|
|
// .processInstanceId(histTask.get("PROC_INST_ID_").toString())
|
|
|
|
// .singleResult();
|
|
|
|
ResultBean<SysUserVo> sysUserVoResultBean = sysUserFeign.fetchBySid(histTask.get("START_USER_ID_").toString()); |
|
|
|
flowTask.setStartUserSid(sysUserVoResultBean.getData().getSid()); |
|
|
|
flowTask.setStartUserName(sysUserVoResultBean.getData().getName()); |
|
|
|
flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName()); |
|
|
|
HistoricTaskInstance historicTaskInstance = historyService.createHistoricTaskInstanceQuery().includeProcessVariables().taskId(flowTask.getTaskId()).singleResult(); |
|
|
|
flowTask.setProcessVariables(historicTaskInstance.getProcessVariables()); |
|
|
|
Object end_act_id = histTask.get("end_act_id_"); |
|
|
|
if (end_act_id != null) { |
|
|
|
flowTask.setEndActId((String) end_act_id); |
|
|
|
} |
|
|
|
Object end_time = histTask.get("END_TIME_"); |
|
|
|
if (end_time != null) { |
|
|
|
Timestamp end_time_t = (Timestamp) end_time; |
|
|
|
long end_time_t_l = end_time_t.getTime(); |
|
|
|
flowTask.setEndTime(new Date(end_time_t_l)); |
|
|
|
} |
|
|
|
flowTask.setProcessVariables(historicTaskInstance.getProcessVariables()); |
|
|
|
|
|
|
|
ResultBean<List<SysProUrlVo>> listResultBean = sysProUrlService.selectUrlByKey(flowTask.getProcDefId(), flowTask.getTaskDefKey(), "2", "2"); |
|
|
|
flowTask.setSysProUrlVo(listResultBean.getData().get(0)); |
|
|
|
// 设置手机端参数
|
|
|
|
// Map<String, Map<String, Object>> map = getAppOrPcVariables(flowTask);
|
|
|
|
// flowTask.setAppVariables(map.get("appVariables"));
|
|
|
|
// flowTask.setPcVariables(map.get("pcVariables"));
|
|
|
|
|
|
|
|
hisTaskList.add(flowTask); |
|
|
@ -1515,6 +1638,12 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask |
|
|
|
List<BusinessTaskParam> fields = taskQueryPagerQuery.getParams().getFields(); |
|
|
|
return businessFinishedList(userSid, fields, current, size); |
|
|
|
} |
|
|
|
public ResultBean businessDoneListNewForApp(String userSid, PagerQuery<BusinessTaskQuery> taskQueryPagerQuery) { |
|
|
|
int size = Integer.valueOf(taskQueryPagerQuery.getSize() + ""); |
|
|
|
int current = Integer.valueOf(taskQueryPagerQuery.getCurrent() + ""); |
|
|
|
List<BusinessTaskParam> fields = taskQueryPagerQuery.getParams().getFields(); |
|
|
|
return businessFinishedListForApp(userSid, fields, current, size); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean stopProcessNew(String userSid, FlowTaskVo flowTaskVo) { |
|
|
|
stopProcess(userSid, flowTaskVo); |
|
|
|