修改:流程异常回滚处理和主题名称返回
This commit is contained in:
parent
9c532ff57c
commit
689e7742a0
@ -16,6 +16,7 @@ import java.sql.Timestamp;
|
|||||||
public class ApprovalFlow extends MpaasBasePojo {
|
public class ApprovalFlow extends MpaasBasePojo {
|
||||||
@RowID(sequence = "approval_flow_s", type = RowIDType.UUID)
|
@RowID(sequence = "approval_flow_s", type = RowIDType.UUID)
|
||||||
private String id;
|
private String id;
|
||||||
|
private String processTitle;
|
||||||
private String templateId;
|
private String templateId;
|
||||||
private String currentNode; // 节点:PROOFREAD, REVIEW, COUNTERSIGN, APPROVE
|
private String currentNode; // 节点:PROOFREAD, REVIEW, COUNTERSIGN, APPROVE
|
||||||
private String flowStatus; //DRAFT(草稿)、APPROVING(审批中)、COMPLETE(已完成)、RETURNED(已撤回)、REJECTED(已拒绝)
|
private String flowStatus; //DRAFT(草稿)、APPROVING(审批中)、COMPLETE(已完成)、RETURNED(已撤回)、REJECTED(已拒绝)
|
||||||
|
|||||||
@ -14,4 +14,8 @@ public class ApprovalFlowView {
|
|||||||
private List<ApprovalNodeView> approveNodes;
|
private List<ApprovalNodeView> approveNodes;
|
||||||
|
|
||||||
private String flowStatus;
|
private String flowStatus;
|
||||||
|
|
||||||
|
private String progressTitle;
|
||||||
|
private String ContentName;
|
||||||
|
private Integer templateVersion;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -248,7 +248,7 @@ public class BenchmarkingReportServiceImpl implements BenchmarkingReportService
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void handleReportApproval(HandleApprovalRequest request) {
|
public void handleReportApproval(HandleApprovalRequest request) {
|
||||||
ApprovalFlow flow = bd.getBusinessDatabase()
|
ApprovalFlow flow = bd.getBusinessDatabase()
|
||||||
.eq("id", request.getFlowId())
|
.eq("id", request.getFlowId())
|
||||||
|
|||||||
@ -72,7 +72,7 @@ public class ParameterServiceImpl implements ParameterService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public TemplateInfoView maintenanceParameters(UpdateParameterForm form) {
|
public TemplateInfoView maintenanceParameters(UpdateParameterForm form) {
|
||||||
// 公式格式检查
|
// 公式格式检查
|
||||||
for (ParameterForm parameter : form.getParameterForms()) {
|
for (ParameterForm parameter : form.getParameterForms()) {
|
||||||
|
|||||||
@ -50,7 +50,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
|||||||
private static final int FLOW_LOCK_EXPIRE_SECONDS = 15;
|
private static final int FLOW_LOCK_EXPIRE_SECONDS = 15;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public String startApproval(StartApprovalRequest request) {
|
public String startApproval(StartApprovalRequest request) {
|
||||||
// 验证模板存在
|
// 验证模板存在
|
||||||
Template template = bd.getBusinessDatabase()
|
Template template = bd.getBusinessDatabase()
|
||||||
@ -85,6 +85,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
|||||||
flow.setTemplateId(template.getId());
|
flow.setTemplateId(template.getId());
|
||||||
flow.setCurrentNode("PROOFREAD");
|
flow.setCurrentNode("PROOFREAD");
|
||||||
flow.setFlowStatus("APPROVING");
|
flow.setFlowStatus("APPROVING");
|
||||||
|
flow.setProcessTitle(request.getProcessTitle());
|
||||||
flow.setProofreadUsers(JSON.toJSONString(request.getProofreadUsers()));
|
flow.setProofreadUsers(JSON.toJSONString(request.getProofreadUsers()));
|
||||||
flow.setReviewUsers(JSON.toJSONString(request.getReviewUsers()));
|
flow.setReviewUsers(JSON.toJSONString(request.getReviewUsers()));
|
||||||
flow.setCountersignUsers(JSON.toJSONString(request.getCountersignUsers()));
|
flow.setCountersignUsers(JSON.toJSONString(request.getCountersignUsers()));
|
||||||
@ -159,7 +160,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void handleApproval(HandleApprovalRequest request) {
|
public void handleApproval(HandleApprovalRequest request) {
|
||||||
ApprovalFlow flow = bd.getBusinessDatabase()
|
ApprovalFlow flow = bd.getBusinessDatabase()
|
||||||
.eq("id", request.getFlowId())
|
.eq("id", request.getFlowId())
|
||||||
@ -206,7 +207,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void processApprovalLogic(ApprovalFlow flow, HandleApprovalRequest request, String currentNode) {
|
public void processApprovalLogic(ApprovalFlow flow, HandleApprovalRequest request, String currentNode) {
|
||||||
// 记录审批结果
|
// 记录审批结果
|
||||||
ApprovalRecord record = new ApprovalRecord();
|
ApprovalRecord record = new ApprovalRecord();
|
||||||
@ -295,6 +296,9 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
|||||||
if (flow == null) {
|
if (flow == null) {
|
||||||
return approvalFlowView;
|
return approvalFlowView;
|
||||||
}
|
}
|
||||||
|
Template template = bd.getBusinessDatabase()
|
||||||
|
.eq("id", flow.getTemplateId())
|
||||||
|
.doQueryFirst(Template.class);
|
||||||
approvalFlowView.setExplanation(flow.getExplanation());
|
approvalFlowView.setExplanation(flow.getExplanation());
|
||||||
approvalFlowView.setFlowStatus(flow.getFlowStatus());
|
approvalFlowView.setFlowStatus(flow.getFlowStatus());
|
||||||
if (!"APPROVING".equals(flow.getFlowStatus())) {
|
if (!"APPROVING".equals(flow.getFlowStatus())) {
|
||||||
@ -302,6 +306,9 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
|||||||
return approvalFlowView;
|
return approvalFlowView;
|
||||||
}
|
}
|
||||||
processApprovalNodes(approvalFlowView, flow);
|
processApprovalNodes(approvalFlowView, flow);
|
||||||
|
approvalFlowView.setProgressTitle(flow.getProcessTitle());
|
||||||
|
approvalFlowView.setContentName(template.getTemplateName());
|
||||||
|
approvalFlowView.setTemplateVersion(template.getVersion());
|
||||||
return approvalFlowView;
|
return approvalFlowView;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -469,7 +476,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 处理下一节点流转
|
// 处理下一节点流转
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void processNextNode(ApprovalFlow flow, String currentNode, String userId) {
|
public void processNextNode(ApprovalFlow flow, String currentNode, String userId) {
|
||||||
// 检查当前节点是否满足流转条件
|
// 检查当前节点是否满足流转条件
|
||||||
if (!checkNodeComplete(flow, currentNode)) {
|
if (!checkNodeComplete(flow, currentNode)) {
|
||||||
|
|||||||
@ -72,7 +72,7 @@ public class TemplateServiceImpl implements TemplateService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void updateTemplate(UpdateTemplateForm form) {
|
public void updateTemplate(UpdateTemplateForm form) {
|
||||||
Template template = bd.getBusinessDatabase()
|
Template template = bd.getBusinessDatabase()
|
||||||
.viewQueryMode(true)
|
.viewQueryMode(true)
|
||||||
@ -134,7 +134,7 @@ public class TemplateServiceImpl implements TemplateService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public MyResponse importTemplate(MultipartFile file, String templateRowId, String userId) {
|
public MyResponse importTemplate(MultipartFile file, String templateRowId, String userId) {
|
||||||
// 验证文件是否为工作表
|
// 验证文件是否为工作表
|
||||||
if (file == null || file.isEmpty()) {
|
if (file == null || file.isEmpty()) {
|
||||||
@ -225,7 +225,7 @@ public class TemplateServiceImpl implements TemplateService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = CommonException.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void updateTemplateStatus(String templateId, String status) {
|
public void updateTemplateStatus(String templateId, String status) {
|
||||||
if (Objects.equals(status, "COMPLETE")) {// 更新之前模板为历史
|
if (Objects.equals(status, "COMPLETE")) {// 更新之前模板为历史
|
||||||
Template template = bd.getBusinessDatabase().eq("id", templateId).doQueryFirst(Template.class);
|
Template template = bd.getBusinessDatabase().eq("id", templateId).doQueryFirst(Template.class);
|
||||||
|
|||||||
@ -1,22 +1,24 @@
|
|||||||
DROP TABLE IF EXISTS `yfsjglpt_model_approval_flow`;
|
DROP TABLE IF EXISTS `yfsjglpt_model_approval_flow`;
|
||||||
-- yc_datasource_0.approval_config definition
|
-- yc_datasource_0.approval_config definition
|
||||||
|
|
||||||
CREATE TABLE `approval_config` (
|
CREATE TABLE `approval_config`
|
||||||
`id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT 'ID',
|
(
|
||||||
`approval_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '流程ID',
|
`id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL COMMENT 'ID',
|
||||||
`node_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '环节',
|
`approval_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '流程ID',
|
||||||
`assignees` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin COMMENT '处理人列表',
|
`node_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '环节',
|
||||||
`node_order` int DEFAULT NULL COMMENT '环节顺序',
|
`assignees` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin COMMENT '处理人列表',
|
||||||
`created_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '创建人',
|
`node_order` int DEFAULT NULL COMMENT '环节顺序',
|
||||||
`creation_date` datetime DEFAULT NULL COMMENT '创建时间',
|
`created_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '创建人',
|
||||||
`last_updated_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '最后更新人',
|
`creation_date` datetime DEFAULT NULL COMMENT '创建时间',
|
||||||
`last_update_date` datetime DEFAULT NULL COMMENT '最后更新时间',
|
`last_updated_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '最后更新人',
|
||||||
PRIMARY KEY (`id`)
|
`last_update_date` datetime DEFAULT NULL COMMENT '最后更新时间',
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='流程配置表';
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='流程配置表';
|
||||||
|
|
||||||
CREATE TABLE `yfsjglpt_model_approval_flow`
|
CREATE TABLE `yfsjglpt_model_approval_flow`
|
||||||
(
|
(
|
||||||
`id` varchar(64) COLLATE utf8mb4_general_ci NOT NULL,
|
`id` varchar(64) COLLATE utf8mb4_general_ci NOT NULL,
|
||||||
|
`process_title` varchar(100) COLLATE utf8mb4_general_ci NOT NULL COMMENT '流程标题',
|
||||||
`template_id` varchar(64) COLLATE utf8mb4_general_ci NOT NULL COMMENT '关联模板ID',
|
`template_id` varchar(64) COLLATE utf8mb4_general_ci NOT NULL COMMENT '关联模板ID',
|
||||||
`current_node` varchar(20) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '当前节点(PROOFREAD, REVIEW, COUNTERSIGN, APPROVE)',
|
`current_node` varchar(20) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '当前节点(PROOFREAD, REVIEW, COUNTERSIGN, APPROVE)',
|
||||||
`flow_status` varchar(20) COLLATE utf8mb4_general_ci NOT NULL COMMENT '流程状态',
|
`flow_status` varchar(20) COLLATE utf8mb4_general_ci NOT NULL COMMENT '流程状态',
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user