修改:流程修改v2.0

This commit is contained in:
zjh 2025-12-25 10:14:53 +08:00
parent 57d173a71d
commit 7ece605c71
3 changed files with 14 additions and 10 deletions

View File

@ -13,7 +13,7 @@ import java.util.List;
@SQL(view = "getAllApproval", @SQL(view = "getAllApproval",
sql = "SELECT af.id AS \"flowId\", t.id AS \"templateId\", t.template_name AS \"templateName\", t.version AS \"version\", af.flow_status AS \"status\" , af.create_by AS \"createBy\", xu.username AS \"username\", af.created_time AS \"createdTime\", ac.assignees AS current_users FROM yfsjglpt_model_approval_flow af JOIN approval_config ac ON af.id = ac.approval_id AND af.current_node = ac.node_order JOIN yfsjglpt_model_template t ON af.template_id = t.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE t.template_name LIKE CONCAT('%', #templateName, '%') AND af.flow_status LIKE CONCAT('%', #status, '%') AND af.created_time LIKE CONCAT('%', #createdTime, '%') AND xu.username LIKE CONCAT('%', #username, '%') AND af.flow_type = 1 ORDER BY CASE af.flow_status WHEN 'COMPLETE' THEN 1 WHEN 'APPROVING' THEN 2 WHEN 'DRAFT' THEN 3 WHEN 'REJECTED' THEN 4 ELSE 5 END ASC"), sql = "SELECT af.id AS \"flowId\", t.id AS \"templateId\", t.template_name AS \"templateName\", t.version AS \"version\", af.flow_status AS \"status\" , af.create_by AS \"createBy\", xu.username AS \"username\", af.created_time AS \"createdTime\", ac.assignees AS current_users FROM yfsjglpt_model_approval_flow af JOIN approval_config ac ON af.id = ac.approval_id AND af.current_node = ac.node_order JOIN yfsjglpt_model_template t ON af.template_id = t.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE t.template_name LIKE CONCAT('%', #templateName, '%') AND af.flow_status LIKE CONCAT('%', #status, '%') AND af.created_time LIKE CONCAT('%', #createdTime, '%') AND xu.username LIKE CONCAT('%', #username, '%') AND af.flow_type = 1 ORDER BY CASE af.flow_status WHEN 'COMPLETE' THEN 1 WHEN 'APPROVING' THEN 2 WHEN 'DRAFT' THEN 3 WHEN 'REJECTED' THEN 4 ELSE 5 END ASC"),
@SQL(view = "getApprovalByUserIdAndIds", @SQL(view = "getApprovalByUserIdAndIds",
sql = "SELECT af.id AS \"flowId\", t.id AS \"templateId\", t.template_name AS \"templateName\", t.version AS \"version\", af.flow_status AS \"status\" , af.create_by AS \"createBy\", af.created_time AS \"createdTime\" , CASE WHEN current_node = 'PROOFREAD' THEN proofread_users WHEN current_node = 'REVIEW' THEN review_users WHEN current_node = 'COUNTERSIGN' THEN countersign_users WHEN current_node = 'APPROVE' THEN approve_users END AS current_users FROM yfsjglpt_model_approval_flow af JOIN yfsjglpt_model_template t ON af.template_id = t.id WHERE t.template_name like CONCAT('%',#templateName, '%') and af.flow_status like CONCAT('%',#status, '%') and af.flow_type = 1 and af.id NOT IN (#ids) AND af.create_by = #createBy"), sql = "SELECT af.id AS \"flowId\", t.id AS \"templateId\", t.template_name AS \"templateName\", t.version AS \"version\", af.flow_status AS \"status\" , af.create_by AS \"createBy\", af.created_time AS \"createdTime\" , CASE WHEN current_node = 'PROOFREAD' THEN proofread_users WHEN current_node = 'REVIEW' THEN review_users WHEN current_node = 'COUNTERSIGN' THEN countersign_users WHEN current_node = 'APPROVE' THEN approve_users END AS current_users FROM yfsjglpt_model_approval_flow af JOIN yfsjglpt_model_template t ON af.template_id = t.id WHERE t.template_name like CONCAT('%',#templateName, '%') and af.flow_status like CONCAT('%',#status, '%') and af.flow_type = 1 and af.id NOT IN (#ids) AND af.create_by = #createBy"),
@SQL(view = "getTodoAndTemplate", @SQL(view = "getTodoAndTemplate",
sql = "SELECT af.id AS \"flowId\", t.id AS \"templateId\", t.template_name AS \"templateName\", t.version AS \"version\", af.flow_status AS \"status\" , af.create_by AS \"createBy\" , xu.username AS \"username\", af.created_time AS \"createdTime\" , CASE WHEN current_node = 'PROOFREAD' THEN proofread_users WHEN current_node = 'REVIEW' THEN review_users WHEN current_node = 'COUNTERSIGN' THEN countersign_users WHEN current_node = 'APPROVE' THEN approve_users END AS current_users FROM yfsjglpt_model_approval_flow af JOIN yfsjglpt_model_template t ON af.template_id = t.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE t.template_name LIKE CONCAT('%', #templateName, '%') AND af.flow_status LIKE CONCAT('%', #status, '%') AND af.created_time LIKE CONCAT('%', #createdTime, '%') AND xu.username LIKE CONCAT('%', #username, '%') AND af.flow_type = 1 AND (af.id IN (#ids) OR af.create_by = #createBy) ORDER BY CASE af.flow_status WHEN 'COMPLETE' THEN 1 WHEN 'APPROVING' THEN 2 WHEN 'DRAFT' THEN 3 WHEN 'REJECTED' THEN 4 ELSE 5 END ASC") sql = "SELECT af.id AS \"flowId\", t.id AS \"templateId\", t.template_name AS \"templateName\", t.version AS \"version\", af.flow_status AS \"status\" , af.create_by AS \"createBy\" , xu.username AS \"username\", af.created_time AS \"createdTime\" , CASE WHEN current_node = 'PROOFREAD' THEN proofread_users WHEN current_node = 'REVIEW' THEN review_users WHEN current_node = 'COUNTERSIGN' THEN countersign_users WHEN current_node = 'APPROVE' THEN approve_users END AS current_users FROM yfsjglpt_model_approval_flow af JOIN yfsjglpt_model_template t ON af.template_id = t.id LEFT JOIN xdap_users xu ON xu.id = af.create_by WHERE t.template_name LIKE CONCAT('%', #templateName, '%') AND af.flow_status LIKE CONCAT('%', #status, '%') AND af.created_time LIKE CONCAT('%', #createdTime, '%') AND xu.username LIKE CONCAT('%', #username, '%') AND af.flow_type = 1 AND (af.id IN (#ids) OR af.create_by = #createBy) ORDER BY CASE af.flow_status WHEN 'COMPLETE' THEN 1 WHEN 'APPROVING' THEN 2 WHEN 'DRAFT' THEN 3 WHEN 'REJECTED' THEN 4 ELSE 5 END ASC")
}) })

