|
|
@@ -1904,8 +1904,7 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
xjrWorkflowOperateRecord.setNodeMultiType(WorkflowMultiInstanceType.NONE.getCode());
|
|
|
//时间设值必须写在complete上面,防止用户任务节点监听时的流程信息,在次任务前面。
|
|
|
xjrWorkflowOperateRecord.setRecordTime(LocalDateTime.now());
|
|
|
- //当前任务的名称
|
|
|
- String oldTaskNameCustom = task.getName();
|
|
|
+ xjrWorkflowOperateRecord.setCirculateMessage(circulateMessage);
|
|
|
xjrWorkflowOperateRecord.setCirculateMessage(circulateMessage);
|
|
|
|
|
|
taskService.complete(task.getId());
|
|
|
@@ -1921,7 +1920,7 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
//新增工作流程信息数据
|
|
|
addWorkflowRecord(userTaskConfig, nextTaskNameList, user, record, oldTaskName, buttonConfig.getButtonName(), dto.getApprovedContent(), task, resultName);
|
|
|
|
|
|
- addCustomWorkflowRecord(userTaskConfig, nextTaskNameList, user, xjrWorkflowOperateRecord, oldTaskNameCustom, buttonConfig.getButtonName(), dto.getApprovedContent(), task, resultName);
|
|
|
+ addCustomWorkflowRecord(userTaskConfig, nextTaskNameList, user, xjrWorkflowOperateRecord, oldTaskName, buttonConfig.getButtonName(), dto.getApprovedContent(), task, resultName);
|
|
|
|
|
|
}
|
|
|
|
|
|
@@ -1970,7 +1969,7 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
xjrWorkflowOperateRecord.setUsageScenario(1);
|
|
|
|
|
|
// record.setMessage("【审批人:" + user.getName() + "】 将 【任务:" + task.getName() + "】 驳回到 【任务:" + rejectUserTaskConfig.getName() + "】");
|
|
|
- String message = "审批人:" + user.getName() + ", 审批结果:驳回, 审批内容:驳回";
|
|
|
+ String message = "审批人:" + user.getName() + ", 审批结果:驳回, 审批内容:" + dto.getApprovedContent();
|
|
|
xjrWorkflowOperateRecord.setOperateInfo(message);
|
|
|
xjrWorkflowOperateRecordMapper.insert(xjrWorkflowOperateRecord);
|
|
|
});
|
|
|
@@ -4391,8 +4390,6 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
List<Long> allUserIds = new ArrayList<>();//所有自动同意审批的用户id
|
|
|
//新增流程发起流程记录
|
|
|
WorkflowRecord record = new WorkflowRecord();
|
|
|
- //自定义流程发起记录
|
|
|
- XjrWorkflowOperateRecord xjrWorkflowOperateRecord = new XjrWorkflowOperateRecord();
|
|
|
|
|
|
//候选审批人包含流程任务发起人
|
|
|
if (autoAgreeConfig.contains(WorkflowAutoAgreeType.APPROVED_INCLUDE_INITIATOR.getCode())) {
|
|
|
@@ -4462,9 +4459,6 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
//自动同意之后完成本次任务
|
|
|
record.setRecordTime(LocalDateTime.now());
|
|
|
|
|
|
- xjrWorkflowOperateRecord.setRecordTime(LocalDateTime.now());
|
|
|
-
|
|
|
-
|
|
|
taskService.complete(task.getId());
|
|
|
List<Task> list = taskService.createTaskQuery().processInstanceId(task.getProcessInstanceId()).list();
|
|
|
String allOpinions = StringPool.EMPTY;
|
|
|
@@ -4478,19 +4472,15 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
String allNextTaskName = StrUtil.join(StringPool.SPACE, list.parallelStream().map(t -> "【" + t.getName() + "】").collect(Collectors.toList()));
|
|
|
|
|
|
String message = "【" + approveName + "】【自动同意】 审批, 审批意见为:“【" + allOpinions + "】”,由【" + task.getName() + "】流转到 " + allNextTaskName;
|
|
|
- String operateInfo = "审批人:" + approveName + ", 审批结果:" + allOpinions + ", 审批内容:自动同意";
|
|
|
|
|
|
addProcessRecord(task, schemaId, message, record);
|
|
|
- addCustomProcessRecord(task, schemaId, operateInfo, xjrWorkflowOperateRecord);
|
|
|
|
|
|
// 如果还有用户任务 则递归调用
|
|
|
invokeAutoAgree(processInstanceId, schemaId, workflowSchemaConfig, list);
|
|
|
} else {
|
|
|
String message = "【" + approveName + "】【自动同意】 审批, 审批意见为:“【" + allOpinions + "】”,由【" + task.getName() + "】流转到 结束节点";
|
|
|
- String operateInfo = "审批人:" + approveName + ", 审批结果:" + allOpinions + ", 审批内容:自动同意";
|
|
|
|
|
|
addProcessRecord(task, schemaId, message, record);
|
|
|
- addCustomProcessRecord(task, schemaId, operateInfo, xjrWorkflowOperateRecord);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -4798,7 +4788,6 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
record.setProcessId(task.getProcessInstanceId());
|
|
|
record.setSchemaId(schemaId);
|
|
|
record.setNodeMultiType(WorkflowMultiInstanceType.NONE.getCode());
|
|
|
-
|
|
|
record.setMessage(message);
|
|
|
|
|
|
workflowRecordService.save(record);
|
|
|
@@ -5172,6 +5161,7 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
record.setOperateInfo(message);
|
|
|
}
|
|
|
}
|
|
|
+ record.setUsageScenario(1);
|
|
|
xjrWorkflowOperateRecordMapper.insert(record);
|
|
|
}
|
|
|
|
|
|
@@ -5310,6 +5300,20 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
// record.setMessage("【审批人:" + user.getName() + "】 将 【任务:" + task.getName() + "】 驳回到 【任务:" + rejectUserTaskConfig.getName() + "】");
|
|
|
record.setMessage("审批信息:由于审批超时,【系统】【自动驳回】审批,审批意见为:“系统自动驳回审批”,由【" + task.getName() + "】 流转到【" + rejectUserTaskConfig.getName() + "】");
|
|
|
workflowRecordMapper.insert(record);
|
|
|
+
|
|
|
+ //新增流程发起流程记录
|
|
|
+ XjrWorkflowOperateRecord operateRecord = new XjrWorkflowOperateRecord();
|
|
|
+ operateRecord.setNodeId(task.getId());
|
|
|
+ operateRecord.setNodeName(task.getName());
|
|
|
+ operateRecord.setNodeType(WorkflowConstant.USER_TASK_TYPE_NAME);
|
|
|
+ operateRecord.setProcessId(task.getProcessInstanceId());
|
|
|
+ operateRecord.setSchemaId(schemaId);
|
|
|
+ operateRecord.setNodeMultiType(WorkflowMultiInstanceType.NONE.getCode());
|
|
|
+ operateRecord.setRecordTime(LocalDateTime.now().minusSeconds(+1));//时间设置提前1秒钟,好排序
|
|
|
+ operateRecord.setUsageScenario(1);
|
|
|
+
|
|
|
+ operateRecord.setOperateInfo("审批人:" + task.getName() + ", 审批结果:驳回, 审批内容:由于审批超时,系统自动驳回审批");
|
|
|
+ xjrWorkflowOperateRecordMapper.insert(operateRecord);
|
|
|
});
|
|
|
} else if (handleType == 2) {//同意
|
|
|
//新增流程发起流程记录
|
|
|
@@ -5322,6 +5326,18 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
record.setNodeMultiType(WorkflowMultiInstanceType.NONE.getCode());
|
|
|
//时间设值必须写在complete上面,防止用户任务节点监听时的流程信息,在次任务前面。
|
|
|
record.setRecordTime(LocalDateTime.now());
|
|
|
+
|
|
|
+ //新增流程发起流程记录
|
|
|
+ XjrWorkflowOperateRecord operateRecord = new XjrWorkflowOperateRecord();
|
|
|
+ operateRecord.setNodeId(task.getId());
|
|
|
+ operateRecord.setNodeName(task.getName());
|
|
|
+ operateRecord.setNodeType(WorkflowConstant.USER_TASK_TYPE_NAME);
|
|
|
+ operateRecord.setProcessId(task.getProcessInstanceId());
|
|
|
+ operateRecord.setSchemaId(schemaId);
|
|
|
+ operateRecord.setNodeMultiType(WorkflowMultiInstanceType.NONE.getCode());
|
|
|
+ //时间设值必须写在complete上面,防止用户任务节点监听时的流程信息,在次任务前面。
|
|
|
+ operateRecord.setRecordTime(LocalDateTime.now());
|
|
|
+
|
|
|
//当前任务的名称
|
|
|
String oldTaskName = task.getName();
|
|
|
|
|
|
@@ -5339,11 +5355,15 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
if (nextTaskNameList.size() == 0) {
|
|
|
String message = "审批信息:由于审批超时,【系统】【自动同意】审批,审批意见为:“系统自动同意审批”,由【" + oldTaskName + "】 流转到【" + "结束节点" + "】";
|
|
|
record.setMessage(message);
|
|
|
+
|
|
|
+ operateRecord.setOperateInfo("审批人:" +oldTaskName + ", 审批结果:同意, 审批内容:由于审批超时,系统自动同意审批");
|
|
|
}
|
|
|
//单流向
|
|
|
if (nextTaskNameList.size() == 1) {
|
|
|
String message = "审批信息:由于审批超时,【系统】【自动同意】审批,审批意见为:“系统自动同意审批”,由【" + oldTaskName + "】 流转到【" + nextTaskNameList.get(0) + "】";
|
|
|
record.setMessage(message);
|
|
|
+
|
|
|
+ operateRecord.setOperateInfo("审批人:" +oldTaskName + ", 审批结果:同意, 审批内容:由于审批超时,系统自动同意审批");
|
|
|
}//多流向
|
|
|
if (nextTaskNameList.size() > 1) {
|
|
|
String message = "审批信息:由于审批超时,【系统】【自动同意】审批,审批意见为:“系统自动同意审批”,由【" + oldTaskName + "】 流转到【" + nextTaskNameList.get(0) + "】";
|
|
|
@@ -5351,9 +5371,12 @@ public class WorkflowExecuteServiceImpl implements IWorkflowExecuteService {
|
|
|
message = message + "、【" + nextTaskNameList.get(i) + "】";
|
|
|
}
|
|
|
record.setMessage(message);
|
|
|
+
|
|
|
+ operateRecord.setOperateInfo("审批人:" +oldTaskName + ", 审批结果:同意, 审批内容:由于审批超时,系统自动同意审批");
|
|
|
}
|
|
|
|
|
|
workflowRecordMapper.insert(record);
|
|
|
+ xjrWorkflowOperateRecordMapper.insert(operateRecord);
|
|
|
}
|
|
|
return true;
|
|
|
}
|