|
|
|
@ -497,6 +497,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
|
|
|
|
|
} else {
|
|
|
|
|
//判断节点上的描述字段,是否伟finale_judgment,如果是,记录到终审表中,如果终审表已经存在,不再重复记录
|
|
|
|
|
if (StringUtils.isNotBlank(taskData.getDescription()) && taskData.getDescription().equals(SystemConstantsOa.OA_TASK_COMPLETE_FINALE_FORM)) {
|
|
|
|
|
childPicture.setIsFinal(1);
|
|
|
|
|
User user = userService.findByLoginname(formData.getAssignee());
|
|
|
|
|
userFinalService.save(user.getId().toString(), formId);
|
|
|
|
|
}
|
|
|
|
@ -542,6 +543,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
|
|
|
|
|
executions.forEach(execution -> executionIds.add(execution.getId()));
|
|
|
|
|
OcrTaskchildPicture taskchildPicture = ocrTaskchildPictureService.getById(Long.parseLong(formId));
|
|
|
|
|
taskchildPicture.setFinishtime(System.currentTimeMillis());
|
|
|
|
|
taskchildPicture.setIsFinal(1);
|
|
|
|
|
ocrTaskchildPictureService.updateById(taskchildPicture);
|
|
|
|
|
OcrPicture picture = ocrPictureService.getById(taskchildPicture.getPictureid());
|
|
|
|
|
ocrTaskchildPictureService.sendFlowTaskResult(taskchildPicture, picture, approve);
|
|
|
|
@ -979,6 +981,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
|
|
|
|
|
ParamterPage paramterPage = new ParamterPage();
|
|
|
|
|
paramterPage.setStart((pageUtils.getCurrPage() - 1) * pageUtils.getPageSize());
|
|
|
|
|
paramterPage.setPagesize(pageUtils.getPageSize());
|
|
|
|
|
Page<OcrTaskchildPicture> page = new Page<>();
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(pageUtils.getSortname())) {
|
|
|
|
|
paramterPage.setSortname(pageUtils.getSortname());
|
|
|
|
@ -992,97 +995,96 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
|
|
|
|
|
paramterPage.setSortorder("DESC");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Long count = ocrTaskchildPictureService.listFinalCount(query);
|
|
|
|
|
|
|
|
|
|
query.put("page", paramterPage);
|
|
|
|
|
Long count = ocrTaskchildPictureService.listFinalCount(query);
|
|
|
|
|
List<OcrTaskchildPicture> list = ocrTaskchildPictureService.listFinal(query);
|
|
|
|
|
|
|
|
|
|
for (OcrTaskchildPicture taskchildPicture : list) {
|
|
|
|
|
//查询对应的流程分类
|
|
|
|
|
Category category = categoryService.selectDtoById(taskchildPicture.getCategoryid());
|
|
|
|
|
taskchildPicture.setCategoryDto(category);
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(taskchildPicture.getProcessdefinitionid())) {
|
|
|
|
|
|
|
|
|
|
List<Task> taskList = this.nowRunTask(taskchildPicture.getProcessinstanceid(), taskchildPicture.getProcessdefinitionid());
|
|
|
|
|
if (null != taskList && !taskList.isEmpty()) {
|
|
|
|
|
taskchildPicture.setTaskId(taskList.get(0).getId());
|
|
|
|
|
|
|
|
|
|
Task tasknow = taskService.createTaskQuery().taskId(taskchildPicture.getTaskId()).singleResult();
|
|
|
|
|
BpmnModel bpmnModel = repositoryService.getBpmnModel(tasknow.getProcessDefinitionId());
|
|
|
|
|
// 获取节点定义id
|
|
|
|
|
String taskDefinitionKey = tasknow.getTaskDefinitionKey();
|
|
|
|
|
// 根据节点定义id获取节点元素
|
|
|
|
|
FlowElement flowElement = bpmnModel.getFlowElement(taskDefinitionKey);
|
|
|
|
|
if (flowElement instanceof UserTask) {
|
|
|
|
|
UserTask userTask = (UserTask) flowElement;
|
|
|
|
|
|
|
|
|
|
taskchildPicture.setDocumentation(userTask.getDocumentation());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//查询历史
|
|
|
|
|
List<HistoricTaskInstanceDto> historicTaskInstanceDtos = new ArrayList<>();
|
|
|
|
|
// 查询当前任务的流转信息
|
|
|
|
|
List<HistoricTaskInstance> taskHiInstances = historyService.createHistoricTaskInstanceQuery()
|
|
|
|
|
.processInstanceId(taskchildPicture.getProcessinstanceid())
|
|
|
|
|
.includeProcessVariables()
|
|
|
|
|
.orderByHistoricTaskInstanceStartTime()
|
|
|
|
|
.asc()
|
|
|
|
|
.list();
|
|
|
|
|
for (HistoricTaskInstance taskHiInstance : taskHiInstances) {
|
|
|
|
|
HistoricTaskInstanceDto dto = new HistoricTaskInstanceDto();
|
|
|
|
|
dto.setTaskId(taskHiInstance.getId());
|
|
|
|
|
dto.setTaskName(taskHiInstance.getName());
|
|
|
|
|
dto.setFinishTime(taskHiInstance.getEndTime());
|
|
|
|
|
if (taskHiInstance.getDurationInMillis() != null) {
|
|
|
|
|
dto.setDuration(taskHiInstance.getDurationInMillis() / 1000 + "秒");
|
|
|
|
|
}
|
|
|
|
|
dto.setTaskDefKey(taskHiInstance.getTaskDefinitionKey());
|
|
|
|
|
|
|
|
|
|
//Map<String,Object> variables = taskHiInstance.getTaskLocalVariables();
|
|
|
|
|
|
|
|
|
|
Map<String, Object> variables = taskHiInstance.getProcessVariables();
|
|
|
|
|
|
|
|
|
|
if (null != variables && null != variables.get("approvd")) {
|
|
|
|
|
dto.setState(variables.get("approvd").toString());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(taskHiInstance.getAssignee())) {
|
|
|
|
|
if (SystemConstantsOa.OA_TASK_SKIP_ASSIGINE.equals(taskHiInstance.getAssignee())) {
|
|
|
|
|
dto.setAssigneeName(taskHiInstance.getAssignee());
|
|
|
|
|
} else {
|
|
|
|
|
User user1 = userService.findByLoginname(taskHiInstance.getAssignee());
|
|
|
|
|
|
|
|
|
|
dto.setAssigneeName(user1.getUsername());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
BpmnModel bpmnModel = repositoryService.getBpmnModel(taskchildPicture.getProcessdefinitionid());
|
|
|
|
|
|
|
|
|
|
// for (OcrTaskchildPicture taskchildPicture : list) {
|
|
|
|
|
// //查询对应的流程分类
|
|
|
|
|
// Category category = categoryService.selectDtoById(taskchildPicture.getCategoryid());
|
|
|
|
|
// taskchildPicture.setCategoryDto(category);
|
|
|
|
|
//
|
|
|
|
|
// if (StringUtils.isNotBlank(taskchildPicture.getProcessdefinitionid())) {
|
|
|
|
|
//
|
|
|
|
|
// List<Task> taskList = this.nowRunTask(taskchildPicture.getProcessinstanceid(), taskchildPicture.getProcessdefinitionid());
|
|
|
|
|
// if (null != taskList && !taskList.isEmpty()) {
|
|
|
|
|
// taskchildPicture.setTaskId(taskList.get(0).getId());
|
|
|
|
|
//
|
|
|
|
|
// Task tasknow = taskService.createTaskQuery().taskId(taskchildPicture.getTaskId()).singleResult();
|
|
|
|
|
// BpmnModel bpmnModel = repositoryService.getBpmnModel(tasknow.getProcessDefinitionId());
|
|
|
|
|
// // 获取节点定义id
|
|
|
|
|
// String taskDefinitionKey = tasknow.getTaskDefinitionKey();
|
|
|
|
|
// // 根据节点定义id获取节点元素
|
|
|
|
|
FlowElement flowElement = bpmnModel.getFlowElement(taskHiInstance.getTaskDefinitionKey());
|
|
|
|
|
if (flowElement instanceof UserTask) {
|
|
|
|
|
UserTask userTask = (UserTask) flowElement;
|
|
|
|
|
|
|
|
|
|
taskchildPicture.setDocumentation(userTask.getDocumentation());
|
|
|
|
|
}
|
|
|
|
|
// 还需要根据 HistoricTaskInstance 找到对应的 审批意见
|
|
|
|
|
List<Comment> processInstanceComments = taskService.getProcessInstanceComments(taskchildPicture.getProcessinstanceid());
|
|
|
|
|
for (Comment comment : processInstanceComments) {
|
|
|
|
|
|
|
|
|
|
if (comment.getTaskId().equals(taskHiInstance.getId())) {
|
|
|
|
|
// 审批意见
|
|
|
|
|
String fullMessage = comment.getFullMessage();
|
|
|
|
|
dto.setComment(fullMessage);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
historicTaskInstanceDtos.add(dto);
|
|
|
|
|
}
|
|
|
|
|
taskchildPicture.setTransferRecords(historicTaskInstanceDtos);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// FlowElement flowElement = bpmnModel.getFlowElement(taskDefinitionKey);
|
|
|
|
|
// if (flowElement instanceof UserTask) {
|
|
|
|
|
// UserTask userTask = (UserTask) flowElement;
|
|
|
|
|
//
|
|
|
|
|
// taskchildPicture.setDocumentation(userTask.getDocumentation());
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// //查询历史
|
|
|
|
|
// List<HistoricTaskInstanceDto> historicTaskInstanceDtos = new ArrayList<>();
|
|
|
|
|
// // 查询当前任务的流转信息
|
|
|
|
|
// List<HistoricTaskInstance> taskHiInstances = historyService.createHistoricTaskInstanceQuery()
|
|
|
|
|
// .processInstanceId(taskchildPicture.getProcessinstanceid())
|
|
|
|
|
// .includeProcessVariables()
|
|
|
|
|
// .orderByHistoricTaskInstanceStartTime()
|
|
|
|
|
// .asc()
|
|
|
|
|
// .list();
|
|
|
|
|
// for (HistoricTaskInstance taskHiInstance : taskHiInstances) {
|
|
|
|
|
// HistoricTaskInstanceDto dto = new HistoricTaskInstanceDto();
|
|
|
|
|
// dto.setTaskId(taskHiInstance.getId());
|
|
|
|
|
// dto.setTaskName(taskHiInstance.getName());
|
|
|
|
|
// dto.setFinishTime(taskHiInstance.getEndTime());
|
|
|
|
|
// if (taskHiInstance.getDurationInMillis() != null) {
|
|
|
|
|
// dto.setDuration(taskHiInstance.getDurationInMillis() / 1000 + "秒");
|
|
|
|
|
// }
|
|
|
|
|
// dto.setTaskDefKey(taskHiInstance.getTaskDefinitionKey());
|
|
|
|
|
//
|
|
|
|
|
// //Map<String,Object> variables = taskHiInstance.getTaskLocalVariables();
|
|
|
|
|
//
|
|
|
|
|
// Map<String, Object> variables = taskHiInstance.getProcessVariables();
|
|
|
|
|
//
|
|
|
|
|
// if (null != variables && null != variables.get("approvd")) {
|
|
|
|
|
// dto.setState(variables.get("approvd").toString());
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// if (StringUtils.isNotBlank(taskHiInstance.getAssignee())) {
|
|
|
|
|
// if (SystemConstantsOa.OA_TASK_SKIP_ASSIGINE.equals(taskHiInstance.getAssignee())) {
|
|
|
|
|
// dto.setAssigneeName(taskHiInstance.getAssignee());
|
|
|
|
|
// } else {
|
|
|
|
|
// User user1 = userService.findByLoginname(taskHiInstance.getAssignee());
|
|
|
|
|
//
|
|
|
|
|
// dto.setAssigneeName(user1.getUsername());
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// BpmnModel bpmnModel = repositoryService.getBpmnModel(taskchildPicture.getProcessdefinitionid());
|
|
|
|
|
//
|
|
|
|
|
//// // 根据节点定义id获取节点元素
|
|
|
|
|
// FlowElement flowElement = bpmnModel.getFlowElement(taskHiInstance.getTaskDefinitionKey());
|
|
|
|
|
// if (flowElement instanceof UserTask) {
|
|
|
|
|
// UserTask userTask = (UserTask) flowElement;
|
|
|
|
|
//
|
|
|
|
|
// taskchildPicture.setDocumentation(userTask.getDocumentation());
|
|
|
|
|
// }
|
|
|
|
|
// // 还需要根据 HistoricTaskInstance 找到对应的 审批意见
|
|
|
|
|
// List<Comment> processInstanceComments = taskService.getProcessInstanceComments(taskchildPicture.getProcessinstanceid());
|
|
|
|
|
// for (Comment comment : processInstanceComments) {
|
|
|
|
|
//
|
|
|
|
|
// if (comment.getTaskId().equals(taskHiInstance.getId())) {
|
|
|
|
|
// // 审批意见
|
|
|
|
|
// String fullMessage = comment.getFullMessage();
|
|
|
|
|
// dto.setComment(fullMessage);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// historicTaskInstanceDtos.add(dto);
|
|
|
|
|
// }
|
|
|
|
|
// taskchildPicture.setTransferRecords(historicTaskInstanceDtos);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
pageUtils.setTotalCount(count.intValue());
|
|
|
|
|
pageUtils.setList(list);
|
|
|
|
|