View File

@ -360,7 +360,7 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
// 待办环节修改 // 待办环节修改
bd.getBusinessDatabase() bd.getBusinessDatabase()
.eq("document_no", flow.getId()) .eq("document_no", flow.getId())
.update("node", "已完成") .update("current_node", "已完成")
.doUpdate(TodoTaskPojo.class); .doUpdate(TodoTaskPojo.class);
} else { } else {
flow.setCurrentNode(1); flow.setCurrentNode(1);
@ -406,7 +406,9 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
list.add(todoTask); list.add(todoTask);
} }
} }
bd.getBusinessDatabase().doBatchInsert(list); if (!list.isEmpty()) {
bd.getBusinessDatabase().doBatchInsert(list);
}
} }
private void cancelProcess(ApprovalFlow flow, String status, String userId) { private void cancelProcess(ApprovalFlow flow, String status, String userId) {
@ -427,7 +429,7 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
bd.getBusinessDatabase() bd.getBusinessDatabase()
.eq("document_no", flow.getId()) .eq("document_no", flow.getId())
.update("node", "已拒绝") .update("current_node", "已拒绝")
.doUpdate(TodoTaskPojo.class); .doUpdate(TodoTaskPojo.class);
// 清除所有待办 // 清除所有待办
clearAllTodo(flow, userId); clearAllTodo(flow, userId);

View File

@ -299,7 +299,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
bd.getBusinessDatabase() bd.getBusinessDatabase()
.eq("document_no", flow.getId()) .eq("document_no", flow.getId())
.update("node", "已拒绝") .update("current_node", "已拒绝")
.doUpdate(TodoTaskPojo.class); .doUpdate(TodoTaskPojo.class);
// 清除所有待办 // 清除所有待办
clearAllTodo(flow); clearAllTodo(flow);
@ -352,7 +352,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
// 待办环节修改 // 待办环节修改
bd.getBusinessDatabase() bd.getBusinessDatabase()
.eq("document_no", flow.getId()) .eq("document_no", flow.getId())
.update("node", "已完成") .update("current_node", "已完成")
.doUpdate(TodoTaskPojo.class); .doUpdate(TodoTaskPojo.class);
// 更新机型版本 // 更新机型版本
// dataEntryEngineModelService.updateModelForNewVersion(); // dataEntryEngineModelService.updateModelForNewVersion();
@ -393,7 +393,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
.eq("owner_id", person).doQueryFirst(TodoTaskPojo.class); .eq("owner_id", person).doQueryFirst(TodoTaskPojo.class);
if (todoTaskPojo != null) { if (todoTaskPojo != null) {
todoTaskPojo.setCurrentNode(node.getNodeName()); todoTaskPojo.setCurrentNode(node.getNodeName());
todoTaskPojo.setCurrentProcessor(JSON.toJSONString(node.getAssignees())); todoTaskPojo.setCurrentProcessor(node.getAssignees());
bd.getBusinessDatabase().doUpdate(todoTaskPojo); bd.getBusinessDatabase().doUpdate(todoTaskPojo);
} else { } else {
TodoTaskPojo todoTask = new TodoTaskPojo(); TodoTaskPojo todoTask = new TodoTaskPojo();
@ -410,11 +410,13 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
todoTask.setStatusCode(flow.getFlowStatus()); todoTask.setStatusCode(flow.getFlowStatus());
todoTask.setVersionNumber(template.getVersion()); todoTask.setVersionNumber(template.getVersion());
todoTask.setOwnerId(person); todoTask.setOwnerId(person);
todoTask.setCurrentProcessor(JSON.toJSONString(node.getAssignees())); todoTask.setCurrentProcessor(node.getAssignees());
list.add(todoTask); list.add(todoTask);
} }
} }
bd.getBusinessDatabase().doBatchInsert(list); if (!list.isEmpty()) {
bd.getBusinessDatabase().doBatchInsert(list);
}
} }
@Override @Override
@ -562,7 +564,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
} }
ApprovalConfigPojo currentNode = bd.getBusinessDatabase() ApprovalConfigPojo currentNode = bd.getBusinessDatabase()
.eq("approval_id", request.getFlowId()) .eq("approval_id", request.getFlowId())
.eq("current_node", Integer.valueOf(flow.getCurrentNode())) .eq("current_node", flow.getCurrentNode())
.doQueryFirst(ApprovalConfigPojo.class); .doQueryFirst(ApprovalConfigPojo.class);
if ("RETURN".equals(request.getResult())) { if ("RETURN".equals(request.getResult())) {
ApprovalRecord record = new ApprovalRecord(); ApprovalRecord record = new ApprovalRecord();