From 9c9de32b419f6c0a61d82dbc415f282a97a5c872 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 4 Jul 2024 16:50:38 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20=E6=B3=95=E8=A7=84=E7=AC=A6=E5=90=88?= =?UTF-8?q?=E6=80=A7=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=87=86=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../activiti/enums/ProcessTypeEnum.java | 60 ++--- .../process/fb/dto/BasicProcessInfoDTO.java | 1 - .../process/fb/dto/BasicTaskInfoDTO.java | 1 - .../impl/ProcessHandleServiceImpl.java | 30 --- ...ocessStandardComplianceCheckConstants.java | 64 +++++ ...cessStandardComplianceCheckController.java | 99 +++++++ .../entity/ProcessDemo.java | 200 ++++++++++++++ .../ProcessStandardComplianceCheck.java | 106 ++++++++ .../ProcessStandardComplianceCheckDetail.java | 146 +++++++++++ .../entity/vo/ProcessSccVO.java | 8 + .../listener/ProcessSCCCreateListener.java | 18 ++ .../listener/ProcessSCCEndListener.java | 18 ++ .../mapper/ProcessDemoMapper.java | 11 + ...ssStandardComplianceCheckDetailMapper.java | 18 ++ .../ProcessStandardComplianceCheckMapper.java | 18 ++ ...essStandardComplianceCheckDetailMapper.xml | 46 ++++ .../ProcessStandardComplianceCheckMapper.xml | 35 +++ ...sStandardComplianceCheckDetailService.java | 13 + ...ProcessStandardComplianceCheckService.java | 20 ++ .../service/ProcessDemoService.java | 247 ++++++++++++++++++ ...ndardComplianceCheckDetailServiceImpl.java | 22 ++ ...essStandardComplianceCheckServiceImpl.java | 38 +++ .../vo/ProcessDemoVO.java | 24 ++ 23 files changed, 1180 insertions(+), 63 deletions(-) create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/common/ProcessStandardComplianceCheckConstants.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/controller/ProcessStandardComplianceCheckController.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessDemo.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheck.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/vo/ProcessSccVO.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCCreateListener.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCEndListener.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessDemoMapper.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckDetailMapper.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckMapper.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckDetailMapper.xml create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckMapper.xml create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckDetailService.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckService.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/ProcessDemoService.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckDetailServiceImpl.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java create mode 100644 laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/vo/ProcessDemoVO.java diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java b/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java index 72639d74..c07fe55b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/enums/ProcessTypeEnum.java @@ -10,44 +10,41 @@ import lombok.Getter; @Getter @AllArgsConstructor public enum ProcessTypeEnum { + DEMO("测试流程", 0, "com.jero.modules.activiti.process.demo.service.ProcessDemoService", "/workCenter/StandardEntryOrChangeProcess", "/workCenter/StandardEntryOrChangeProcess"), + FB_ENTRY_CHANGE("标准法规入库/变更流程", 1, "com.jero.modules.activiti.process.fb.service.impl.ProcessFbEntryChangeServiceImpl", "/workCenter/StandardEntryOrChangeProcess", "/workCenter/StandardEntryOrChangeProcess"), + FB_STANDARD_CONSULTATION("标准征求意见流程", 2, "com.jero.modules.activiti.process.fb.service.impl.ProcessFbStandardConsultationServiceImpl", "/workCenter/StandardConsultationProcess", "/workCenter/StandardConsultationProcess"), + PROJECT_ASSESS("项目合规评估流程", 3, "com.jero.modules.activiti.process.projectassess.service.ProcessProjectAssessService", "/workCenter/ProjectComplianceEvaluationProcess", "/workCenter/ProjectComplianceEvaluationProcess"), + STANDARD_COMPLIANCE_CHECK("法规符合性排查流程", 4, "com.jero.modules.activiti.process.standardComplianceCheck.service.ProcessStandardComplianceCheckService", "/workCenter/StandardComplianceCheckProcess", "/workCenter/StandardComplianceCheckProcess"), + PROJECT_STANDARD("法规合规评估流程", 5, "com.jero.modules.activiti.process.projectstandard.service.ProcessProjectStandardService", "/workCenter/StandardComplianceProcess", "/workCenter/StandardComplianceProcess"), + FB_STANDARD_PURCHASE("法规采购流程", 6, "com.jero.modules.activiti.process.fb.service.impl.ProcessFbStandardPurchaseServiceImpl", "/workCenter/StandardProcurementProcess", "/workCenter/StandardProcurementProcess"), + ES_INIT_CHANGE("企标立项/变更计划", 7, "com.jero.modules.activiti.process.esInitChange.service.impl.ProcessEsInitChangeServiceImpl", "/workCenter/enterpriseStandardInitChange/planApprovalChangeFlow", "/workCenter/enterpriseStandardInitChange"), + ES_ANNUAL_REPORT("年度制修订计划审批流程(各部门主动上报)", 8, "com.jero.modules.activiti.process.esAbolish.service.impl.ProcessEsAbolishServiceImpl", "/workCenter/annualRevisionPlanActivelyReport/revisionPlanActivelyReportFlow", "/workCenter/annualRevisionPlanActivelyReport"), + ES_ANNUAL_INIT("年度制修订计划审批流程(标准化发起)", 9, "com.jero.modules.activiti.process.esAnnualReport.service.impl.ProcessEsAnnualReportServiceImpl", "/workCenter/annualRevisionPlanStandardizationInit/revisionPlanStandardizationInitFlow", "/workCenter/annualRevisionPlanStandardizationInit"), + ES_REVISION("企标制修订流程(草案编写/征求意见/报批)", 10, "com.jero.modules.activiti.process.esRevision.service.impl.EsRevisionServiceImpl", "/workCenter/enterpriseStandardRevision/enterpriseStandardRevisionFlow", "/workCenter/enterpriseStandardRevision"), + ES_CHANGE("企标更改流程", 11, "com.jero.modules.activiti.process.esChange.service.impl.ProcessEsChangeServiceImpl", "/workCenter/enterpriseStandardChange/enterpriseStandardChangeFlow", "/workCenter/enterpriseStandardChange/enterpriseStandardChangeFlow"), + ES_RECHECK("企标复审流程", 12, "com.jero.modules.activiti.process.esRecheck.service.impl.ProcessEsRecheckServiceImpl", "/workCenter/enterpriseStandardRecheck/enterpriseStandardRecheckFlow", "/workCenter/enterpriseStandardRecheck"), + ES_ABOLISH("企标废止流程", 13, "com.jero.modules.activiti.process.esAbolish.service.impl.ProcessEsAbolishServiceImpl", "/workCenter/enterpriseStandardAnnul/enterpriseStandardAnnulFlow", "/workCenter/enterpriseStandardAnnul"), + ES_ARCHIVE("企标封存流程", 14, "com.jero.modules.activiti.process.esArchive.service.impl.ProcessEsArchiveServiceImpl", "/workCenter/enterpriseStandardSealSave/enterpriseStandardSealSaveFlow", "/workCenter/enterpriseStandardSealSave"), + ES_ENABLE("已封存企标启用流程", 15, "com.jero.modules.activiti.process.esEnable.service.impl.ProcessEsEnableServiceImpl", "/workCenter/enterpriseStandardStartUse/enterpriseStandardStartUseFlow", "/workCenter/enterpriseStandardStartUse"), + ES_INSPECT_PLAN("企标稽查计划", 16, "com.jero.modules.activiti.process.esinspectplan.service.impl.EsInspectPlanFlow", "/workCenter/EnterpriseStandardInspectionPlan", "/workCenter/EnterpriseStandardInspectionPlan"), + ES_INSPECT("企标稽查流程", 17, "com.jero.modules.activiti.process.esinspect.service.impl.EsInspectFlow", "/workCenter/EnterpriseStandardInspectionProcess", "/workCenter/EnterpriseStandardInspectionProcess"), + ES_INSPECT_DELAY_APPLY("稽查延期申请流程", 18, "com.jero.modules.activiti.process.esinspectdelayapply.service.impl.EsInspectDelayApplyFlow", "/workCenter/InspectionExtensionRequestProcess", "/workCenter/InspectionExtensionRequestProcess"), + ES_INSPECT_REPORT("企标稽查整改", 19, "com.jero.modules.activiti.process.esinspectrectify.service.impl.EsInspectRectifyFlow", "/workCenter/EnterpriseStandardInspectionRectification", "/workCenter/EnterpriseStandardInspectionRectification"), + PERMISSION_APPLY_PROCESS("权限申请流程", 20, "com.jero.modules.activiti.process.espermissionapply.service.impl.EsPermissionApplyFlow", "/workCenter/PermissionApplicationProcess", "/workCenter/PermissionApplicationProcess"), + STANDARD_DECLARE("标准宣贯流程", 21, "com.jero.modules.activiti.process.esdeclare.service.impl.EsDeclareFlow", "/workCenter/StandardPromotionProcess", "/noMobile"), + MEETING_MANAGE("会后管理流程", 22, "com.jero.modules.activiti.process.meetingmanage.service.impl.MeetingManageFlow", "/workCenter/PostMeetingManageProcess", "/noMobile"); - - DEMO("测试流程",0, "com.jero.modules.activiti.process.demo.service.ProcessDemoService","/workCenter/StandardEntryOrChangeProcess","/workCenter/StandardEntryOrChangeProcess"), -FB_ENTRY_CHANGE("标准法规入库/变更流程",1, "com.jero.modules.activiti.process.fb.service.impl.ProcessFbEntryChangeServiceImpl","/workCenter/StandardEntryOrChangeProcess","/workCenter/StandardEntryOrChangeProcess"), -FB_STANDARD_CONSULTATION("标准征求意见流程",2, "com.jero.modules.activiti.process.fb.service.impl.ProcessFbStandardConsultationServiceImpl","/workCenter/StandardConsultationProcess","/workCenter/StandardConsultationProcess"), -PROJECT_ASSESS("项目合规评估流程",3, "com.jero.modules.activiti.process.projectassess.service.ProcessProjectAssessService","/workCenter/ProjectComplianceEvaluationProcess","/workCenter/ProjectComplianceEvaluationProcess"), -PROJECT_NOT_MET("未符合项跟踪流程",4, "com.jero.modules.activiti.process.projectnotmet.service.ProcessProjectNotMetService","/workCenter/NoMatchTrackingProcess","/workCenter/NoMatchTrackingProcess"), -PROJECT_STANDARD("法规合规评估流程",5, "com.jero.modules.activiti.process.projectstandard.service.ProcessProjectStandardService","/workCenter/StandardComplianceProcess","/workCenter/StandardComplianceProcess"), -FB_STANDARD_PURCHASE("法规采购流程",6, "com.jero.modules.activiti.process.fb.service.impl.ProcessFbStandardPurchaseServiceImpl","/workCenter/StandardProcurementProcess","/workCenter/StandardProcurementProcess"), -ES_INIT_CHANGE("企标立项/变更计划",7, "com.jero.modules.activiti.process.esInitChange.service.impl.ProcessEsInitChangeServiceImpl","/workCenter/enterpriseStandardInitChange/planApprovalChangeFlow","/workCenter/enterpriseStandardInitChange"), -ES_ANNUAL_REPORT("年度制修订计划审批流程(各部门主动上报)",8, "com.jero.modules.activiti.process.esAbolish.service.impl.ProcessEsAbolishServiceImpl","/workCenter/annualRevisionPlanActivelyReport/revisionPlanActivelyReportFlow","/workCenter/annualRevisionPlanActivelyReport"), -ES_ANNUAL_INIT("年度制修订计划审批流程(标准化发起)",9, "com.jero.modules.activiti.process.esAnnualReport.service.impl.ProcessEsAnnualReportServiceImpl","/workCenter/annualRevisionPlanStandardizationInit/revisionPlanStandardizationInitFlow","/workCenter/annualRevisionPlanStandardizationInit"), -ES_REVISION("企标制修订流程(草案编写/征求意见/报批)", 10, "com.jero.modules.activiti.process.esRevision.service.impl.EsRevisionServiceImpl","/workCenter/enterpriseStandardRevision/enterpriseStandardRevisionFlow","/workCenter/enterpriseStandardRevision"), -ES_CHANGE("企标更改流程",11, "com.jero.modules.activiti.process.esChange.service.impl.ProcessEsChangeServiceImpl","/workCenter/enterpriseStandardChange/enterpriseStandardChangeFlow","/workCenter/enterpriseStandardChange/enterpriseStandardChangeFlow"), -ES_RECHECK("企标复审流程",12, "com.jero.modules.activiti.process.esRecheck.service.impl.ProcessEsRecheckServiceImpl","/workCenter/enterpriseStandardRecheck/enterpriseStandardRecheckFlow","/workCenter/enterpriseStandardRecheck"), -ES_ABOLISH("企标废止流程",13, "com.jero.modules.activiti.process.esAbolish.service.impl.ProcessEsAbolishServiceImpl","/workCenter/enterpriseStandardAnnul/enterpriseStandardAnnulFlow","/workCenter/enterpriseStandardAnnul"), -ES_ARCHIVE("企标封存流程",14, "com.jero.modules.activiti.process.esArchive.service.impl.ProcessEsArchiveServiceImpl","/workCenter/enterpriseStandardSealSave/enterpriseStandardSealSaveFlow","/workCenter/enterpriseStandardSealSave"), -ES_ENABLE("已封存企标启用流程",15, "com.jero.modules.activiti.process.esEnable.service.impl.ProcessEsEnableServiceImpl","/workCenter/enterpriseStandardStartUse/enterpriseStandardStartUseFlow","/workCenter/enterpriseStandardStartUse"), -ES_INSPECT_PLAN("企标稽查计划", 16, "com.jero.modules.activiti.process.esinspectplan.service.impl.EsInspectPlanFlow","/workCenter/EnterpriseStandardInspectionPlan","/workCenter/EnterpriseStandardInspectionPlan"), -ES_INSPECT("企标稽查流程", 17, "com.jero.modules.activiti.process.esinspect.service.impl.EsInspectFlow","/workCenter/EnterpriseStandardInspectionProcess","/workCenter/EnterpriseStandardInspectionProcess"), -ES_INSPECT_DELAY_APPLY("稽查延期申请流程", 18, "com.jero.modules.activiti.process.esinspectdelayapply.service.impl.EsInspectDelayApplyFlow","/workCenter/InspectionExtensionRequestProcess","/workCenter/InspectionExtensionRequestProcess"), -ES_INSPECT_REPORT("企标稽查整改", 19, "com.jero.modules.activiti.process.esinspectrectify.service.impl.EsInspectRectifyFlow","/workCenter/EnterpriseStandardInspectionRectification","/workCenter/EnterpriseStandardInspectionRectification"), -PERMISSION_APPLY_PROCESS("权限申请流程", 20, "com.jero.modules.activiti.process.espermissionapply.service.impl.EsPermissionApplyFlow","/workCenter/PermissionApplicationProcess","/workCenter/PermissionApplicationProcess"), -STANDARD_DECLARE("标准宣贯流程", 21, "com.jero.modules.activiti.process.esdeclare.service.impl.EsDeclareFlow","/workCenter/StandardPromotionProcess","/noMobile"), -MEETING_MANAGE("会后管理流程", 22, "com.jero.modules.activiti.process.meetingmanage.service.impl.MeetingManageFlow","/workCenter/PostMeetingManageProcess","/noMobile") - ; - - private String name; - private Integer value; - private String implClass; + private final String name; + private final Integer value; + private final String implClass; /** * PC端跳转链接 (统一待办集成使用) */ - private String fontReturnUrlPc; + private final String fontReturnUrlPc; /** * APP端跳转链接(统一待办集成使用) */ - private String fontReturnUrlApp; + private final String fontReturnUrlApp; public static String getNameByValue(Integer value) { for (ProcessTypeEnum enumObject : values()) { @@ -87,6 +84,7 @@ MEETING_MANAGE("会后管理流程", 22, "com.jero.modules.activiti.process.meet } return null; } + public static String getFontReturnUrlApp(Integer value) { for (ProcessTypeEnum enumObject : values()) { if (enumObject.getValue().equals(value)) { diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicProcessInfoDTO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicProcessInfoDTO.java index 8693006f..7fdf59b0 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicProcessInfoDTO.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicProcessInfoDTO.java @@ -24,7 +24,6 @@ public class BasicProcessInfoDTO { /**流程类型*/ @ApiModelProperty(value="流程类型") private Integer processType; - /**流程实例id*/ @ApiModelProperty(value = "流程实例id") private java.lang.String processInstanceId; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicTaskInfoDTO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicTaskInfoDTO.java index fdcb6044..db16baa1 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicTaskInfoDTO.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/dto/BasicTaskInfoDTO.java @@ -26,7 +26,6 @@ public class BasicTaskInfoDTO { /**流程审批信息-附件*/ @ApiModelProperty(value = "流程审批信息-附件") private java.lang.String handleFile; - /** * 审批意见(0同意,1不同意) */ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java index c4bc94ca..38f3f34d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessHandleServiceImpl.java @@ -103,36 +103,6 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { // 保存选人信息 processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, userInfoMap); - // 标准征求意见流程特殊处理 - String processDefinitionKey = processInstance.getProcessDefinitionKey(); - if (ProcessDefinitionKey.FB_STANDARD_CONSULTATION.equals(processDefinitionKey)){ - // 删除各部所主管级领导审批节点处理人 - ProcessNode processNode = processNodeService.getOne( - new LambdaQueryWrapper() - .eq(ProcessNode::getProcessDefinitionId, processDefinitionId) - .eq(ProcessNode::getXmlNodeId, ConsultationTaskKey.DEPART_LEADER_END_4)); - if (!Objects.isNull(processNode)){ - processNodeLinkService.remove( - new LambdaQueryWrapper() - .eq(ProcessNodeLink::getProcessDefinitionId, processDefinitionId) - .eq(ProcessNodeLink::getProcessInstanceId, processInstanceId) - .eq(ProcessNodeLink::getProcessNodeId, processNode.getId())); - } - - // 删除各部所主管级领导汇总节点处理人 - ProcessNode processNode2 = processNodeService.getOne( - new LambdaQueryWrapper() - .eq(ProcessNode::getProcessDefinitionId, processDefinitionId) - .eq(ProcessNode::getXmlNodeId, ConsultationTaskKey.DEPART_LEADER_COLLECT_3)); - if (!Objects.isNull(processNode2)){ - processNodeLinkService.remove( - new LambdaQueryWrapper() - .eq(ProcessNodeLink::getProcessDefinitionId, processDefinitionId) - .eq(ProcessNodeLink::getProcessInstanceId, processInstanceId) - .eq(ProcessNodeLink::getProcessNodeId, processNode2.getId())); - } - } - // 根据流程实例id和任务处理人查询任务 Task task = taskService.createTaskQuery() .processInstanceId(processInstanceId) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/common/ProcessStandardComplianceCheckConstants.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/common/ProcessStandardComplianceCheckConstants.java new file mode 100644 index 00000000..faaab08a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/common/ProcessStandardComplianceCheckConstants.java @@ -0,0 +1,64 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.common; + +/** + * @author liJiaRao + * @date 2024-06-17 15:28 + */ +public class ProcessStandardComplianceCheckConstants { + + /** 法规工程师 */ + public static final String STANDARD_ENGINEER = "standardEngineer"; + /** 各部门接口人 */ + public static final String DEPT_USER = "deptUser"; + /** 主排查人 */ + public static final String MAIN_CHECK_USER = "mainCheckUser"; + /** 会签人员列表 */ + public static final String COUNTERSIGN_USER_LIST = "countersignUserList"; + /** 设计工程师科室经理审核 */ + public static final String MANAGER = "manager"; + /** 高级经理/技术官 */ + public static final String SENIOR_MANAGER = "seniorManager"; + /** 未分配数量 */ + public static final String UNALLOCATED_QUANTITY = "unallocatedQuantity"; + + /** + * 法规工程师发起 + */ + public static final String STANDARD_ENGINEER_START = "autoTask_1"; + /** + * 各部门接口人分发 + */ + public static final String DEPT_USER_DISTRIBUTE = "autoTask_1"; + /** + * 主排查人分发 + */ + public static final String MAIN_CHECK_USER_DISTRIBUTE = "autoTask_1"; + /** + * 主排查人汇总 + */ + public static final String MAIN_CHECK_USER_COLLECT = "autoTask_1"; + /** + * 会签 + */ + public static final String COUNTERSIGN = "autoTask_1"; + /** + * 设计工程师科室经理审核 + */ + public static final String MANAGER_APPROVAL = "autoTask_1"; + /** + * 高级经理/技术官审核 + */ + public static final String SENIOR_MANAGER_APPROVAL = "autoTask_1"; + /** + * 设计工程师工程师评估 + */ + public static final String DESIGNER_ENGINEER_EVALUATION = "autoTask_1"; + /** + * 主排查人审核 + */ + public static final String MAIN_CHECK_USER_APPROVAL = "autoTask_1"; + /** 自动任务 */ + public static final String AUTO_TASK_1 = "autoTask_1"; + public static final String AUTO_TASK_2 = "autoTask_2"; + public static final String AUTO_TASK_3 = "autoTask_3"; +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/controller/ProcessStandardComplianceCheckController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/controller/ProcessStandardComplianceCheckController.java new file mode 100644 index 00000000..c262c12a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/controller/ProcessStandardComplianceCheckController.java @@ -0,0 +1,99 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.controller; + +import com.jero.common.api.vo.Result; +import com.jero.common.aspect.annotation.AutoLog; +import com.jero.common.aspect.annotation.Translation; +import com.jero.common.system.base.controller.JeroController; +import com.jero.modules.activiti.enums.ProcessTypeEnum; +import com.jero.modules.activiti.process.common.entity.ProcessDraft; +import com.jero.modules.activiti.process.common.entity.TransferVO; +import com.jero.modules.activiti.process.common.service.ActFlowCommonService; +import com.jero.modules.activiti.process.fb.service.IProcessHandleService; +import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; +import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheck; +import com.jero.modules.activiti.process.standardComplianceCheck.entity.vo.ProcessSccVO; +import com.jero.modules.activiti.process.standardComplianceCheck.service.IProcessStandardComplianceCheckService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.poi.ss.formula.functions.T; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +/** + * 流程-测试流程(process_demo)表控制层 + * + * @author xxxxx + */ +@Slf4j +@Api(tags = "法规符合性排查流程") +@RestController +@RequestMapping("process/standardComplianceCheck") +public class ProcessStandardComplianceCheckController extends JeroController { + + @Resource + private IProcessStandardComplianceCheckService sccService; + + @Resource + private IProcessHandleService processHandleService; + + @Resource + private ActFlowCommonService actFlowCommonService; + + @AutoLog(value = "法规符合性排查流程-发起流程") + @ApiOperation(value = "法规符合性排查流程-发起流程", notes = "法规符合性排查流程-发起流程") + @PostMapping(value = "/start") + public Result startProcess(@Validated @RequestBody ProcessInfoVO processInfoVO) { + sccService.startProcess(processInfoVO); + return Result.OK(); + } + + @AutoLog(value = "法规符合性排查流程-同意") + @ApiOperation(value = "法规符合性排查流程-同意", notes = "法规符合性排查流程-同意") + @PostMapping("/agree") + public Result agree(@Validated @RequestBody ProcessInfoVO processInfoVO) { + sccService.approveTask(processInfoVO, true); + return Result.OK(); + } + + @AutoLog(value = "法规符合性排查流程-驳回") + @ApiOperation(value = "法规符合性排查流程-驳回", notes = "法规符合性排查流程-驳回") + @PostMapping("/reject") + public Result reject(@Validated @RequestBody ProcessInfoVO processInfoVO) { + sccService.approveTask(processInfoVO, false); + return Result.OK(); + } + + /** + * 转办 + * + */ + @AutoLog(value = "法规符合性排查流程-转办") + @ApiOperation(value="法规符合性排查流程-转办", notes="法规符合性排查流程-转办") + @PostMapping(value = "/transfer") + public Result transfer(@RequestBody TransferVO transferVO) { + processHandleService.transfer(transferVO.getTaskId(), transferVO.getUserId()); + return Result.OK(); + } + + /** + * 保存到待办 + * @param taskId + */ + @AutoLog(value = "法规符合性排查流程-办理") + @ApiOperation(value="法规符合性排查流程-办理", notes="法规符合性排查流程-办理") + @GetMapping("/handle/{taskId}") + @Translation + public Result handle(@PathVariable("taskId") String taskId) { + ProcessDraft draft = actFlowCommonService.getExistDraftByTaskId(taskId, ProcessTypeEnum.STANDARD_COMPLIANCE_CHECK); + if (draft != null) { + return Result.OK(draft); + } + return Result.OK(sccService.getHandleData(taskId)); + } + + +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessDemo.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessDemo.java new file mode 100644 index 00000000..8e217a1b --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessDemo.java @@ -0,0 +1,200 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * + *@author liJiaRao + *@date 2024-06-17 14:32 + */ + +/** + * 流程-测试流程 + */ +@Data +@ApiModel(description = "流程-测试流程") +@TableName(value = "process_demo") +public class ProcessDemo { + /** + * 主键ID + */ + @TableField(value = "id") + @ApiModelProperty(value = "主键ID") + private String id; + + /** + * 创建人ID + */ + @TableField(value = "create_by") + @ApiModelProperty(value = "创建人ID") + private String createBy; + + /** + * 创建时间 + */ + @TableField(value = "create_time") + @ApiModelProperty(value = "创建时间") + private Date createTime; + + /** + * 修改人ID + */ + @TableField(value = "update_by") + @ApiModelProperty(value = "修改人ID") + private String updateBy; + + /** + * 修改时间 + */ + @TableField(value = "update_time") + @ApiModelProperty(value = "修改时间") + private Date updateTime; + + /** + * 部门code + */ + @TableField(value = "org_code") + @ApiModelProperty(value = "部门code") + private String orgCode; + + /** + * 删除状态(0-正常,1-删除) + */ + @TableField(value = "del_flag") + @ApiModelProperty(value = "删除状态(0-正常,1-删除)") + private Integer delFlag; + + /** + * 获取主键ID + * + * @return id - 主键ID + */ + public String getId() { + return id; + } + + /** + * 设置主键ID + * + * @param id 主键ID + */ + public void setId(String id) { + this.id = id; + } + + /** + * 获取创建人ID + * + * @return create_by - 创建人ID + */ + public String getCreateBy() { + return createBy; + } + + /** + * 设置创建人ID + * + * @param createBy 创建人ID + */ + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + /** + * 获取创建时间 + * + * @return create_time - 创建时间 + */ + public Date getCreateTime() { + return createTime; + } + + /** + * 设置创建时间 + * + * @param createTime 创建时间 + */ + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + /** + * 获取修改人ID + * + * @return update_by - 修改人ID + */ + public String getUpdateBy() { + return updateBy; + } + + /** + * 设置修改人ID + * + * @param updateBy 修改人ID + */ + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + /** + * 获取修改时间 + * + * @return update_time - 修改时间 + */ + public Date getUpdateTime() { + return updateTime; + } + + /** + * 设置修改时间 + * + * @param updateTime 修改时间 + */ + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + /** + * 获取部门code + * + * @return org_code - 部门code + */ + public String getOrgCode() { + return orgCode; + } + + /** + * 设置部门code + * + * @param orgCode 部门code + */ + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + /** + * 获取删除状态(0-正常,1-删除) + * + * @return del_flag - 删除状态(0-正常,1-删除) + */ + public Integer getDelFlag() { + return delFlag; + } + + /** + * 设置删除状态(0-正常,1-删除) + * + * @param delFlag 删除状态(0-正常,1-删除) + */ + public void setDelFlag(Integer delFlag) { + this.delFlag = delFlag; + } +} \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheck.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheck.java new file mode 100644 index 00000000..73556de9 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheck.java @@ -0,0 +1,106 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +/** + * + * @TableName process_standard_compliance_check + */ +@TableName(value ="process_standard_compliance_check") +@Data +public class ProcessStandardComplianceCheck implements Serializable { + /** + * 主键ID + */ + @TableId + private String id; + + /** + * 标准ID + */ + private String standardId; + + /** + * 标准编号 + */ + private String standardNumber; + + /** + * 标准名称 + */ + private String standardName; + + /** + * 标准状态(1-草案、2-征求意见稿、3-送审稿、4-报批稿、5-发布稿、5-修改单) + */ + private String standardState; + + /** + * 流程实例id + */ + private String processInstanceId; + + /** + * 创建人ID + */ + private String createBy; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 修改人ID + */ + private String updateBy; + + /** + * 修改时间 + */ + private Date updateTime; + + /** + * 部门code + */ + private String orgCode; + + /** + * 父级流程实例Id + */ + private String parentInstanceId; + + /** + * 新生产车实施日期 + */ + private Date newProductImplDate; + + /** + * 新认证车实施日期 + */ + private Date newAuthImplDate; + + /** + * 分解单来源 + */ + private String splitFileSource; + + /** + * 适用市场 + */ + private String applicableMarket; + + /** + * 是否与上一版相同 + */ + private String isSameLastVersion; + + @TableField(exist = false) + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java new file mode 100644 index 00000000..9d09f876 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java @@ -0,0 +1,146 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +/** + * + * @TableName process_standard_compliance_check_detail + */ +@TableName(value ="process_standard_compliance_check_detail") +@Data +public class ProcessStandardComplianceCheckDetail implements Serializable { + /** + * 主键ID + */ + @TableId + private String id; + + /** + * 创建人ID + */ + private String createBy; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 修改人ID + */ + private String updateBy; + + /** + * 修改时间 + */ + private Date updateTime; + + /** + * 部门code + */ + private String orgCode; + + /** + * 流程实例id + */ + private String processInstanceId; + + /** + * 条款号 + */ + private String termNumber; + + /** + * 条款内容 + */ + private String termContent; + + /** + * 车型 + */ + private String model; + + /** + * 车型状态 + */ + private String modelState; + + /** + * 合规评估结果 + */ + private String result; + + /** + * 问题描述 + */ + private String description; + + /** + * 佐证材料 + */ + private String material; + + /** + * 评估日期 + */ + private Date valuationTime; + + /** + * 整改方案 + */ + private String correctionSolution; + + /** + * 不满足要求的现状 + */ + private String unsatisfyRequire; + + /** + * 整改周期 + */ + private String correctionCycle; + + /** + * 整改费用 + */ + private String correctionCost; + + /** + * 与其他项目共用性 + */ + private String commonality; + + /** + * 共用后本项目所需费用 + */ + private String commonalityCost; + + /** + * 备注 + */ + private String remark; + + /** + * 责任部门 + */ + private String authDept; + + /** + * 主排查人 + */ + private String mainCheckUser; + + /** + * 设计工程师 + */ + private String designEngineer; + + @TableField(exist = false) + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/vo/ProcessSccVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/vo/ProcessSccVO.java new file mode 100644 index 00000000..29dcea03 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/vo/ProcessSccVO.java @@ -0,0 +1,8 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.entity.vo; + + +import lombok.Data; + +@Data +public class ProcessSccVO { +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCCreateListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCCreateListener.java new file mode 100644 index 00000000..328a29ba --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCCreateListener.java @@ -0,0 +1,18 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.listener; + +import com.jero.modules.activiti.process.demo.service.ProcessDemoService; +import com.jero.modules.activiti.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +/** + * @author liJiaRao + * @date 2023-06-18 15:43 + */ +public class ProcessSCCCreateListener implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + ProcessDemoService demoService = SpringContextUtil.getBean(ProcessDemoService.class); + demoService.createAutoTaskListener(delegateTask); + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCEndListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCEndListener.java new file mode 100644 index 00000000..41f301c9 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/listener/ProcessSCCEndListener.java @@ -0,0 +1,18 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.listener; + +import com.jero.modules.activiti.process.demo.service.ProcessDemoService; +import com.jero.modules.activiti.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +/** + * @author liJiaRao + * @date 2023-06-18 15:43 + */ +public class ProcessSCCEndListener implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + ProcessDemoService demoService = SpringContextUtil.getBean(ProcessDemoService.class); + demoService.createAutoTaskListener(delegateTask); + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessDemoMapper.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessDemoMapper.java new file mode 100644 index 00000000..1058662f --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessDemoMapper.java @@ -0,0 +1,11 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.activiti.process.demo.entity.ProcessDemo; + +/** + * @author liJiaRao + * @date 2024-06-17 14:32 + */ +public interface ProcessDemoMapper extends BaseMapper { +} \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckDetailMapper.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckDetailMapper.java new file mode 100644 index 00000000..1a6f6837 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckDetailMapper.java @@ -0,0 +1,18 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.mapper; + +import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author ThinkBook +* @description 针对表【process_standard_compliance_check_detail】的数据库操作Mapper +* @createDate 2024-07-04 10:23:54 +* @Entity com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail +*/ +public interface ProcessStandardComplianceCheckDetailMapper extends BaseMapper { + +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckMapper.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckMapper.java new file mode 100644 index 00000000..17aca7a4 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/ProcessStandardComplianceCheckMapper.java @@ -0,0 +1,18 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.mapper; + +import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheck; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author ThinkBook +* @description 针对表【process_standard_compliance_check】的数据库操作Mapper +* @createDate 2024-07-04 10:21:21 +* @Entity com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheck +*/ +public interface ProcessStandardComplianceCheckMapper extends BaseMapper { + +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckDetailMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckDetailMapper.xml new file mode 100644 index 00000000..a994551a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckDetailMapper.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,create_by,create_time, + update_by,update_time,org_code, + process_instance_id,term_number,term_content, + model,model_state,result, + description,material,valuation_time, + correction_solution,unsatisfy_require,correction_cycle, + correction_cost,commonality,commonality_cost, + remark,auth_dept,main_check_user, + design_engineer + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckMapper.xml new file mode 100644 index 00000000..135bf8e0 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/mapper/xml/ProcessStandardComplianceCheckMapper.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + id,standard_id,standard_number, + standard_name,standard_state,process_instance_id, + create_by,create_time,update_by, + update_time,org_code,parent_instance_id, + new_product_impl_date,new_auth_impl_date,split_file_source, + applicable_market,is_same_last_version + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckDetailService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckDetailService.java new file mode 100644 index 00000000..e45749fb --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckDetailService.java @@ -0,0 +1,13 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.service; + +import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author ThinkBook +* @description 针对表【process_standard_compliance_check_detail】的数据库操作Service +* @createDate 2024-07-04 10:23:54 +*/ +public interface IProcessStandardComplianceCheckDetailService extends IService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckService.java new file mode 100644 index 00000000..00830b68 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/IProcessStandardComplianceCheckService.java @@ -0,0 +1,20 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.service; + +import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; +import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheck; +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.activiti.process.standardComplianceCheck.entity.vo.ProcessSccVO; + +/** +* @author ThinkBook +* @description 针对表【process_standard_compliance_check】的数据库操作Service +* @createDate 2024-07-04 10:21:21 +*/ +public interface IProcessStandardComplianceCheckService extends IService { + + void startProcess(ProcessInfoVO processInfoVO); + + void approveTask(ProcessInfoVO processInfoVO, boolean b); + + ProcessInfoVO getHandleData(String taskId); +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/ProcessDemoService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/ProcessDemoService.java new file mode 100644 index 00000000..471d7466 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/ProcessDemoService.java @@ -0,0 +1,247 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.common.system.api.ISysBaseAPI; +import com.jero.modules.activiti.common.ActivitiCommon; +import com.jero.modules.activiti.entity.ProcessAll; +import com.jero.modules.activiti.entity.ProcessApprovalRecord; +import com.jero.modules.activiti.enums.ProcessTypeEnum; +import com.jero.modules.activiti.process.demo.common.ProcessDemoCommon; +import com.jero.modules.activiti.process.demo.entity.ProcessDemo; +import com.jero.modules.activiti.process.demo.mapper.ProcessDemoMapper; +import com.jero.modules.activiti.process.demo.vo.ProcessDemoVO; +import com.jero.modules.activiti.process.fb.common.ProcessDefinitionKey; +import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO; +import com.jero.modules.activiti.process.fb.dto.BasicTaskInfoDTO; +import com.jero.modules.activiti.process.fb.dto.ProcessDTO; +import com.jero.modules.activiti.process.fb.service.IProcessHandleService; +import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; +import com.jero.modules.activiti.service.ProcessAllService; +import com.jero.modules.laws.common.util.CurrentUserUtil; +import org.activiti.engine.RuntimeService; +import org.activiti.engine.TaskService; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.task.Task; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @author liJiaRao + * @date 2024-06-17 14:58 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class ProcessDemoService extends ServiceImpl { + @Resource + private ISysBaseAPI sysBaseAPI; + @Resource + private IProcessHandleService processHandleService; + @Resource + private ProcessAllService processAllService; + @Resource + private TaskService taskService; + @Resource + private RuntimeService runtimeService; + + public void startProcess(ProcessInfoVO processInfoVO) { + + ProcessDemoVO businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + ProcessDemo processDemo = new ProcessDemo(); + this.save(processDemo); + String assessmentId = processDemo.getId(); + processInfoVO.setBusinessId(assessmentId); + + BasicProcessInfoDTO basicProcessInfoDTO = processInfoVO.getBasicProcessInfoDTO(); + // 流程定义id + String definitionId = processHandleService.getDefinitionIdByKey(ProcessDefinitionKey.DEMO_MAIN); + basicProcessInfoDTO.setProcessDefinitionId(definitionId); + basicProcessInfoDTO.setProcessType(ProcessTypeEnum.DEMO.getValue()); // 流程类型 + Map userInfoMap = new HashMap<>(); + userInfoMap.put(ProcessDemoCommon.MAIN_INTERPRETER, CurrentUserUtil.getId()); + processInfoVO.setUserInfoMap(userInfoMap); + processHandleService.startProcess(processInfoVO); + + //start 先保存一份初始草稿 + //processInfoVO.setSaveSource(DraftCommon.INITIAL_SOURCE); + //processInfoVO.setBasicTaskInfoDTO(processInfoVO.getBasicTaskInfoDTO().setTaskId(null)); + //saveToDraft(processInfoVO); + //end 保存初始草稿结束 + } + + public void approveTask(ProcessInfoVO processInfoVO, boolean pass) { + BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO(); + String taskId = basicTaskInfoDTO.getTaskId(); + ProcessDTO processDTO = processHandleService.getProcessDTO(taskId); + String processInstanceId = processDTO.getProcessInstanceId(); + ProcessAll processAll = processAllService.getByProcessInstanceId(processInstanceId); + processInfoVO.setBusinessId(processAll.getProjectId()); + Task task = processDTO.getTask(); + String taskDefinitionKey = task.getTaskDefinitionKey(); + processHandleService.updateApprovalRecord(processInfoVO); + switch (taskDefinitionKey) { + //解读人填写解读信息 + case ProcessDemoCommon.JDRTXJDXX: + jdrtxjdxxApprove(processInfoVO, processDTO, pass); + break; + default: + } + } + + private void jdrtxjdxxApprove(ProcessInfoVO processInfoVO, ProcessDTO processDTO, boolean pass) { + ProcessDemoVO businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + String mainInterpreter = businessInfoDTO.getMainInterpreter(); + // 完成任务 + String taskId = processDTO.getTaskId(); + Map variables = new HashMap<>(); + variables.put(ActivitiCommon.PASS, pass); + variables.put(ProcessDemoCommon.MAIN_INTERPRETER, mainInterpreter); + taskService.complete(taskId, variables); + } + + public void submit(ProcessInfoVO processInfoVO) { + BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO(); + String taskId = basicTaskInfoDTO.getTaskId(); + ProcessDTO processDTO = processHandleService.getProcessDTO(taskId); + String processInstanceId = processDTO.getProcessInstanceId(); + ProcessAll processAll = processAllService.getByProcessInstanceId(processInstanceId); + processInfoVO.setBusinessId(processAll.getProjectId()); + Task task = processDTO.getTask(); + String taskDefinitionKey = task.getTaskDefinitionKey(); + processHandleService.updateApprovalRecord(processInfoVO); + switch (taskDefinitionKey) { + //初始节点 + case ProcessDemoCommon.INITIAL_NODE: + initialNodeSubmit(processInfoVO, processDTO); + break; + //主解读人分批下发 + case ProcessDemoCommon.BSZGJLDXF_1: + bszgjldxf1Submit(processInfoVO, processDTO); + break; + //主解读人重新分批下发 + case ProcessDemoCommon.BSZGJLDXF_2: + bszgjldxf2Submit(processInfoVO, processDTO); + break; + //主解读人审核 + case ProcessDemoCommon.ZJDRSH: + zjdrshSubmit(processInfoVO, processDTO); + break; + default: + } + } + + private void zjdrshSubmit(ProcessInfoVO processInfoVO, ProcessDTO processDTO) { + // 完成任务 + String taskId = processDTO.getTaskId(); + Map variables = new HashMap<>(); + taskService.complete(taskId, variables); + } + + private void initialNodeSubmit(ProcessInfoVO processInfoVO, ProcessDTO processDTO) { + ProcessDemoVO businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + String mainInterpreter = businessInfoDTO.getMainInterpreter(); + // 完成任务 + String taskId = processDTO.getTaskId(); + Map variables = new HashMap<>(); + variables.put(ProcessDemoCommon.MAIN_INTERPRETER, mainInterpreter); + taskService.complete(taskId, variables); + } + + /** + * 主解读人分批下发 + * @param processInfoVO + * @param processDTO + */ + private void bszgjldxf1Submit(ProcessInfoVO processInfoVO, ProcessDTO processDTO) { + String businessId = processInfoVO.getBusinessId(); + ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord(); + String originUserId = processApprovalRecord.getOriginUserId(); + String userId = CurrentUserUtil.getId(); + Task task = processDTO.getTask(); + ProcessDemoVO businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + String interpreters = businessInfoDTO.getInterpreters(); + String unallocatedQuantity = businessInfoDTO.getUnallocatedQuantity(); + // 完成任务 + String taskId = processDTO.getTaskId(); + Map variables = new HashMap<>(); + variables.put(ProcessDemoCommon.INTERPRETER, Arrays.asList(interpreters.split(","))); + variables.put(ProcessDemoCommon.UNALLOCATED_QUANTITY, unallocatedQuantity); + taskService.complete(taskId, variables); + } + /** + * 主解读人重新分批下发 + * @param processInfoVO + * @param processDTO + */ + private void bszgjldxf2Submit(ProcessInfoVO processInfoVO, ProcessDTO processDTO) { + String businessId = processInfoVO.getBusinessId(); + ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord(); + String originUserId = processApprovalRecord.getOriginUserId(); + String userId = CurrentUserUtil.getId(); + Task task = processDTO.getTask(); + ProcessDemoVO businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + String interpreters = businessInfoDTO.getInterpreters(); + String unallocatedQuantity = businessInfoDTO.getUnallocatedQuantity(); + // 完成任务 + String taskId = processDTO.getTaskId(); + Map variables = new HashMap<>(); + variables.put(ProcessDemoCommon.INTERPRETER, Arrays.asList(interpreters.split(","))); + variables.put(ProcessDemoCommon.UNALLOCATED_QUANTITY, unallocatedQuantity); + taskService.complete(taskId, variables); + } + + public void createAutoTaskListener(DelegateTask delegateTask) { + String taskId = delegateTask.getId(); + String taskDefinitionKey = delegateTask.getTaskDefinitionKey(); + String processInstanceId = delegateTask.getProcessInstanceId(); + Map userInfoMap = new HashMap<>(); + ProcessInfoVO processInfoVO = new ProcessInfoVO<>(); + BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO(); + String mainInstanceId =(String) delegateTask.getVariable(ActivitiCommon.MAIN_INSTANCE_ID); + //保存父子关联信息 + Map variables = new HashMap<>(); + variables.put(ActivitiCommon.MAIN_INSTANCE_ID, mainInstanceId != null ? mainInstanceId : processInstanceId); + variables.put(ActivitiCommon.PARENT_TASK_ID, taskId); + + switch (taskDefinitionKey) { + //主解读人分批下发后自动任务 + case ProcessDemoCommon.AUTO_TASK_1: + case ProcessDemoCommon.AUTO_TASK_3: + List interpreterList = (List) delegateTask.getVariable(ProcessDemoCommon.INTERPRETER); + for (String interpreter : interpreterList) { + userInfoMap.put(ProcessDemoCommon.INTERPRETER, interpreter); + // 流程定义id + String definitionId = processHandleService.getDefinitionIdByKey(ProcessDefinitionKey.DEMO_JDR); + basicProcessInfoDTO.setProcessDefinitionId(definitionId); + basicProcessInfoDTO.setProcessType(ProcessTypeEnum.DEMO.getValue()); // 流程类型 + processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO); + + processInfoVO.setProcessVariables(variables); + processInfoVO.setUserInfoMap(userInfoMap); + processHandleService.startChildrenProcess(processInfoVO); + } + break; + //解读人填写解读信息驳回后自动任务 + case ProcessDemoCommon.AUTO_TASK_2: + String mainInterpreter = (String) delegateTask.getVariable(ProcessDemoCommon.MAIN_INTERPRETER); + userInfoMap.put(ProcessDemoCommon.MAIN_INTERPRETER, mainInterpreter); + // 流程定义id + String definitionId = processHandleService.getDefinitionIdByKey(ProcessDefinitionKey.DEMO_CXFF); + basicProcessInfoDTO.setProcessDefinitionId(definitionId); + basicProcessInfoDTO.setProcessType(ProcessTypeEnum.DEMO.getValue()); // 流程类型 + processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO); + + processInfoVO.setProcessVariables(variables); + processInfoVO.setUserInfoMap(userInfoMap); + processHandleService.startChildrenProcess(processInfoVO); + break; + default: + } + + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckDetailServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckDetailServiceImpl.java new file mode 100644 index 00000000..8b9d792a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckDetailServiceImpl.java @@ -0,0 +1,22 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail; +import com.jero.modules.activiti.process.standardComplianceCheck.service.IProcessStandardComplianceCheckDetailService; +import com.jero.modules.activiti.process.standardComplianceCheck.mapper.ProcessStandardComplianceCheckDetailMapper; +import org.springframework.stereotype.Service; + +/** +* @author ThinkBook +* @description 针对表【process_standard_compliance_check_detail】的数据库操作Service实现 +* @createDate 2024-07-04 10:23:54 +*/ +@Service +public class ProcessStandardComplianceCheckDetailServiceImpl extends ServiceImpl + implements IProcessStandardComplianceCheckDetailService { + +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java new file mode 100644 index 00000000..921a485d --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java @@ -0,0 +1,38 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; +import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheck; +import com.jero.modules.activiti.process.standardComplianceCheck.entity.vo.ProcessSccVO; +import com.jero.modules.activiti.process.standardComplianceCheck.service.IProcessStandardComplianceCheckService; +import com.jero.modules.activiti.process.standardComplianceCheck.mapper.ProcessStandardComplianceCheckMapper; +import org.springframework.stereotype.Service; + +/** +* @author ThinkBook +* @description 针对表【process_standard_compliance_check】的数据库操作Service实现 +* @createDate 2024-07-04 10:21:21 +*/ +@Service +public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl + implements IProcessStandardComplianceCheckService { + + @Override + public void startProcess(ProcessInfoVO processInfoVO) { + + } + + @Override + public void approveTask(ProcessInfoVO processInfoVO, boolean b) { + + } + + @Override + public ProcessInfoVO getHandleData(String taskId) { + return null; + } +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/vo/ProcessDemoVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/vo/ProcessDemoVO.java new file mode 100644 index 00000000..323edb0e --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/vo/ProcessDemoVO.java @@ -0,0 +1,24 @@ +package com.jero.modules.activiti.process.standardComplianceCheck.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author liJiaRao + * @date 2024-06-17 15:00 + */ +@Data +public class ProcessDemoVO { + /** + * 主键ID + */ + @ApiModelProperty(value = "主键ID") + private String id; + @ApiModelProperty(value = "主解读人") + private String mainInterpreter; + @ApiModelProperty(value = "解读人") + private String interpreters; + @ApiModelProperty(value = "未分配数量") + private String unallocatedQuantity; +}