From b28d1d5b7d433ffd7fd0a3550df3415d74eff145 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 7 Dec 2023 13:48:39 +0800 Subject: [PATCH 1/5] update application-prod.yml --- .../process/fb/service/impl/ProcessHandleServiceImpl.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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 a1828c1d..585aefa1 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 @@ -312,7 +312,10 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { if (StringUtils.isNotBlank(taskId)) { deleteWrapper.eq(ProcessDraft::getTaskId, taskId); } - processDraftService.remove(deleteWrapper); + List processDraftList = processDraftService.list(deleteWrapper); + for (ProcessDraft processDraft : processDraftList) { + processDraftService.removeById(processDraft.getId()); + } } /** From b3b544b6a26654567d57b969e25a66855fff6080 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 7 Dec 2023 13:49:12 +0800 Subject: [PATCH 2/5] update application-prod.yml --- .../src/main/resources/application-prod.yml | 30 ++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/laws-single-startup/src/main/resources/application-prod.yml b/laws-single-startup/src/main/resources/application-prod.yml index 8950223c..51d5cc0e 100644 --- a/laws-single-startup/src/main/resources/application-prod.yml +++ b/laws-single-startup/src/main/resources/application-prod.yml @@ -361,6 +361,8 @@ iam: # bimRemoteUser: bbcadmin # bimRemotePwd: P@ssw0rd bpmcAppkey: test + # 创建用户默认角色 + defaultRoleIds: 817f7f818bb3506e018bb3506ef70000 # Hiwork集成 hiwork: @@ -400,4 +402,30 @@ oauth: state: zhongQi # 起草部门部门名称 -draftDepartName: 流程与标准化 \ No newline at end of file +draftDepartName: 流程与标准化 + +# 管理员权限roleCode,多填用英文逗号拼接 +adminRoleCode: admin + +# 文件下载加解密 +download: + enable: false + # 文件下载、预览拦截路径,多个以逗号分隔 + download_url: /sys/common/download/ + view_url: /sys/common/view/ + # 管理员角色 + admin_role_code: admin,BZGLY + # 加密参数 + encrypt: + url: http://10.2.159.90/intekey/encrypteFile + app_code: SRMS + secret_key: SRMS1234.. + # 解密参数 + decrypt: + url: http://10.2.159.90/intekey/file + app_code: SRMS + secret_key: SRMS1234.. + # 研发域 + scope_dev: 51 + # 办公域 + scope_work: 52 \ No newline at end of file From dfaca91b8826cb3a2f84beed2234494a88ffc071 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 7 Dec 2023 14:38:27 +0800 Subject: [PATCH 3/5] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=BC=81=E6=A0=87?= =?UTF-8?q?=E6=9B=B4=E6=94=B9=E6=B5=81=E7=A8=8B=E6=9C=80=E5=90=8E=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=E8=8A=82=E7=82=B9=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../esChange/entity/ProcessEsChange.java | 8 ++- .../listener/ProcessESChangeEndListener.java | 58 +++++++++++++------ .../laws/common/constant/FieldCommon.java | 18 +++++- 3 files changed, 64 insertions(+), 20 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java index fde05bff..756c25bd 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/entity/ProcessEsChange.java @@ -176,7 +176,7 @@ public class ProcessEsChange implements Serializable { * 引用标准 */ @ApiModelProperty(value = "引用标准") - private String quotedStandard; + private String referenceStandard; /** * 关联文件 @@ -196,6 +196,12 @@ public class ProcessEsChange implements Serializable { @ApiModelProperty(value = "采用国际标准号") private String internationalStandardNum; + /** + * 授权部门 + */ + @ApiModelProperty(value = "授权部门") + private String authDept; + /** * 修改意见内容列表 */ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java index 83f4ded7..4cc6e1eb 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java @@ -1,31 +1,22 @@ package com.jero.modules.activiti.process.esChange.listener; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.jero.modules.activiti.process.common.enums.StandardStateEnum; import com.jero.modules.activiti.process.esChange.entity.ProcessEsChange; import com.jero.modules.activiti.process.esChange.service.ProcessEsChangeService; -import com.jero.modules.activiti.process.esInitChange.entity.ProcessEsInitChange; -import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPApplicationCategoryEnum; -import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPChangeType; -import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPProjectType; -import com.jero.modules.activiti.process.esInitChange.service.ProcessEsInitChangeService; -import com.jero.modules.activiti.process.esRecheck.entity.ProcessEsRecheck; -import com.jero.modules.laws.enterprise.entity.EnterpriseStandardPlan; -import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService; -import com.jero.modules.laws.enterprise.util.BeanCopyUtils; +import com.jero.modules.laws.common.constant.FieldCommon; +import com.jero.modules.laws.common.service.ILawsCommonService; import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard; import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService; +import com.jero.modules.tag.enums.TableNameEnum; import lombok.extern.slf4j.Slf4j; import org.activiti.engine.delegate.DelegateExecution; import org.activiti.engine.delegate.ExecutionListener; import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.util.List; - -import static com.jero.modules.activiti.process.esRecheck.entity.ProcessRecheckConstants.*; -import static com.jero.modules.activiti.process.esRecheck.entity.ProcessRecheckConstants.RECHECK_ARCHIVE; +import java.text.SimpleDateFormat; +import java.util.HashMap; +import java.util.Map; /** * @author: Mzaxd @@ -46,6 +37,9 @@ public class ProcessESChangeEndListener implements ExecutionListener { @Resource private ProcessEsChangeService esChangeService; + @Resource + private ILawsCommonService commonService; + @Override public void notify(DelegateExecution delegateExecution) { log.info("企标更改流程结束 监听执行器开始执行"); @@ -59,9 +53,37 @@ public class ProcessESChangeEndListener implements ExecutionListener { // 根据标准编号找到标准Id LawsEnterpriseStandard es = esService.getOne(new LambdaQueryWrapper() .eq(LawsEnterpriseStandard::getStandardNumber, standNo)); - LawsEnterpriseStandard newEs = BeanCopyUtils.copyBean(change, LawsEnterpriseStandard.class); - newEs.setId(es.getId()); - esService.updateById(newEs); + change.setId(es.getId()); + // 转换成Map 然后走commonEdit接口 + Map parameterMap = new HashMap<>(); + this.buildMap(parameterMap, change); + commonService.commonEdit(parameterMap); + // TODO 生成修改单 log.info("企标更改流程监听执行器执行结束"); } + + private void buildMap(Map parameterMap, ProcessEsChange change) { + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); + parameterMap.put(FieldCommon.MODULE, TableNameEnum.ENTERPRISE_STANDARDS.getValue()); + parameterMap.put(FieldCommon.ID, change.getId()); + parameterMap.put(FieldCommon.STANDARD_NUMBER, change.getStandardNumber()); + parameterMap.put(FieldCommon.STANDARD_NAME, change.getStandardName()); + parameterMap.put(FieldCommon.GRADE_CLASSIFICATION, change.getGradeClassification()); + parameterMap.put(FieldCommon.AUTH_DEPT, change.getAuthDept()); + parameterMap.put(FieldCommon.STANDARD_SYSTEM, change.getStandardSystem()); + parameterMap.put(FieldCommon.STANDARD_ENGLISH_NAME, change.getStandardEnglishName()); + parameterMap.put(FieldCommon.RELEASE_DATE, formatter.format(change.getReleaseDate())); + parameterMap.put(FieldCommon.IMPLEMENTATION_DATE, formatter.format(change.getImplementationDate())); + parameterMap.put(FieldCommon.TRY_FLAG, change.getTryFlag()); + parameterMap.put(FieldCommon.TRIAL_PERIOD, change.getTrialPeriod()); + parameterMap.put(FieldCommon.PART_NAME, change.getPartName()); + parameterMap.put(FieldCommon.MAIN_DRAFT_USER, change.getMainDraftingUser()); + parameterMap.put(FieldCommon.MAIN_DRAFTING_UNIT, change.getMainDraftingUnit()); + parameterMap.put(FieldCommon.STANDARD_SCOPE, change.getStandardScope()); + parameterMap.put(FieldCommon.REPLACED_STANDARD, change.getSubstituteStandardNumber()); + parameterMap.put(FieldCommon.REFERENCE_STANDARD, change.getReferenceStandard()); + parameterMap.put(FieldCommon.ASSOCIATED_FILE, change.getAssociatedFile()); + parameterMap.put(FieldCommon.ACQUISITION_DEGREE, change.getAcquisitionDegree()); + parameterMap.put(FieldCommon.INTERNATIONAL_STANDARD_NUM, change.getInternationalStandardNum()); + } } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java index 0c77ede1..324cf755 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/FieldCommon.java @@ -182,7 +182,23 @@ public class FieldCommon { public static final String TRIAL_PERIOD = "trial_period"; // 关联文件 public static final String ASSOCIATED_FILE = "associated_file"; - + // 标准状态 public static final String STANDARD_STATE = "standard_state"; + // 标准等级分类 + public static final String GRADE_CLASSIFICATION = "grade_classification"; + // 标准英文名称 + public static final String STANDARD_ENGLISH_NAME = "standard_english_name"; + // 零部件名称 + public static final String PART_NAME = "part_name"; + // 主起草部门 + public static final String MAIN_DRAFT_USER = "main_draft_user"; + // 主起草部门 + public static final String MAIN_DRAFTING_UNIT = "main_drafting_unit"; + // 标准适用范围 + public static final String STANDARD_SCOPE = "standard_scope"; + // 采标程度 + public static final String ACQUISITION_DEGREE = "acquisition_degree"; + // 采用国际标准号 + public static final String INTERNATIONAL_STANDARD_NUM = "international_standard_num"; } From 35d9cb3aa1d7b7f08a72e583bdf8812ffcb77942 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 7 Dec 2023 14:52:11 +0800 Subject: [PATCH 4/5] =?UTF-8?q?feat:=20=E4=BC=81=E6=A0=87=E6=9B=B4?= =?UTF-8?q?=E6=94=B9=E6=B5=81=E7=A8=8B=E8=87=AA=E5=8A=A8=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=BC=81=E6=A0=87=E7=8A=B6=E6=80=81=E4=B8=BA=E8=AF=95=E8=BF=90?= =?UTF-8?q?=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../listener/ProcessESChangeEndListener.java | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java index 4cc6e1eb..bd9d6102 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/listener/ProcessESChangeEndListener.java @@ -1,6 +1,7 @@ package com.jero.modules.activiti.process.esChange.listener; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.jero.modules.activiti.process.common.enums.StandardStateEnum; import com.jero.modules.activiti.process.esChange.entity.ProcessEsChange; import com.jero.modules.activiti.process.esChange.service.ProcessEsChangeService; import com.jero.modules.laws.common.constant.FieldCommon; @@ -15,6 +16,7 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.text.SimpleDateFormat; +import java.util.Date; import java.util.HashMap; import java.util.Map; @@ -72,10 +74,7 @@ public class ProcessESChangeEndListener implements ExecutionListener { parameterMap.put(FieldCommon.AUTH_DEPT, change.getAuthDept()); parameterMap.put(FieldCommon.STANDARD_SYSTEM, change.getStandardSystem()); parameterMap.put(FieldCommon.STANDARD_ENGLISH_NAME, change.getStandardEnglishName()); - parameterMap.put(FieldCommon.RELEASE_DATE, formatter.format(change.getReleaseDate())); parameterMap.put(FieldCommon.IMPLEMENTATION_DATE, formatter.format(change.getImplementationDate())); - parameterMap.put(FieldCommon.TRY_FLAG, change.getTryFlag()); - parameterMap.put(FieldCommon.TRIAL_PERIOD, change.getTrialPeriod()); parameterMap.put(FieldCommon.PART_NAME, change.getPartName()); parameterMap.put(FieldCommon.MAIN_DRAFT_USER, change.getMainDraftingUser()); parameterMap.put(FieldCommon.MAIN_DRAFTING_UNIT, change.getMainDraftingUnit()); @@ -85,5 +84,22 @@ public class ProcessESChangeEndListener implements ExecutionListener { parameterMap.put(FieldCommon.ASSOCIATED_FILE, change.getAssociatedFile()); parameterMap.put(FieldCommon.ACQUISITION_DEGREE, change.getAcquisitionDegree()); parameterMap.put(FieldCommon.INTERNATIONAL_STANDARD_NUM, change.getInternationalStandardNum()); + // 是否试行 + Date releaseDate = change.getReleaseDate(); + boolean tryFlag = !change.getTryFlag().equals("0"); + String trialPeriod = change.getTrialPeriod(); + if (tryFlag) { + // 如果是试行 并且当前时间处于发布日期+试行周期期间内,则更改标准状态为试运行 + if (releaseDate != null && trialPeriod != null) { + Date endDate = new Date(releaseDate.getTime() + (long) Integer.parseInt(trialPeriod) * 24 * 60 * 60 * 1000 * 30); + Date now = new Date(); + if (now.before(endDate)) { + parameterMap.put(FieldCommon.STANDARD_STATE, StandardStateEnum.TRIAL_OPERATION.getStateValue()); + } + } + } + parameterMap.put(FieldCommon.RELEASE_DATE, formatter.format(releaseDate)); + parameterMap.put(FieldCommon.TRY_FLAG, change.getTryFlag()); + parameterMap.put(FieldCommon.TRIAL_PERIOD, change.getTrialPeriod()); } } From bf25d65f53d83676efacef0c272738237c4d91d3 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 7 Dec 2023 15:21:51 +0800 Subject: [PATCH 5/5] =?UTF-8?q?update=20=E6=B5=81=E7=A8=8B=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WorkCenterController.java | 2 +- .../activiti/mapper/xml/ProcessAllMapper.xml | 25 +++++++++++-------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java b/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java index 7d55d9ed..3ee6dc20 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java @@ -100,7 +100,7 @@ public class WorkCenterController { return Result.OK(sentList); } - @ApiOperation(value = "查询全部流程") + @ApiOperation(value = "监控流程") @GetMapping("/getAllList") public Result getAllList(ProcessAll processAll, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml index e9b4390b..fb722407 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/mapper/xml/ProcessAllMapper.xml @@ -26,20 +26,19 @@ p.project_id, p.project_name, p.prc_name_en, - group_concat(par.user_id) as handleUserId, - par.node_id + group_concat(par.user_id) as handleUserId from ( select pa.*, max(par.create_time) as receivedTaskTime, - max(par.end_time) as completedTaskTime, - par.node_id + max(par.end_time) as completedTaskTime from process_all pa left join process_approval_record par on pa.process_instance_id = par.process_instance_id ${ew.customSqlSegment} + group by pa.id ) p - left join process_approval_record par on p.process_instance_id = par.process_instance_id - WHERE par.finish_flag = 0 - or par.id is null + LEFT JOIN ( + SELECT user_id,process_instance_id from process_approval_record WHERE finish_flag = 1 + ) par ON p.process_instance_id = par.process_instance_id group by p.process_instance_id @@ -50,9 +49,11 @@ from process_all pa left join process_approval_record par on pa.process_instance_id = par.process_instance_id ${ew.customSqlSegment} + group by pa.id ) p - left join process_approval_record par on p.process_instance_id = par.process_instance_id - WHERE par.finish_flag = 0 or par.id is null + LEFT JOIN ( + SELECT user_id,process_instance_id from process_approval_record WHERE finish_flag = 1 + ) par ON p.process_instance_id = par.process_instance_id group by p.process_instance_id @@ -63,9 +64,11 @@ from process_all pa left join process_approval_record par on pa.process_instance_id = par.process_instance_id ${ew.customSqlSegment} + group by pa.id ) p - left join process_approval_record par on p.process_instance_id = par.process_instance_id - WHERE par.finish_flag = 0 or par.id is null + LEFT JOIN ( + SELECT user_id,process_instance_id from process_approval_record WHERE finish_flag = 1 + ) par ON p.process_instance_id = par.process_instance_id group by p.process_instance_id \ No newline at end of file