From 27ccb7af7bac00ef513729469756709810200b30 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 09:47:15 +0800 Subject: [PATCH 01/55] =?UTF-8?q?fix(=E6=A0=87=E5=87=86=E5=8C=96=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8):=2080402?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/LawsStandardizationController.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standardization/controller/LawsStandardizationController.java b/laws-modules/src/main/java/com/jero/modules/laws/standardization/controller/LawsStandardizationController.java index 812e8526..badc7c3e 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standardization/controller/LawsStandardizationController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standardization/controller/LawsStandardizationController.java @@ -17,6 +17,7 @@ import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.poi.ss.formula.functions.T; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.context.annotation.Lazy; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -48,6 +49,7 @@ public class LawsStandardizationController extends JeroController queryTreeList() { return Result.OK(lawsStandardizationService.queryTreeList()); } @@ -59,6 +61,7 @@ public class LawsStandardizationController extends JeroController> queryStatistics() { return Result.OK(lawsStandardizationService.queryStatistics()); } @@ -72,6 +75,7 @@ public class LawsStandardizationController extends JeroController add(@Validated @RequestBody StandardizationVO standardizationVO) { lawsStandardizationService.addOrUpdateStandardization(standardizationVO); return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); @@ -86,6 +90,7 @@ public class LawsStandardizationController extends JeroController edit(@Validated @RequestBody StandardizationVO standardizationVO) { log.info(""); lawsStandardizationService.addOrUpdateStandardization(standardizationVO); @@ -181,6 +186,7 @@ public class LawsStandardizationController extends JeroController queryDetailById(@ApiParam("id") String id) { return Result.OK(lawsStandardizationService.queryDetailById(id)); } From 233f69fb6b64253572cc101c447042bd2d77c7ce Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 09:56:41 +0800 Subject: [PATCH 02/55] =?UTF-8?q?fix(=E4=BC=81=E6=A0=87=E7=A8=BD=E6=9F=A5)?= =?UTF-8?q?:=2080289?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../enterprise/entity/vo/EnterpriseStandardInspectVo.java | 6 +++--- .../laws/enterprise/entity/vo/ExportDataWithDelayVo.java | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/EnterpriseStandardInspectVo.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/EnterpriseStandardInspectVo.java index 1d757657..31fc5142 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/EnterpriseStandardInspectVo.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/EnterpriseStandardInspectVo.java @@ -29,10 +29,10 @@ public class EnterpriseStandardInspectVo { private String id; /** - * 稽查依据标准号 + * 稽查依据标准编号 */ - @Excel(name = "稽查依据标准号", width = 15, needMerge = true) - @ApiModelProperty(value = "稽查依据标准号") + @Excel(name = "稽查依据标准编号", width = 18, needMerge = true) + @ApiModelProperty(value = "稽查依据标准编号") private String inspectNo; /** diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/ExportDataWithDelayVo.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/ExportDataWithDelayVo.java index ac091203..e3b69214 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/ExportDataWithDelayVo.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/entity/vo/ExportDataWithDelayVo.java @@ -27,8 +27,8 @@ public class ExportDataWithDelayVo { /** * 稽查依据标准号 */ - @Excel(name = "稽查依据标准号", width = 15) - @ApiModelProperty(value = "稽查依据标准号") + @Excel(name = "稽查依据标准编号", width = 18) + @ApiModelProperty(value = "稽查依据标准编号") private String inspectNo; /** From 01327c780ee1b6ca801a6b282557505200bedf62 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 10:54:48 +0800 Subject: [PATCH 03/55] =?UTF-8?q?fix(=E5=BF=AB=E6=8D=B7=E5=85=A5=E5=8F=A3)?= =?UTF-8?q?:=20=E4=BF=9D=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/LawsHomeQuickAccessServiceImpl.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java index 917d28d4..6a6dbc1c 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java @@ -170,10 +170,19 @@ public class LawsHomeQuickAccessServiceImpl extends ServiceImpl() .eq(LawsHomeQuickAccess::getUserId, sysUser.getId())); + + // 获取拥有权限的菜单列表 + List sysPermissionList = queryPermissionMenuList(""); + List menuIdList = sysPermissionList.stream().map(SysPermission::getId).collect(Collectors.toList()); // 保存新数据 List lawsHomeQuickAccessList = new ArrayList<>(); if (StringUtils.isNotBlank(permissionIdList)){ - for (String permissionId : permissionIdList.split(",")) { + String[] menuId = permissionIdList.split(","); + for (String permissionId : menuId) { + long count = menuIdList.stream().filter(v -> v.contains(permissionId)).count(); + if (count == 0){ + throw new JeroBootException("不能保存没有权限的菜单!"); + } LawsHomeQuickAccess lawsHomeQuickAccess = new LawsHomeQuickAccess(); lawsHomeQuickAccess.setUserId(sysUser.getId()); lawsHomeQuickAccess.setPermissionId(permissionId); From 9e2ec77ed560ecf691f8ed8e8f787fd2db69fb18 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 18 Jan 2024 10:55:28 +0800 Subject: [PATCH 04/55] =?UTF-8?q?fix:=2080935=20=E4=BC=81=E6=A0=87?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E5=8F=98=E6=9B=B4--=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E5=8F=98=E6=9B=B4=E3=80=81=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E7=BB=88=E6=AD=A2--=E9=80=89=E6=8B=A9=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E5=BA=94=E8=AF=A5=E5=8F=AF=E9=80=89=E9=80=BE=E6=9C=9F=E7=9A=84?= =?UTF-8?q?=E8=AE=A1=E5=88=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/EnterpriseStandardPlanServiceImpl.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardPlanServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardPlanServiceImpl.java index 09641f8c..c979ce21 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardPlanServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/service/impl/EnterpriseStandardPlanServiceImpl.java @@ -81,13 +81,18 @@ public class EnterpriseStandardPlanServiceImpl extends ServiceImpl page = new Page<>(pageNo, pageSize); esPlanMapper.page(page, esPlanQueryDTO); From 43031bcfa3e0aa72069757f03a148768b983a0f6 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 18 Jan 2024 11:20:26 +0800 Subject: [PATCH 05/55] =?UTF-8?q?feat:=20=E4=BC=81=E6=A0=87=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E5=88=A0=E9=99=A4=E7=9B=B8=E5=85=B3=E5=88=A4=E6=96=AD?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/jero/common/api/vo/ResultCommon.java | 6 +++++- .../impl/ProcessEsInitChangeServiceImpl.java | 14 +++++++++++++- .../service/impl/EsRevisionServiceImpl.java | 8 +++++++- .../impl/EnterpriseStandardPlanServiceImpl.java | 11 ++++++----- .../src/main/resources/i18n/messages.properties | 3 ++- .../src/main/resources/i18n/messages_en.properties | 1 + .../src/main/resources/i18n/messages_zh.properties | 1 + 7 files changed, 35 insertions(+), 9 deletions(-) diff --git a/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java b/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java index 664548e8..2df40841 100644 --- a/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java +++ b/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java @@ -6,7 +6,6 @@ package com.jero.common.api.vo; * @Description: 返回常量 */ public class ResultCommon { - private ResultCommon() {} /**操作成功*/ @@ -133,6 +132,11 @@ public class ResultCommon { */ public static final String EN_STANDARD_NUMBER_CONFLICT = "en.standard.number.conflict"; + /** + * 无效的企标计划 + */ + public static final String INVALID_ESP = "invalid.esp"; + // ---------项目合规评估流程--------- /** * 模块负责人不能为空 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java index 4655325a..dd840fd5 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java @@ -29,7 +29,9 @@ import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessNodeLinkService; import com.jero.modules.laws.common.constant.FieldCommon; import com.jero.modules.laws.common.service.ILawsCommonService; +import com.jero.modules.laws.enterprise.entity.EnterpriseStandardPlan; import com.jero.modules.laws.enterprise.service.ESSequenceNumberProvider; +import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService; import com.jero.modules.laws.enterprise.util.EnterpriseStandardUtil; import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard; import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService; @@ -90,6 +92,9 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl esInitChangeList = initChangeData.getDataList(); // 校验企标编号是否冲突 ProcessEsInitChange initChange = esInitChangeList.get(0); - // 如果是变更流程,则需要撤回制修订流程 if (ESPApplicationCategoryEnum.CHANGE.getValue().equals(initChange.getApplicationCategory())) { + // 如果是变更流程,则需要判断计划是否有效 + Set espIdSet = esInitChangeList.stream().map(ProcessEsInitChange::getEspId).collect(Collectors.toSet()); + List esplist = espService.list(new LambdaQueryWrapper().in(EnterpriseStandardPlan::getId, espIdSet)); + if (esplist == null || esplist.size() != espIdSet.size()) { + throw new JeroBootException(ResultCommon.INVALID_ESP); + } + + // 如果是变更流程,则需要撤回制修订流程 List espIdList = initChangeData.getDataList().stream().map(ProcessEsInitChange::getEspId).collect(Collectors.toList()); LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.in(ProcessEsRevision::getEspId, espIdList); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java index 2a6b3da4..86ebe8e5 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.common.api.vo.ResultCommon; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.modules.activiti.entity.ProcessAll; @@ -159,7 +160,12 @@ public class EsRevisionServiceImpl extends ServiceImpl implements EnterpriseStandardPlanService, ESSequenceNumberProvider { - @Resource - private ISysBaseAPI sysBaseAPI; - @Resource private EnterpriseStandardPlanMapper esPlanMapper; @@ -54,8 +51,12 @@ public class EnterpriseStandardPlanServiceImpl extends ServiceImpl queryPageList(ESPlanQueryDTO esPlanQueryDTO, Integer pageNo, Integer pageSize) { IPage page = new Page<>(pageNo, pageSize); esPlanMapper.page(page, esPlanQueryDTO); - // TODO 判断其能否删除 主起草人在待办中未进行操作,该计划允许删除(目前都设为允许删除) - page.getRecords().forEach(p -> p.setAllowDel(true)); + // 未开始的才可以删除,发起流程的时候需要判断计划有没有被删除,如果计划被删除了则需要重新制定计划 + page.getRecords().forEach(enterpriseStandardPlanVo -> { + enterpriseStandardPlanVo.setAllowDel( + ESPProjectStatus.NOT_STARTED.getValue() + .equals(enterpriseStandardPlanVo.getProjectStatus())); + }); return page; } diff --git a/laws-single-startup/src/main/resources/i18n/messages.properties b/laws-single-startup/src/main/resources/i18n/messages.properties index bebf8e04..0232389b 100644 --- a/laws-single-startup/src/main/resources/i18n/messages.properties +++ b/laws-single-startup/src/main/resources/i18n/messages.properties @@ -66,4 +66,5 @@ task.not.exists=\u4EFB\u52A1\u4E0D\u5B58\u5728 draft.not.exists=\u8349\u7A3F\u4E0D\u5B58\u5728 en.standard.number.conflict=\u4F01\u6807\u7F16\u53F7\u5DF2\u5B58\u5728\uFF0C\u9700\u7B49\u5F85\u91CD\u65B0\u751F\u6210\u987A\u5E8F\u53F7 tag.add.error.2=\u6BCF\u5F20\u8868\u6700\u591A\u670950\u4E2A\u5B57\u6BB5\u3002 -task.urging.error=\u53EA\u80FD\u50AC\u529E\u5F85\u529E\u4EFB\u52A1 \ No newline at end of file +task.urging.error=\u53EA\u80FD\u50AC\u529E\u5F85\u529E\u4EFB\u52A1 +invalid.esp=\u65E0\u6548\u7684\u4F01\u6807\u8BA1\u5212\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9 \ No newline at end of file diff --git a/laws-single-startup/src/main/resources/i18n/messages_en.properties b/laws-single-startup/src/main/resources/i18n/messages_en.properties index 5f776c69..b45df36d 100644 --- a/laws-single-startup/src/main/resources/i18n/messages_en.properties +++ b/laws-single-startup/src/main/resources/i18n/messages_en.properties @@ -72,3 +72,4 @@ draft.not.exists=Draft not exists en.standard.number.conflict=standard number exists tag.add.error.2=each table can have a maximum of 50 fields. task.urging.error=Can only remind to do tasks +invalid.esp=Invalid enterprise standard, please check \ No newline at end of file diff --git a/laws-single-startup/src/main/resources/i18n/messages_zh.properties b/laws-single-startup/src/main/resources/i18n/messages_zh.properties index d7516d92..8a157e26 100644 --- a/laws-single-startup/src/main/resources/i18n/messages_zh.properties +++ b/laws-single-startup/src/main/resources/i18n/messages_zh.properties @@ -72,3 +72,4 @@ draft.not.exists=\u8349\u7A3F\u4E0D\u5B58\u5728 en.standard.number.conflict=\u4F01\u6807\u7F16\u53F7\u5DF2\u5B58\u5728\uFF0C\u9700\u7B49\u5F85\u91CD\u65B0\u751F\u6210\u987A\u5E8F\u53F7 tag.add.error.2=\u6BCF\u5F20\u8868\u6700\u591A\u670950\u4E2A\u5B57\u6BB5\u3002 task.urging.error=\u53EA\u80FD\u50AC\u529E\u5F85\u529E\u4EFB\u52A1 +invalid.esp=\u65E0\u6548\u7684\u4F01\u6807\u8BA1\u5212\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9 \ No newline at end of file From cd2786a8e1464c8ceaf31347c9687a70c4d82393 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 11:41:41 +0800 Subject: [PATCH 06/55] =?UTF-8?q?fix(=E6=B5=81=E7=A8=8B):=2079848?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../esdeclare/service/impl/EsDeclareFlowServiceImpl.java | 3 ++- .../esinspect/service/impl/EsInspectFlowServiceImpl.java | 3 ++- .../service/impl/EsInspectDelayApplyFlowServiceImpl.java | 3 ++- .../service/impl/EsInspectPlanFlowServiceImpl.java | 3 ++- .../service/impl/EsInspectRectifyFlowServiceImpl.java | 3 ++- .../service/impl/EsPermissionApplyFlowServiceImpl.java | 3 ++- .../process/fb/service/impl/ProcessHandleServiceImpl.java | 7 +++++-- .../service/impl/MeetingManageFlowServiceImpl.java | 3 ++- 8 files changed, 19 insertions(+), 9 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java index b2eeb129..b7a964fe 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java @@ -193,7 +193,8 @@ public class EsDeclareFlowServiceImpl implements IEsDeclareFlowService { EsDeclareFlowVO esDeclareFlowVO = new EsDeclareFlowVO(); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId), false); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); // 是否存在草稿 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java index 14597073..55ea8fb7 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java @@ -281,7 +281,8 @@ public class EsInspectFlowServiceImpl implements IEsInspectFlowService { EsInspectFlowVO esInspectFlowVO = new EsInspectFlowVO(); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId), false); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); // 是否存在草稿 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java index d292de6e..71196ba1 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java @@ -193,7 +193,8 @@ public class EsInspectDelayApplyFlowServiceImpl implements IEsInspectDelayApplyF EsInspectDelayApplyFlowVO esInspectDelayApplyFlowVO = new EsInspectDelayApplyFlowVO(); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId), false); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); // 是否存在草稿 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java index e5485ccc..3f290c6e 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java @@ -237,7 +237,8 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { EsInspectPlanFlowVO esInspectPlanFlowVO = new EsInspectPlanFlowVO(); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId), false); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); // 是否存在草稿 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java index 32a85d3f..037b44d4 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java @@ -153,7 +153,8 @@ public class EsInspectRectifyFlowServiceImpl implements IEsInspectRectifyFlowSer EsInspectRectifyFlowVO esInspectReportFlowVO = new EsInspectRectifyFlowVO(); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId), false); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); // 是否存在草稿 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java index 7efcf754..98d699dd 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java @@ -162,7 +162,8 @@ public class EsPermissionApplyFlowServiceImpl implements EsPermissionApplyFlowSe EsPermissionApplyFlowVO esPermissionApplyFlowVO = new EsPermissionApplyFlowVO(); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId), false); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); // 是否存在草稿 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 98708aaa..6ddd39a5 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 @@ -463,7 +463,9 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { if (StringUtils.isNotBlank(taskId)) { deleteWrapper.eq(ProcessDraft::getTaskId, taskId); } - deleteWrapper.ne(ProcessDraft::getSaveSource, DraftCommon.INITIAL_SOURCE); + deleteWrapper.and(qw -> + qw.ne(ProcessDraft::getSaveSource, DraftCommon.INITIAL_SOURCE) + .or().isNull(ProcessDraft::getSaveSource)); List processDraftList = processDraftService.list(deleteWrapper); for (ProcessDraft processDraft : processDraftList) { processDraftService.removeById(processDraft.getId()); @@ -548,7 +550,8 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { } else { // 流程信息 ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId)); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); if (!Objects.isNull(processAll)) { basicProcessInfoDTO.setProcessInstanceId(processAll.getProcessInstanceId()); basicProcessInfoDTO.setProcessType(processAll.getPrcType()); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java index 0dc962bf..7a109f93 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java @@ -182,7 +182,8 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService { MeetingManageFlowVO meetingManageFlowVO = new MeetingManageFlowVO(); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .eq(ProcessAll::getProjectId, projectId), false); + .eq(ProcessAll::getProjectId, projectId) + .orderByDesc(ProcessAll::getCreateTime), false); ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); // 是否存在草稿 From 031e4440eace6412f9470f8b16a965dad6a7794c Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 18 Jan 2024 11:21:51 +0800 Subject: [PATCH 07/55] =?UTF-8?q?fix:=20=E5=B9=B4=E5=BA=A6=E5=88=B6?= =?UTF-8?q?=E4=BF=AE=E8=AE=A2=E5=AF=BC=E5=85=A5=E6=8A=A5=E9=94=99=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProcessEsAnnualInitServiceImpl.java | 23 ++++++++++--------- .../ProcessEsAnnualReportServiceImpl.java | 20 ++++++++++------ 2 files changed, 25 insertions(+), 18 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java index 27be26f2..04c75977 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java @@ -15,11 +15,9 @@ import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ActFlowCommonService; import com.jero.modules.activiti.process.esAnnualInit.entity.ProcessEsAnnualInit; import com.jero.modules.activiti.process.esAnnualInit.entity.vo.AnnualInitDataVO; -import com.jero.modules.activiti.process.esAnnualInit.entity.vo.AnnualInitFlowUserVO; import com.jero.modules.activiti.process.esAnnualInit.service.ProcessEsAnnualInitService; import com.jero.modules.activiti.process.esAnnualInit.mapper.ProcessEsAnnualInitMapper; -import com.jero.modules.activiti.process.esArchive.entity.ProcessEsArchive; -import com.jero.modules.activiti.process.esArchive.entity.vo.ESArchiveDataVO; +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.fb.dto.BasicProcessInfoDTO; import com.jero.modules.activiti.process.fb.service.IProcessHandleService; @@ -529,20 +527,25 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl list, List listDict) { list.forEach(item -> { + item.setProjectType(excelUtils.translateDictValue("esp_revision_type", item.getProjectType(), listDict)); + item.setEnStandardCode(excelUtils.translateDictValue("enterprise_standard_code", item.getEnStandardCode(), listDict)); item.setAuthDept(excelUtils.translateDictValue("depart_name", "id", "sys_depart", item.getAuthDept(), listDict)); item.setCooperationUnit(excelUtils.translateDictValue("depart_name", "id", "sys_depart", item.getCooperationUnit(), listDict)); item.setMainDraftingUser(excelUtils.translateDictValue("CONCAT(realname, '(', username, ')')", "id", "sys_user", item.getMainDraftingUser(), listDict)); @@ -552,10 +555,8 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl Date: Thu, 18 Jan 2024 11:53:27 +0800 Subject: [PATCH 08/55] =?UTF-8?q?fix:=2079978=20=E4=BC=81=E6=A0=87?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E7=AB=8B=E9=A1=B9--=E8=BE=85=E5=8A=A9?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E4=B8=8E=E5=8E=9F=E5=9E=8B=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E4=B8=8D=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../process/esInitChange/entity/ProcessEsInitChange.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/entity/ProcessEsInitChange.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/entity/ProcessEsInitChange.java index 209a6a3c..de8fe6d8 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/entity/ProcessEsInitChange.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/entity/ProcessEsInitChange.java @@ -502,6 +502,14 @@ public class ProcessEsInitChange implements Serializable { @ApiModelProperty(value = "配合单位") private String cooperationUnit; + /** + * 隶属工作组 + */ + @Dict(dictTable = "laws_working_group", dicCode = "id", dicText = "name") + @ApiModelProperty(value = "隶属工作组") + private String workGroup; + + @TableField(exist = false) private static final long serialVersionUID = 1781238971297838971L; } \ No newline at end of file From c283ea49e7ebd12c5feadcbb34c0c2b69f8d966a Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 11:55:04 +0800 Subject: [PATCH 09/55] =?UTF-8?q?fix(=E5=BF=AB=E6=8D=B7=E5=85=A5=E5=8F=A3)?= =?UTF-8?q?:=2080281?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/LawsHomeQuickAccessServiceImpl.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java index 6a6dbc1c..990748e9 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java @@ -23,10 +23,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletRequest; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; @@ -170,24 +167,30 @@ public class LawsHomeQuickAccessServiceImpl extends ServiceImpl() .eq(LawsHomeQuickAccess::getUserId, sysUser.getId())); - + // 全部菜单 + List menuAllList = sysPermissionService.list(); // 获取拥有权限的菜单列表 List sysPermissionList = queryPermissionMenuList(""); - List menuIdList = sysPermissionList.stream().map(SysPermission::getId).collect(Collectors.toList()); // 保存新数据 List lawsHomeQuickAccessList = new ArrayList<>(); if (StringUtils.isNotBlank(permissionIdList)){ String[] menuId = permissionIdList.split(","); + List errorList = new ArrayList<>(); for (String permissionId : menuId) { - long count = menuIdList.stream().filter(v -> v.contains(permissionId)).count(); + long count = sysPermissionList.stream().filter(v -> v.getId().equals(permissionId)).count(); if (count == 0){ - throw new JeroBootException("不能保存没有权限的菜单!"); + Optional optional = menuAllList.stream().filter(v -> v.getId().equals(permissionId)).findFirst(); + optional.ifPresent(v -> errorList.add(v.getName())); } LawsHomeQuickAccess lawsHomeQuickAccess = new LawsHomeQuickAccess(); lawsHomeQuickAccess.setUserId(sysUser.getId()); lawsHomeQuickAccess.setPermissionId(permissionId); lawsHomeQuickAccessList.add(lawsHomeQuickAccess); } + if (!errorList.isEmpty()){ + String join = String.join("、", errorList); + throw new JeroBootException(join + ",不能保存没有权限的菜单!"); + } saveBatch(lawsHomeQuickAccessList); } } From 2902499eac4725b60981c26d6118091b78533009 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 13:46:51 +0800 Subject: [PATCH 10/55] =?UTF-8?q?fix(=E5=BE=81=E6=B1=82=E6=84=8F=E8=A7=81)?= =?UTF-8?q?:=2080396?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../laws/consultation/controller/ConsultationController.java | 1 + 1 file changed, 1 insertion(+) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/consultation/controller/ConsultationController.java b/laws-modules/src/main/java/com/jero/modules/laws/consultation/controller/ConsultationController.java index 0f45fc09..4d877cf5 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/consultation/controller/ConsultationController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/consultation/controller/ConsultationController.java @@ -60,6 +60,7 @@ public class ConsultationController { @ApiOperation(value="征求意见-详情", notes="征求意见-详情") @GetMapping(value = "/queryDetailByBusinessId") @Translation + @RequiresPermissions("askForAdvice:search") public Result queryDetailByBusinessId(String businessId, @ApiParam("当前页") @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @ApiParam("每页条数") @RequestParam(name="pageSize", defaultValue="10") Integer pageSize) { From df51d8a69fb8a22407b90d7fb77e2c9fedd1ae68 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 13:57:22 +0800 Subject: [PATCH 11/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E8=AF=84?= =?UTF-8?q?=E4=BC=B0=E5=90=88=E8=A7=84=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProcessProjectStandardController.java | 19 +- .../entity/ProcessProjectStandard.java | 7 + .../entity/ProcessProjectStandardTerm.java | 8 +- .../ProcessProjectStandardTermUser.java | 7 +- .../xml/ProcessProjectStandardMapper.xml | 3 +- .../ProcessProjectStandardService.java | 150 +++-- ...ProcessProjectStandardTermUserService.java | 31 + .../constant/MessageTemplateCodeCommon.java | 1 + .../main/resources/bpmn/法规合规评估流程.bpmn | 533 +++++++++--------- .../bpmn/法规合规评估流程camund.bpmn | 533 +++++++++--------- 10 files changed, 717 insertions(+), 575 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java index 9c5afad3..569105dd 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java @@ -9,10 +9,12 @@ import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; import com.jero.modules.activiti.process.projectassess.entity.ProcessProjectAssessTerm; import com.jero.modules.activiti.process.projectstandard.entity.ProcessProjectStandard; import com.jero.modules.activiti.process.projectstandard.entity.ProcessProjectStandardTerm; +import com.jero.modules.activiti.process.projectstandard.entity.ProcessProjectStandardTermUser; import com.jero.modules.activiti.process.projectstandard.service.ProcessProjectStandardService; import javax.servlet.http.HttpServletRequest; +import com.jero.modules.activiti.process.projectstandard.service.ProcessProjectStandardTermUserService; import com.jero.modules.activiti.process.projectstandard.vo.ProcessProjectStandardVO; import com.jero.modules.activiti.process.projectstandard.vo.StandardSelectionVO; import com.jero.modules.laws.common.vo.ManyStandardSelectionBox; @@ -45,7 +47,7 @@ import java.util.List; @Slf4j @Api(tags = "法规合规评估流程表") @RestController -@RequestMapping("processProjectStandard") +@RequestMapping("process/projectStandard") public class ProcessProjectStandardController extends JeroController { /** * 服务对象 @@ -54,6 +56,8 @@ public class ProcessProjectStandardController extends JeroController> getTermUserList(ProcessProjectStandardTermUser processProjectStandardTermUser, Integer pageNo, Integer pageSize, + HttpServletRequest req) { + IPage page = termUserService.queryPage(processProjectStandardTermUser, pageNo, pageSize, req); + return Result.OK(page); + } + } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandard.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandard.java index e7f9a7f9..939b5e62 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandard.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandard.java @@ -95,6 +95,13 @@ public class ProcessProjectStandard { @ApiModelProperty(value = "标准编号") private String standardNumber; + /** + * 标准名称 + */ + @TableField(value = "standard_name") + @ApiModelProperty(value = "标准名称") + private String standardName; + /** * 分解单来源 */ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java index 4aa38a3a..8a365c84 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java @@ -8,6 +8,8 @@ import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.Date; +import java.util.List; + import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; @@ -161,7 +163,7 @@ public class ProcessProjectStandardTerm { */ @TableField(exist = false) @ApiModelProperty(value="车型系列") - private String modelSeries_dict; + private String modelSeries_dictText; /** * 依据描述 @@ -194,4 +196,8 @@ public class ProcessProjectStandardTerm { @ApiModelProperty(value="评估结果") private String assessResults; + @TableField(exist = false) + @ApiModelProperty(value="评估结果") + private String assessResults_dictText; + } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java index 3b94cde2..322f90fe 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java @@ -109,8 +109,8 @@ public class ProcessProjectStandardTermUser { /**评估结果(1-符合、2-不符合)*/ @TableField(value = "assess_results") - @Dict(dicCode = "standards_assess_results") - @ApiModelProperty(value = "评估结果(1-符合、2-不符合)") + @Dict(dicCode = "assess_results") + @ApiModelProperty(value = "评估结果(1-符合、2-不符合、3-不涉及)") private String assessResults; /** @@ -138,6 +138,7 @@ public class ProcessProjectStandardTermUser { * 车型系列 */ @TableField(value = "model_series") + @Dict(dicCode = "model_series") @ApiModelProperty(value="车型系列") private String modelSeries; /** @@ -145,7 +146,7 @@ public class ProcessProjectStandardTermUser { */ @TableField(exist = false) @ApiModelProperty(value="车型系列") - private String modelSeries_dict; + private String modelSeries_dictText; /** * 依据描述 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardMapper.xml index 25614f43..895d68d5 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardMapper.xml @@ -13,11 +13,12 @@ + id, create_by, create_time, update_by, update_time, org_code, del_flag, `source`, - standard_number, decomposition_order_Source + standard_number, standard_name, decomposition_order_Source \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 73e5c11f..cb300e65 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -6,9 +6,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.common.api.dto.message.SendMessageDTO; import com.jero.common.api.vo.ResultCommon; import com.jero.common.api.vo.SendMessageAPI; import com.jero.common.constant.CommonConstant; +import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.vo.DictModel; @@ -24,7 +26,6 @@ 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.process.projectassess.common.ProcessProjectAssessCommon; -import com.jero.modules.activiti.process.projectassess.entity.ProcessProjectAssessTermUser; import com.jero.modules.activiti.process.projectstandard.common.ProcessProjectStandardCommon; import com.jero.modules.activiti.process.projectstandard.entity.ProcessProjectStandardTerm; import com.jero.modules.activiti.process.projectstandard.entity.ProcessProjectStandardTermApproval; @@ -35,6 +36,7 @@ import com.jero.modules.activiti.process.projectstandard.vo.ProcessProjectStanda import com.jero.modules.activiti.process.projectstandard.vo.StandardSelectionVO; import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.util.ThreadLocalUtil; +import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon; import com.jero.modules.laws.common.mapper.LawsCommonMapper; import com.jero.modules.laws.common.util.CurrentUserUtil; import com.jero.modules.laws.common.vo.ManyStandardSelectionBoxVO; @@ -43,6 +45,8 @@ import com.jero.modules.laws.standard.entity.LawsOverseasStandard; import com.jero.modules.laws.standard.service.ILawsDomesticStandardService; import com.jero.modules.laws.standard.service.ILawsOverseasStandardService; import com.jero.modules.projectLibrary.common.AssessCommon; +import com.jero.modules.projectLibrary.entity.LawsSpecialProjectLibrary; +import com.jero.modules.projectLibrary.service.ILawsSpecialProjectLibraryService; import com.jero.modules.projectLibrary.vo.DecompositionOrderSourceVO; import com.jero.modules.split.entity.SarFileSplitInfoEO; import com.jero.modules.split.service.ISarFileSplitInfoService; @@ -56,6 +60,7 @@ import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.modules.activiti.process.projectstandard.entity.ProcessProjectStandard; import com.jero.modules.activiti.process.projectstandard.mapper.ProcessProjectStandardMapper; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.*; @@ -67,6 +72,7 @@ import java.util.stream.Collectors; *@date 2024-01-15 16:17 */ @Service +@Transactional(rollbackFor = Exception.class) public class ProcessProjectStandardService extends ServiceImpl { @Resource @@ -99,6 +105,8 @@ public class ProcessProjectStandardService extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(ProcessProjectStandardTermUser::getProcessId, processId); List list = new ArrayList<>(); @@ -155,23 +161,16 @@ public class ProcessProjectStandardService extends ServiceImpl dictModels = sysBaseAPI.queryDictItemsByCode("assess_results"); - Map dictevaluationFeedbackMap = CollStreamUtil.toMap(dictModels, DictModel::getValue, DictModel::getText); + Map assessResultsMap = CollStreamUtil.toMap(dictModels, DictModel::getValue, DictModel::getText); //给条款中保存关联的信息 Map> termIdListMap = CollStreamUtil.groupByKey(list, ProcessProjectStandardTermUser::getTermId); for (ProcessProjectStandardTerm term : processProjectStandardTermList) { String termId = term.getId(); - List termUsers = termIdListMap.get(termId); - if (CollectionUtil.isNotEmpty(termUsers)){ - - ProcessProjectStandardTermUser termUser = termUsers.get(0); - term.setDescription(termUser.getDescription()); - term.setFileId(termUser.getFileId()); + if (termIdListMap.containsKey(termId)) { + List termUsers = termIdListMap.get(termId); + String assessResults = AssessCommon.NOT_INVOLVED; + String projectApprovalFlag = YesOrNoEnum.NO.getValue(); + List moduleOwnerList = new ArrayList<>(); + for (ProcessProjectStandardTermUser termUser : termUsers) { + moduleOwnerList.add(termUser.getModuleOwner()); + String assessResults1 = termUser.getAssessResults(); + if (AssessCommon.NOT_COMPLIANT.equals(assessResults1)) { + assessResults = AssessCommon.NOT_COMPLIANT; + projectApprovalFlag = YesOrNoEnum.NO.getValue(); + break; + } + if (AssessCommon.ACCORD_WITH.equals(assessResults1)) { + assessResults = AssessCommon.ACCORD_WITH; + projectApprovalFlag = YesOrNoEnum.YES.getValue(); + } + } + List userNameList = new ArrayList<>(); + moduleOwnerList.stream() + .filter(Objects::nonNull) + .distinct().forEach(i ->{ + userNameList.add(userNameMap.get(i)) ; + }); + term.setModuleOwner(String.join(",", userNameList)); + term.setProjectApprovalFlag(projectApprovalFlag); + term.setAssessResults(assessResults); + term.setAssessResults_dictText(assessResultsMap.get(assessResults)); } } - //拼接分类法规标题 - List decompositionOrderSourceDictModels = sysBaseAPI.queryDictItemsByCode("decomposition_order_source"); - Map decompositionOrderSourceMap = CollStreamUtil.toMap(decompositionOrderSourceDictModels, DictModel::getValue, DictModel::getText); - Map splitInfoIdMap = this.getSplitInfoIdMap(processId); - List allProjectAssesTermList = new ArrayList<>(); - List usedSplitInfoId = new ArrayList<>(); - for (ProcessProjectStandardTerm term : processProjectStandardTermList) { - String splitInfoId = term.getSplitInfoId(); - if (!usedSplitInfoId.contains(splitInfoId) && splitInfoIdMap.containsKey(splitInfoId)) { - usedSplitInfoId.add(splitInfoId); - ProcessProjectStandardTerm titleTerm = splitInfoIdMap.get(splitInfoId); - ProcessProjectStandardTerm term1 = new ProcessProjectStandardTerm(); - term1.setTermName(titleTerm.getTermName()); - term1.setTermNumber(titleTerm.getTermNumber()); - term1.setTermText(decompositionOrderSourceMap.get(titleTerm.getTermText())); - allProjectAssesTermList.add(term1); - } - allProjectAssesTermList.add(term); - } ProcessProjectStandard processProjectStandard = this.getById(processId); @@ -253,6 +255,7 @@ public class ProcessProjectStandardService extends ServiceImpl processInfoVO, ProcessDTO processDTO, boolean pass) { + String businessId = processInfoVO.getBusinessId(); + ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord(); + String originUserId = processApprovalRecord.getOriginUserId(); + Task task = processDTO.getTask(); + String executionId = task.getExecutionId(); + //查询流程信息 + ProcessAll process = processAllService.getByProcessInstanceId(processDTO.getProcessInstanceId()); + ProcessProjectStandard processProjectStandard = this.getById(businessId); + //查询不符合的评估 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(ProcessProjectStandardTermUser::getProcessId, businessId); + wrapper.eq(ProcessProjectStandardTermUser::getAssessResults, AssessCommon.NOT_COMPLIANT); + List notCompliantList = termUserService.list(wrapper); + Map> termIdMap = CollStreamUtil.groupByKey(notCompliantList, ProcessProjectStandardTermUser::getTermId); + //查询表单 + ProcessProjectStandardVO businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + List termList = businessInfoDTO.getProcessProjectStandardTermList(); + List carbonCopyPersonnelList = new ArrayList<>(); + List updateTermList = new ArrayList<>(); + Date date = new Date(); + for (ProcessProjectStandardTerm term : termList) { + ProcessProjectStandardTerm term1 = new ProcessProjectStandardTerm(); + String termId = term.getId(); + String assessResults = term.getAssessResults(); + String designEngineer = term.getDesignEngineer(); + term1.setId(termId); + term1.setAssessResults(assessResults); + term1.setDescription(designEngineer); + updateTermList.add(term1); + carbonCopyPersonnelList.addAll(Arrays.asList(term.getCarbonCopyPersonnels().split(","))); + + LawsSpecialProjectLibrary projectLibrary = new LawsSpecialProjectLibrary(); + projectLibrary.setSource(processProjectStandard.getSource()); + String standardNumber = processProjectStandard.getStandardNumber(); + projectLibrary.setStandardNumber(standardNumber); + String standardName = processProjectStandard.getStandardName(); + projectLibrary.setStandardName(standardName); + projectLibrary.setStandardId(processProjectStandard.getStandardId()); + String termName = term.getTermName(); + String termNumber = term.getTermNumber(); + if (!Objects.equals(termName,standardName) && !Objects.equals(termNumber,standardNumber)){ + projectLibrary.setTermNumber(termNumber); + projectLibrary.setTermName(termName); + } + projectLibrary.setStandardState(processProjectStandard.getDecompositionOrderSource()); + projectLibrary.setModelSeries(term.getModelSeries()); + projectLibrary.setResult(term.getAssessResults()); + projectLibrary.setMaterial(term.getFileId()); + projectLibrary.setValuationTime(date); + projectLibrary.setProjectApproval(term.getProjectApprovalFlag()); + projectLibrary.setProcessNum(process.getPrcNum()); + //存入不符合描述 + if (termIdMap.containsKey(termId)) { + List termUserList = termIdMap.get(termId); + String description = termUserList.stream().map(ProcessProjectStandardTermUser::getDescription).collect(Collectors.joining(",")); + projectLibrary.setDescription(description); + } + //推送数据到法规项目库 + lawsSpecialProjectLibraryService.save(projectLibrary); + } + //更新数据 + termService.updateBatchById(updateTermList); + //发送消息 + String carbonCopyPersonnels = carbonCopyPersonnelList.stream().distinct().collect(Collectors.joining(",")); + SendMessageDTO sendMessageDTO = new SendMessageDTO(); + sendMessageDTO.setTemplateCode(MessageTemplateCodeCommon.PROJECT_STANDARD_COMPLETE); + sendMessageDTO.setToUserId(carbonCopyPersonnels); + Map sendMap = new HashMap<>(); + sendMap.put("prcName", process.getPrcName()); + sendMap.put("termNumber", process.getPrcName()); + sendMap.put("termName", process.getPrcName()); + sendMessageDTO.setMap(sendMap); + sendMessageAPI.sendMessage(sendMessageDTO); } public void submit(ProcessInfoVO processInfoVO) { diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardTermUserService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardTermUserService.java index 91264299..6466675e 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardTermUserService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardTermUserService.java @@ -1,8 +1,18 @@ package com.jero.modules.activiti.process.projectstandard.service; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.common.system.api.ISysBaseAPI; +import com.jero.common.system.query.QueryGenerator; +import com.jero.common.system.vo.LoginUser; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import java.util.HashMap; import java.util.List; +import java.util.Map; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.modules.activiti.process.projectstandard.entity.ProcessProjectStandardTermUser; import com.jero.modules.activiti.process.projectstandard.mapper.ProcessProjectStandardTermUserMapper; @@ -13,5 +23,26 @@ import com.jero.modules.activiti.process.projectstandard.mapper.ProcessProjectSt */ @Service public class ProcessProjectStandardTermUserService extends ServiceImpl { + @Resource + private ISysBaseAPI sysBaseAPI; + public IPage queryPage(ProcessProjectStandardTermUser processProjectStandardTermUser, Integer pageNo, Integer pageSize, + HttpServletRequest req){ + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(processProjectStandardTermUser, req.getParameterMap()); + Page page = new Page<>(pageNo, pageSize); + Page pageList = page(page, queryWrapper); + //获取所有用户信息 + List userList = sysBaseAPI.getAllUser(); + Map userNameMap = new HashMap<>(); + for (LoginUser loginUser : userList) { + userNameMap.put(loginUser.getId(), loginUser.calcNameWorkNo()); + } + for (ProcessProjectStandardTermUser record : pageList.getRecords()) { + String moduleOwner = record.getModuleOwner(); + record.setModuleOwner(userNameMap.get(moduleOwner)); + String designEngineer = record.getDesignEngineer(); + record.setDesignEngineer(userNameMap.get(designEngineer)); + } + return pageList; + } } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/MessageTemplateCodeCommon.java b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/MessageTemplateCodeCommon.java index f1899d67..9d3e7096 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/MessageTemplateCodeCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/MessageTemplateCodeCommon.java @@ -21,5 +21,6 @@ public class MessageTemplateCodeCommon { public static final String STANDARD_CHANGE_REFERENCE = "standard_change_reference"; // 【法规变更】引用标准变更 public static final String STANDARD_CONSULTATION = "standard_consultation"; // 【征求意见结果提醒】 public static final String PROJECT_ASSESS_COMPLETE = "project_assess_complete"; // 【项目合规评估完成提醒】 + public static final String PROJECT_STANDARD_COMPLETE = "project_standard_complete"; // 【法规合规评估完成提醒】 public static final String URGING = "urging"; // 催办 } diff --git a/laws-modules/src/main/resources/bpmn/法规合规评估流程.bpmn b/laws-modules/src/main/resources/bpmn/法规合规评估流程.bpmn index 53f84afc..fbe102c6 100644 --- a/laws-modules/src/main/resources/bpmn/法规合规评估流程.bpmn +++ b/laws-modules/src/main/resources/bpmn/法规合规评估流程.bpmn @@ -288,7 +288,7 @@ Flow_03v0fem Flow_1gw9i5e - + Flow_0c3ic1y Flow_19ehxvl @@ -473,18 +473,6 @@ - - - - - - - - - - - - @@ -502,28 +490,6 @@ - - - - - - - - - - - - - - - - - - - - - - @@ -531,12 +497,6 @@ - - - - - - @@ -550,6 +510,12 @@ + + + + + + @@ -557,10 +523,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -575,28 +565,91 @@ - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -636,10 +689,6 @@ - - - - @@ -655,81 +704,20 @@ - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -752,49 +740,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -807,6 +752,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -818,18 +819,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - @@ -905,77 +956,16 @@ - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -990,6 +980,13 @@ + + + + + + + @@ -998,6 +995,10 @@ + + + + @@ -1016,6 +1017,18 @@ + + + + + + + + + + + + @@ -1027,6 +1040,10 @@ + + + + @@ -1034,26 +1051,10 @@ - - - - - - - - - - - - - - - - diff --git a/laws-modules/src/main/resources/bpmn/法规合规评估流程camund.bpmn b/laws-modules/src/main/resources/bpmn/法规合规评估流程camund.bpmn index e8688aa8..927e2bfe 100644 --- a/laws-modules/src/main/resources/bpmn/法规合规评估流程camund.bpmn +++ b/laws-modules/src/main/resources/bpmn/法规合规评估流程camund.bpmn @@ -288,7 +288,7 @@ Flow_03v0fem Flow_1gw9i5e - + Flow_0c3ic1y Flow_19ehxvl @@ -473,18 +473,6 @@ - - - - - - - - - - - - @@ -502,28 +490,6 @@ - - - - - - - - - - - - - - - - - - - - - - @@ -531,12 +497,6 @@ - - - - - - @@ -550,6 +510,12 @@ + + + + + + @@ -557,10 +523,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -575,28 +565,91 @@ - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -636,10 +689,6 @@ - - - - @@ -655,81 +704,20 @@ - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -752,49 +740,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -807,6 +752,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -818,18 +819,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - @@ -905,77 +956,16 @@ - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -990,6 +980,13 @@ + + + + + + + @@ -998,6 +995,10 @@ + + + + @@ -1016,6 +1017,18 @@ + + + + + + + + + + + + @@ -1027,6 +1040,10 @@ + + + + @@ -1034,26 +1051,10 @@ - - - - - - - - - - - - - - - - From 8724a6ebf87edfe3607be792b6389e46dd3c9140 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 14:04:30 +0800 Subject: [PATCH 12/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B-=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E6=AC=BE=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DocumentSplitServiceImpl.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java index 3562350d..8c959695 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/documenttool/service/impl/DocumentSplitServiceImpl.java @@ -1033,13 +1033,6 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService { public List processProjectStandardGetList(String sarFileSplitInfoId) { List processProjectAssessTermList = new ArrayList<>(); ProcessProjectStandardTerm term = new ProcessProjectStandardTerm(); - // 文档拆分信息 - DocumentSplitInfo documentSplitInfo1 = documentSplitMapper.queryDocumentSplitInfoById(sarFileSplitInfoId); - term.setTermNumber(documentSplitInfo1.getSerialNumber()); - term.setTermName(documentSplitInfo1.getTitle()); - term.setSplitInfoId(sarFileSplitInfoId); - term.setTermText(documentSplitInfo1.getFileType()); - processProjectAssessTermList.add(term); // 文档拆分详情 Map parameter = new HashMap<>(); parameter.put(INFO_ID, sarFileSplitInfoId); From 0c7fa60fc60734ff7f2dff42e8c2a87a24acbbbc Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 14:04:36 +0800 Subject: [PATCH 13/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B-=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E6=AC=BE=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProcessProjectStandardController.java | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java index 569105dd..a7b4b48b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java @@ -62,59 +62,59 @@ public class ProcessProjectStandardController extends JeroController> queryProcessInfoVO(String draftId, String processInstanceId, String taskId) { ProcessInfoVO processInfoVO = processProjectStandardService.queryProcessInfoVO(draftId, processInstanceId, taskId); return Result.OK(processInfoVO); } - @AutoLog(value = "未符合项跟踪流程-发起流程") - @ApiOperation(value = "未符合项跟踪流程-发起流程") + @AutoLog(value = "法规合规评估流程-发起流程") + @ApiOperation(value = "法规合规评估流程-发起流程") @PostMapping(value = "/startProcess") public Result startProcess(@Validated @RequestBody ProcessInfoVO processInfoVO) { processProjectStandardService.startProcess(processInfoVO); return Result.OK(); } - @AutoLog(value = "未符合项跟踪流程-同意") - @ApiOperation(value = "未符合项跟踪流程-同意") + @AutoLog(value = "法规合规评估流程-同意") + @ApiOperation(value = "法规合规评估流程-同意") @PostMapping("/agree") public Result agree(@Validated @RequestBody ProcessInfoVO processInfoVO) { processProjectStandardService.approveTask(processInfoVO, true); return Result.OK(); } - @AutoLog(value = "未符合项跟踪流程-驳回") - @ApiOperation(value = "未符合项跟踪流程-驳回") + @AutoLog(value = "法规合规评估流程-驳回") + @ApiOperation(value = "法规合规评估流程-驳回") @PostMapping("/reject") public Result reject(@Validated @RequestBody ProcessInfoVO processInfoVO) { processProjectStandardService.approveTask(processInfoVO, false); return Result.OK(); } - @AutoLog(value = "未符合项跟踪流程-提交") - @ApiOperation(value = "未符合项跟踪流程-提交") + @AutoLog(value = "法规合规评估流程-提交") + @ApiOperation(value = "法规合规评估流程-提交") @PostMapping("/submit") public Result submit(@Validated @RequestBody ProcessInfoVO processInfoVO) { processProjectStandardService.submit(processInfoVO); return Result.OK(); } - @AutoLog(value = "未符合项跟踪流程-保存为草稿") - @ApiOperation(value = "未符合项跟踪流程-保存为草稿") + @AutoLog(value = "法规合规评估流程-保存为草稿") + @ApiOperation(value = "法规合规评估流程-保存为草稿") @PostMapping(value = "/saveToDraft") public Result saveToDraft(@Validated @RequestBody ProcessInfoVO processInfoVO) { processProjectStandardService.saveToDraft(processInfoVO); return Result.OK(); } - @AutoLog(value = "未符合项跟踪流程-查询标准列表") + @AutoLog(value = "法规合规评估流程-查询标准列表") @ApiOperation(value="查询标准列表") @GetMapping(value = "/quaryStandard") public Result> quaryStandard(ManyStandardSelectionBoxVO selectionBoxVO, @@ -127,7 +127,7 @@ public class ProcessProjectStandardController extends JeroController> processProjectStandardGetList(@RequestBody ProcessProjectStandard processProjectStandard) { @@ -147,7 +147,7 @@ public class ProcessProjectStandardController extends JeroController> getTermUserList(ProcessProjectStandardTermUser processProjectStandardTermUser, Integer pageNo, Integer pageSize, From 9dee3a93c59d33d1ed9e7ef871408e869c49a9de Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 14:16:57 +0800 Subject: [PATCH 14/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B-=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E6=AC=BE=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xml/ProcessProjectStandardTermMapper.xml | 8 ++--- .../ProcessProjectStandardService.java | 30 ++++++++++++++----- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml index 39dce910..42398a1e 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml @@ -39,7 +39,7 @@ select - + , ppstu.id term_user_id, @@ -84,7 +84,7 @@ select - + , ppstu.id term_user_id, diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index cb300e65..9dbeead3 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -175,7 +175,7 @@ public class ProcessProjectStandardService extends ServiceImpl moduleOwnerList = new ArrayList<>(); + List responsibleUnitLeaderList = new ArrayList<>(); for (ProcessProjectStandardTermUser termUser : termUsers) { moduleOwnerList.add(termUser.getModuleOwner()); + responsibleUnitLeaderList.add(termUser.getResponsibleUnitLeader()); String assessResults1 = termUser.getAssessResults(); if (AssessCommon.NOT_COMPLIANT.equals(assessResults1)) { assessResults = AssessCommon.NOT_COMPLIANT; @@ -209,13 +211,25 @@ public class ProcessProjectStandardService extends ServiceImpl userNameList = new ArrayList<>(); - moduleOwnerList.stream() - .filter(Objects::nonNull) - .distinct().forEach(i ->{ - userNameList.add(userNameMap.get(i)) ; - }); - term.setModuleOwner(String.join(",", userNameList)); + if (ProcessProjectStandardCommon.BSZGJLDSP_.equals(taskDefinitionKey)){ + List userNameList = new ArrayList<>(); + moduleOwnerList.stream() + .filter(Objects::nonNull) + .distinct().forEach(i ->{ + userNameList.add(userNameMap.get(i)) ; + }); + term.setModuleOwner(String.join(",", userNameList)); + } + if (ProcessProjectStandardCommon.FGGCSSP.equals(taskDefinitionKey)){ + List userNameList = new ArrayList<>(); + responsibleUnitLeaderList.stream() + .filter(Objects::nonNull) + .distinct().forEach(i ->{ + userNameList.add(userNameMap.get(i)) ; + }); + term.setResponsibleUnitLeader(String.join(",", userNameList)); + } + term.setProjectApprovalFlag(projectApprovalFlag); term.setAssessResults(assessResults); term.setAssessResults_dictText(assessResultsMap.get(assessResults)); From c16b22ed8d38f63085646e4fd809e190c5e3e7c0 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 14:21:02 +0800 Subject: [PATCH 15/55] =?UTF-8?q?fix(=E4=BB=BB=E5=8A=A1=E8=BD=AC=E4=BA=A4)?= =?UTF-8?q?:=2080379?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LawsTaskTransferController.java | 7 ++++ .../laws/tasktransfer/entity/LawsBaseDB.java | 5 +++ .../mapper/LawsTaskTransferMapper.java | 18 +++++++--- .../service/ILawsTaskTransferService.java | 13 +++++++ .../impl/LawsTaskTransferServiceImpl.java | 36 ++++++++++++++++++- 5 files changed, 74 insertions(+), 5 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/controller/LawsTaskTransferController.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/controller/LawsTaskTransferController.java index 5e9e3e73..6126d447 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/controller/LawsTaskTransferController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/controller/LawsTaskTransferController.java @@ -13,6 +13,7 @@ import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; import org.apache.poi.ss.formula.functions.T; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.web.bind.annotation.*; import java.util.List; @@ -43,6 +44,7 @@ public class LawsTaskTransferController { @AutoLog(value = "任务转交-基础库信息分页查询") @ApiOperation(value="任务转交-基础库信息分页查询", notes="任务转交-基础库信息分页查询") @GetMapping(value = "/queryBaseDB") + @RequiresPermissions("taskCareOf:basicInfo:search") public Result> queryBaseDB(LawsBaseDB lawsBaseDB, @ApiParam("当前页") @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @ApiParam("每页条数") @RequestParam(name="pageSize", defaultValue="10") Integer pageSize) { @@ -56,6 +58,7 @@ public class LawsTaskTransferController { @AutoLog(value = "任务转交-基础库信息转交") @ApiOperation(value="任务转交-基础库信息转交", notes="任务转交-基础库信息转交") @PostMapping(value = "/baseDBTransfer") + @RequiresPermissions("taskCareOf:basicInfo:transfer") public Result baseDBTransfer(@RequestBody LawsBaseDB lawsBaseDB) { lawsTaskTransferService.baseDBTransfer(lawsBaseDB); return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); @@ -68,6 +71,7 @@ public class LawsTaskTransferController { @AutoLog(value = "任务转交-基础库信息转交(批量)") @ApiOperation(value="任务转交-基础库信息转交(批量)", notes="任务转交-基础库信息转交(批量)") @PostMapping(value = "/baseDBTransferBatch") + @RequiresPermissions("taskCareOf:basicInfo:batchTransfer") public Result baseDBTransferBatch(@RequestBody List lawsBaseDBList) { lawsTaskTransferService.baseDBTransferBatch(lawsBaseDBList); return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); @@ -80,6 +84,7 @@ public class LawsTaskTransferController { @AutoLog(value = "任务转交-流程信息分页查询") @ApiOperation(value="任务转交-流程信息分页查询", notes="任务转交-流程信息分页查询") @GetMapping(value = "/queryProcessDB") + @RequiresPermissions("taskCareOf:processInfo:search") public Result> queryProcessDB(LawsProcessDB lawsProcessDb, @ApiParam("当前页") @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @ApiParam("每页条数") @RequestParam(name="pageSize", defaultValue="10") Integer pageSize) { @@ -93,6 +98,7 @@ public class LawsTaskTransferController { @AutoLog(value = "任务转交-流程信息转交") @ApiOperation(value="任务转交-流程信息转交", notes="任务转交-流程信息转交") @PostMapping(value = "/processDBTransfer") + @RequiresPermissions("taskCareOf:processInfo:transfer") public Result> processDBTransfer(@RequestBody LawsProcessDB lawsProcessDB) { lawsTaskTransferService.processDBTransfer(lawsProcessDB); return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); @@ -105,6 +111,7 @@ public class LawsTaskTransferController { @AutoLog(value = "任务转交-流程信息转交(批量)") @ApiOperation(value="任务转交-流程信息转交(批量)", notes="任务转交-流程信息转交(批量)") @PostMapping(value = "/processDBTransferBatch") + @RequiresPermissions("taskCareOf:processInfo:batchTransfer") public Result> processDBTransferBatch(@RequestBody List lawsProcessDBList) { lawsTaskTransferService.processDBTransferBatch(lawsProcessDBList); return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsBaseDB.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsBaseDB.java index 25f39102..30490423 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsBaseDB.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsBaseDB.java @@ -1,5 +1,6 @@ package com.jero.modules.laws.tasktransfer.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.jero.common.aspect.annotation.Dict; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -37,4 +38,8 @@ public class LawsBaseDB { /**转交人*/ @ApiModelProperty(value = "转交人") private String transferUser; + /**ids 查询用*/ + @ApiModelProperty(value = "ids 查询用") + @TableField(exist = false) + private String ids; } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java index 84ab8091..51d2a44f 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java @@ -7,6 +7,8 @@ import com.jero.modules.laws.tasktransfer.entity.LawsBaseDB; import com.jero.modules.laws.tasktransfer.entity.LawsProcessDB; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * @ClassName: LawsTaskTransferMapper * @Description: @@ -18,16 +20,24 @@ public interface LawsTaskTransferMapper { /** * 任务转交-基础库信息分页查询 * @param queryWrapper - * @param objectPage + * @param page * @return */ - IPage queryBaseDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper, IPage objectPage); + IPage queryBaseDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper, IPage page); + + /** + * 任务转交-基础库信息分页查询 + * @param queryWrapper + * @return + */ + List queryBaseDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); + /** * 任务转交-流程信息分页查询 * @param queryWrapper - * @param objectPage + * @param page * @return */ - IPage queryProcessDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper, IPage objectPage); + IPage queryProcessDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper, IPage page); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java index 478302bb..e66305c6 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java @@ -23,6 +23,13 @@ public interface ILawsTaskTransferService { */ IPage queryBaseDB(LawsBaseDB lawsBaseDB, Integer pageNo, Integer pageSize); + /** + * 任务转交-基础库信息列表查询 + * @param lawsBaseDB + * @return + */ + List queryBaseDB(LawsBaseDB lawsBaseDB); + /** * 任务转交-基础库信息转交 * @param lawsBaseDB @@ -55,4 +62,10 @@ public interface ILawsTaskTransferService { * @param lawsProcessDBList */ void processDBTransferBatch(List lawsProcessDBList); + + /** + * 任务转交-是否水平越权 + * @param ids + */ + void isHorizontalOverstep(String ids); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java index ed7890bb..7f0ef52c 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java @@ -4,8 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.common.constant.enums.LanguageEnum; import com.jero.common.constant.enums.YesOrNoEnum; +import com.jero.common.exception.JeroBootException; import com.jero.common.system.vo.LoginUser; +import com.jero.common.util.MessageUtils; import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; @@ -28,10 +31,12 @@ import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; +import org.jetbrains.annotations.NotNull; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.Objects; import java.util.stream.Collectors; @@ -76,6 +81,12 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { @Override public IPage queryBaseDB(LawsBaseDB lawsBaseDB, Integer pageNo, Integer pageSize) { + QueryWrapper queryWrapper = getLawsBaseDBQueryWrapper(lawsBaseDB); + return lawsTaskTransferMapper.queryBaseDB(queryWrapper, new Page<>(pageNo, pageSize)); + } + + @NotNull + private static QueryWrapper getLawsBaseDBQueryWrapper(LawsBaseDB lawsBaseDB) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.like(StringUtils.isNotBlank(lawsBaseDB.getUser()), "u.realname", lawsBaseDB.getUser()); queryWrapper.eq(StringUtils.isNotBlank(lawsBaseDB.getType()), "t.type", lawsBaseDB.getType()); @@ -86,7 +97,16 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { if (!roleIds.contains("admin")){ queryWrapper.eq("t.user", loginUser.getId()); } - return lawsTaskTransferMapper.queryBaseDB(queryWrapper, new Page<>(pageNo, pageSize)); + if (StringUtils.isNotBlank(lawsBaseDB.getIds())){ + queryWrapper.in("t.id", Arrays.asList(lawsBaseDB.getIds().split(","))); + } + return queryWrapper; + } + + @Override + public List queryBaseDB(LawsBaseDB lawsBaseDB) { + QueryWrapper queryWrapper = getLawsBaseDBQueryWrapper(lawsBaseDB); + return lawsTaskTransferMapper.queryBaseDB(queryWrapper); } @Override @@ -130,6 +150,20 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { } } + @Override + public void isHorizontalOverstep(String ids) { + LawsBaseDB lawsBaseDB = new LawsBaseDB(); + lawsBaseDB.setIds(ids); + List lawsBaseDBList = queryBaseDB(lawsBaseDB); + if (Objects.isNull(lawsBaseDBList) || lawsBaseDBList.size() != ids.split(",").length) { + if(LanguageEnum.CN.equals(MessageUtils.getLanguage())) { + throw new JeroBootException("无权限!"); + }else{ + throw new JeroBootException("No access!"); + } + } + } + @Override public void baseDBTransfer(LawsBaseDB lawsBaseDB) { List lawsBaseDBList = new ArrayList<>(); From c2ac24c7e4c70a2bf705f543b1deabce8e2b7120 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 18 Jan 2024 14:24:27 +0800 Subject: [PATCH 16/55] =?UTF-8?q?feat:=20=E5=B9=B4=E5=BA=A6=E5=88=B6?= =?UTF-8?q?=E4=BF=AE=E8=AE=A2=E5=AF=BC=E5=85=A5=E5=A2=9E=E5=8A=A0=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E9=99=90=E5=88=B6=E5=BF=85=E9=A1=BB=E5=A4=A7=E4=BA=8E?= =?UTF-8?q?=E7=AD=89=E4=BA=8E=E4=BB=8A=E5=A4=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProcessEsAnnualInitServiceImpl.java | 6 ++-- .../ProcessEsAnnualReportServiceImpl.java | 6 ++-- .../modules/activiti/util/ExcelUtils.java | 15 ++++++--- .../modules/laws/common/util/ImportUtil.java | 33 +++++++++++++++++++ 4 files changed, 49 insertions(+), 11 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java index 04c75977..3db8e17d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java @@ -614,9 +614,9 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl 0) { errorMsgs.add(errMsgHeader.append(errMsg).toString()); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java index 2a95291e..f6a8b32f 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java @@ -489,9 +489,9 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl 0) { errorMsgs.add(errMsgHeader.append(errMsg).toString()); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/util/ExcelUtils.java b/laws-modules/src/main/java/com/jero/modules/activiti/util/ExcelUtils.java index ac8dfe59..d373c5d4 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/util/ExcelUtils.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/util/ExcelUtils.java @@ -368,19 +368,24 @@ public class ExcelUtils { return matcher.find(); } - public String validSingleDateMustInput(String date, String name) { + public String validSingleDateMustInputNotBeforeToday(String date, String name) { if (StrUtil.isBlank(date)) { return "'" + name + "'不能为空。"; } - return this.validSingleDate(date, name); + return this.validSingleDateNotBeforeToday(date, name); } - public String validSingleDate(String date, String name) { - if (importUtil.singleDateValid(date)) { + public String validSingleDateNotBeforeToday(String date, String name) { + if (StrUtil.isBlank(date)) { return ""; - } else { + } + if (!importUtil.singleDateValid(date)) { return "'" + name + "'格式错误。"; } + if (!importUtil.singleDateValidNotBeforeToday(date)) { + return "'" + name + "'不能早于今天。"; + } + return ""; } public String validPartName(String value, List listDict) { diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java b/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java index a33eda66..61ec840b 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java @@ -552,6 +552,39 @@ public class ImportUtil { return checkList; } + public boolean singleDateValidNotBeforeToday(String cellValue) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + + // 设置lenient为false,使得日期解析更为严格 + sdf.setLenient(false); + try { + Date date = sdf.parse(cellValue.trim()); // 解析日期 + + Calendar today = Calendar.getInstance(); + today.set(Calendar.HOUR_OF_DAY, 0); + today.set(Calendar.MINUTE, 0); + today.set(Calendar.SECOND, 0); + today.set(Calendar.MILLISECOND, 0); + + Calendar inputDate = Calendar.getInstance(); + inputDate.setTime(date); + inputDate.set(Calendar.HOUR_OF_DAY, 0); + inputDate.set(Calendar.MINUTE, 0); + inputDate.set(Calendar.SECOND, 0); + inputDate.set(Calendar.MILLISECOND, 0); + + if (inputDate.before(today)) { + log.error("日期必须大于等于今天"); + return false; + } + return true; + } catch (ParseException e) { + // 这里捕获的应该是ParseException + log.error("日期转换错误: {}", e.getMessage()); + return false; + } + } + // 单选日期校验 public boolean singleDateValid(String cellValue) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); From ba0c69a4e55294ea7ef2f96110d9ac5e5f6dc619 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 14:44:53 +0800 Subject: [PATCH 17/55] =?UTF-8?q?fix(=E4=BB=BB=E5=8A=A1=E8=BD=AC=E4=BA=A4)?= =?UTF-8?q?:=2080381?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tasktransfer/entity/LawsProcessDB.java | 5 +++ .../mapper/LawsTaskTransferMapper.java | 9 ++++- .../service/ILawsTaskTransferService.java | 17 ++++++++- .../impl/LawsTaskTransferServiceImpl.java | 37 ++++++++++++++++++- 4 files changed, 63 insertions(+), 5 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsProcessDB.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsProcessDB.java index 8147d67c..1ef9618f 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsProcessDB.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/entity/LawsProcessDB.java @@ -1,5 +1,6 @@ package com.jero.modules.laws.tasktransfer.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.jero.common.aspect.annotation.Dict; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -45,4 +46,8 @@ public class LawsProcessDB { /**状态*/ @ApiModelProperty(value="状态: true:可转交,false:不可转交") private boolean state; + /**ids 查询用*/ + @ApiModelProperty(value = "ids 查询用") + @TableField(exist = false) + private String ids; } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java index 51d2a44f..22cc9b60 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/mapper/LawsTaskTransferMapper.java @@ -26,7 +26,7 @@ public interface LawsTaskTransferMapper { IPage queryBaseDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper, IPage page); /** - * 任务转交-基础库信息分页查询 + * 任务转交-基础库信息列表查询 * @param queryWrapper * @return */ @@ -40,4 +40,11 @@ public interface LawsTaskTransferMapper { * @return */ IPage queryProcessDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper, IPage page); + + /** + * 任务转交-流程信息列表查询 + * @param queryWrapper + * @return + */ + List queryProcessDB(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java index e66305c6..89055fa8 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/ILawsTaskTransferService.java @@ -51,6 +51,13 @@ public interface ILawsTaskTransferService { */ IPage queryProcessDB(LawsProcessDB lawsProcessDb, Integer pageNo, Integer pageSize); + /** + * 任务转交-流程信息列表查询 + * @param lawsProcessDb + * @return + */ + List queryProcessDB(LawsProcessDB lawsProcessDb); + /** * 任务转交-流程信息转交 * @param lawsProcessDB @@ -64,8 +71,14 @@ public interface ILawsTaskTransferService { void processDBTransferBatch(List lawsProcessDBList); /** - * 任务转交-是否水平越权 + * 任务转交-是否水平越权(基础库信息) * @param ids */ - void isHorizontalOverstep(String ids); + void isHorizontalOverstepByBaseDB(String ids); + + /** + * 任务转交-是否水平越权(流程信息) + * @param ids + */ + void isHorizontalOverstepByProcessDB(String ids); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java index 7f0ef52c..06ec3ef4 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java @@ -111,6 +111,12 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { @Override public IPage queryProcessDB(LawsProcessDB lawsProcessDb, Integer pageNo, Integer pageSize) { + QueryWrapper queryWrapper = getLawsProcessDBQueryWrapper(lawsProcessDb); + return lawsTaskTransferMapper.queryProcessDB(queryWrapper, new Page<>(pageNo, pageSize)); + } + + @NotNull + private static QueryWrapper getLawsProcessDBQueryWrapper(LawsProcessDB lawsProcessDb) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.like(StringUtils.isNotBlank(lawsProcessDb.getUser()), "u.realname", lawsProcessDb.getUser()); queryWrapper.like(StringUtils.isNotBlank(lawsProcessDb.getPrcNum()), "prc_num", lawsProcessDb.getPrcNum()); @@ -126,7 +132,13 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { if (!roleIds.contains("admin")){ queryWrapper.eq("par.user_id", loginUser.getId()); } - return lawsTaskTransferMapper.queryProcessDB(queryWrapper, new Page<>(pageNo, pageSize)); + return queryWrapper; + } + + @Override + public List queryProcessDB(LawsProcessDB lawsProcessDb) { + QueryWrapper queryWrapper = getLawsProcessDBQueryWrapper(lawsProcessDb); + return lawsTaskTransferMapper.queryProcessDB(queryWrapper); } @Override @@ -138,6 +150,10 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { @Override public void processDBTransferBatch(List lawsProcessDBList) { + // 水平越权 + List idlist = lawsProcessDBList.stream().map(LawsProcessDB::getId).collect(Collectors.toList()); + isHorizontalOverstepByProcessDB(String.join(",", idlist)); + for (LawsProcessDB lawsProcessDb : lawsProcessDBList) { String taskId = lawsProcessDb.getTaskId(); String toUserId = lawsProcessDb.getTransferUser(); @@ -151,7 +167,7 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { } @Override - public void isHorizontalOverstep(String ids) { + public void isHorizontalOverstepByBaseDB(String ids) { LawsBaseDB lawsBaseDB = new LawsBaseDB(); lawsBaseDB.setIds(ids); List lawsBaseDBList = queryBaseDB(lawsBaseDB); @@ -164,6 +180,20 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { } } + @Override + public void isHorizontalOverstepByProcessDB(String ids) { + LawsProcessDB lawsProcessDB = new LawsProcessDB(); + lawsProcessDB.setIds(ids); + List lawsProcessDBList = queryProcessDB(lawsProcessDB); + if (Objects.isNull(lawsProcessDBList) || lawsProcessDBList.size() != ids.split(",").length) { + if(LanguageEnum.CN.equals(MessageUtils.getLanguage())) { + throw new JeroBootException("无权限!"); + }else{ + throw new JeroBootException("No access!"); + } + } + } + @Override public void baseDBTransfer(LawsBaseDB lawsBaseDB) { List lawsBaseDBList = new ArrayList<>(); @@ -173,6 +203,9 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { @Override public void baseDBTransferBatch(List lawsBaseDBList) { + // 水平越权 + List idlist = lawsBaseDBList.stream().map(LawsBaseDB::getId).collect(Collectors.toList()); + isHorizontalOverstepByBaseDB(String.join(",", idlist)); // 企标计划 standardPlan(lawsBaseDBList); // 标准拆分 From 3526bb063cefc961098516d24d88150dc37dcb0b Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 14:48:12 +0800 Subject: [PATCH 18/55] =?UTF-8?q?fix(=E4=BB=BB=E5=8A=A1=E8=BD=AC=E4=BA=A4)?= =?UTF-8?q?:=2080381?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tasktransfer/service/impl/LawsTaskTransferServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java index 06ec3ef4..c206f212 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java @@ -132,6 +132,9 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { if (!roleIds.contains("admin")){ queryWrapper.eq("par.user_id", loginUser.getId()); } + if (StringUtils.isNotBlank(lawsProcessDb.getIds())){ + queryWrapper.in("pa.id", Arrays.asList(lawsProcessDb.getIds().split(","))); + } return queryWrapper; } From 13e536daecdd84e6e55e1ccd8cd048153721bcb3 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 14:59:36 +0800 Subject: [PATCH 19/55] =?UTF-8?q?fix(=E4=BB=BB=E5=8A=A1=E8=BD=AC=E4=BA=A4)?= =?UTF-8?q?:=2080353?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/LawsTaskTransferServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java index c206f212..a6e02fbb 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/tasktransfer/service/impl/LawsTaskTransferServiceImpl.java @@ -94,7 +94,7 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { queryWrapper.orderByDesc("t.create_time"); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String roleIds = loginUser.getRoleIds(); - if (!roleIds.contains("admin")){ + if (!roleIds.contains("admin") && !roleIds.contains("BZGLY")){ queryWrapper.eq("t.user", loginUser.getId()); } if (StringUtils.isNotBlank(lawsBaseDB.getIds())){ @@ -129,7 +129,7 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService { queryWrapper.orderByDesc("par.create_time"); LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String roleIds = loginUser.getRoleIds(); - if (!roleIds.contains("admin")){ + if (!roleIds.contains("admin") && !roleIds.contains("BZGLY")){ queryWrapper.eq("par.user_id", loginUser.getId()); } if (StringUtils.isNotBlank(lawsProcessDb.getIds())){ From 012f045f13db7dbabb3432f8d9383f81fe47b89d Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 15:29:34 +0800 Subject: [PATCH 20/55] =?UTF-8?q?fix(=E4=BB=BB=E5=8A=A1=E8=BD=AC=E4=BA=A4)?= =?UTF-8?q?:=20=E6=96=B0=E6=97=A7=E6=8B=86=E5=88=86=E5=8D=95=E5=AF=B9?= =?UTF-8?q?=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SarFileCompareItemCommentServiceImpl.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java index ffab73da..819cba33 100644 --- a/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.constant.enums.LanguageEnum; import com.jero.common.exception.JeroBootException; +import com.jero.common.util.MessageUtils; import com.jero.common.util.MinioUtil; import com.jero.modules.compare.entity.*; import com.jero.modules.compare.enums.AssessConsistencyEnum; @@ -279,7 +280,7 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl Date: Thu, 18 Jan 2024 15:47:13 +0800 Subject: [PATCH 21/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/ProcessProjectStandardTermMapper.java | 2 ++ .../mapper/xml/ProcessProjectStandardTermMapper.xml | 10 ++++++++++ .../service/ProcessProjectStandardService.java | 4 ++-- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/ProcessProjectStandardTermMapper.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/ProcessProjectStandardTermMapper.java index 2c24c6b4..d9f6c533 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/ProcessProjectStandardTermMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/ProcessProjectStandardTermMapper.java @@ -19,4 +19,6 @@ public interface ProcessProjectStandardTermMapper extends BaseMapper getByDesignEngineer(@Param("processId") String processId, @Param("originUserId") String originUserId, @Param("executionParentId") String executionParentId); List getByStandardsEngineer(@Param("processId") String processId); + + List getByTermDesignEngineer(@Param("processId") String processId, @Param("originUserId") String originUserId); } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml index 42398a1e..602c542f 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml @@ -119,4 +119,14 @@ where ppst.process_id = #{processId} and ppstu.id is not null + + \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 9dbeead3..7b41a788 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -179,7 +179,7 @@ public class ProcessProjectStandardService extends ServiceImpl Date: Thu, 18 Jan 2024 16:04:07 +0800 Subject: [PATCH 22/55] =?UTF-8?q?feat:=20=E5=B9=B4=E5=BA=A6=E5=88=B6?= =?UTF-8?q?=E4=BF=AE=E8=AE=A2=E5=AF=BC=E5=85=A5=E6=A0=B9=E6=8D=AE=E6=A0=87?= =?UTF-8?q?=E5=87=86=E7=AD=89=E7=BA=A7=E5=88=86=E7=B1=BB=E9=99=90=E5=88=B6?= =?UTF-8?q?=E6=8E=88=E6=9D=83=E9=83=A8=E9=97=A8=E8=83=BD=E5=A4=9F=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E7=9A=84=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProcessEsAnnualInitServiceImpl.java | 25 ++++-- .../ProcessEsAnnualReportServiceImpl.java | 25 ++++-- .../modules/activiti/util/ExcelUtils.java | 85 ++++++++++++++----- 3 files changed, 98 insertions(+), 37 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java index 3db8e17d..9e4403d3 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/service/impl/ProcessEsAnnualInitServiceImpl.java @@ -514,13 +514,13 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl list) { - List originStandardNoList = list.stream().map(ProcessEsAnnualInit::getOriginEnStandardNo).collect(Collectors.toList()); +// List originStandardNoList = list.stream().map(ProcessEsAnnualInit::getOriginEnStandardNo).collect(Collectors.toList()); - LambdaQueryWrapper esWrapper = new LambdaQueryWrapper<>(); - esWrapper.in(LawsEnterpriseStandard::getStandardNumber, originStandardNoList); - List esList = enterpriseStandardService.list(esWrapper); - // 转换成key为企标编号的map - Map esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getStandardNumber, item -> item)); +// LambdaQueryWrapper esWrapper = new LambdaQueryWrapper<>(); +// esWrapper.in(LawsEnterpriseStandard::getStandardNumber, originStandardNoList); +// List esList = enterpriseStandardService.list(esWrapper); +// // 转换成key为企标编号的map +// Map esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getStandardNumber, item -> item)); list.forEach(item -> { // 如果是制定则去除掉所有的原企标名称 原企标编号 @@ -539,6 +539,10 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl validationList(List list, List listDict) { + // 找到各标准等级的授权部门 + Map> authDeptMap = excelUtils.getAllLevelAuthDeptMap(); + List esList = enterpriseStandardService.list(); List errorMsgs = new ArrayList<>(); @@ -588,7 +595,7 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl list) { - List originStandardNoList = list.stream().map(ProcessEsAnnualReport::getOriginEnStandardNo).collect(Collectors.toList()); - - LambdaQueryWrapper esWrapper = new LambdaQueryWrapper<>(); - esWrapper.in(LawsEnterpriseStandard::getStandardNumber, originStandardNoList); - List esList = enterpriseStandardService.list(esWrapper); - // 转换成key为企标编号的map - Map esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getStandardNumber, item -> item)); +// List originStandardNoList = list.stream().map(ProcessEsAnnualReport::getOriginEnStandardNo).collect(Collectors.toList()); +// +// LambdaQueryWrapper esWrapper = new LambdaQueryWrapper<>(); +// esWrapper.in(LawsEnterpriseStandard::getStandardNumber, originStandardNoList); +// List esList = enterpriseStandardService.list(esWrapper); +// // 转换成key为企标编号的map +// Map esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getStandardNumber, item -> item)); list.forEach(item -> { // 如果是制定则去除掉所有的原企标名称 原企标编号 @@ -419,6 +419,10 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl validationList(List list, List listDict) { + // 找到各标准等级的授权部门 + Map> authDeptMap = excelUtils.getAllLevelAuthDeptMap(); + List esList = enterpriseStandardService.list(); List errorMsgs = new ArrayList<>(); @@ -478,8 +485,9 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl listDict) { - // 非空检查 - if (StrUtil.isBlank(value)) { - return "'标准等级分类'不能为空。"; - } - // 检查授权部门 - if (!excelUtils.validDict("standard_grade_classify", value, null, null, true, listDict)) { - return "'标准等级分类'无效。"; - } - return ""; - } - public String validStandardType(String value, List listDict) { // 非空检查 if (StrUtil.isBlank(value)) { @@ -259,18 +257,48 @@ public class ExcelUtils { return ""; } - public String validAuthDept(String value, List listDict) { - // 非空检查 - if (StrUtil.isBlank(value)) { - return "'授权部门'不能为空。"; + public String validAuthDept(String authDept, List listDict, + String standardClassification, Map> authDeptMap) { + if (StrUtil.isBlank(standardClassification)) { + return "'标准等级分类'不能为空。"; } + // 检查授权部门 - if (!excelUtils.validDict("depart_name", value, "sys_depart", "id", false, listDict)) { - return "'授权部门'无效。"; + if (!excelUtils.validDict("standard_grade_classify", standardClassification, null, + null, true, listDict)) { + return "'标准等级分类'无效。"; } + + String level = translateDictValue("standard_grade_classify", standardClassification, listDict); + + if (level.equals("2") || level.equals("3")) { + if (StrUtil.isBlank(authDept)) { + return "'授权部门'不能为空。"; + } + + // 检查授权部门 + if (!excelUtils.validDict("depart_name", authDept, "sys_depart", "id", false, listDict)) { + return "'授权部门'无效。"; + } + + // 将授权部门转换为idList + String deptIds = excelUtils.translateDictValue("depart_name", "id", "sys_depart", authDept, listDict); + boolean isMatching = isMatchingAuthDept( + Arrays.asList(deptIds.split(",")), + level.equals("2") ? authDeptMap.get("1") : authDeptMap.get("2") + ); + if (!isMatching) { + return "'授权部门'和'标准等级分类'不匹配。"; + } + } + return ""; } + private boolean isMatchingAuthDept(List authDeptList, List levelDeptList) { + return new HashSet<>(levelDeptList).containsAll(authDeptList); + } + public String validCooperateUnit(String value, List listDict) { // 非空检查 if (StrUtil.isBlank(value)) { @@ -419,4 +447,23 @@ public class ExcelUtils { } return ""; } + + public Map> getAllLevelAuthDeptMap() { + Map> authDeptMap = new HashMap<>(); + LambdaQueryWrapper gradeWrapper = new LambdaQueryWrapper<>(); + gradeWrapper.eq(LawsGrade::getLevel, 1); + LawsGrade levelOne = gradeService.getOne(gradeWrapper); + gradeWrapper.clear(); + gradeWrapper.eq(LawsGrade::getLevel, 2); + LawsGrade levelTwo = gradeService.getOne(gradeWrapper); + LambdaQueryWrapper levelWrapper = new LambdaQueryWrapper<>(); + levelWrapper.eq(LawsEnterpriseStandardLevel::getGradeId, levelOne.getId()); + List levelOneList = enterpriseStandardLevelService.list(levelWrapper); + levelWrapper.clear(); + authDeptMap.put("1", levelOneList.stream().map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList())); + levelWrapper.eq(LawsEnterpriseStandardLevel::getGradeId, levelTwo.getId()); + List levelTwoList = enterpriseStandardLevelService.list(levelWrapper); + authDeptMap.put("2", levelTwoList.stream().map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList())); + return authDeptMap; + } } From 5299d9735e14d15279333882f9d80c2b41a30403 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 16:27:46 +0800 Subject: [PATCH 23/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projectstandard/service/ProcessProjectStandardService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 7b41a788..7b9e2500 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -544,6 +544,7 @@ public class ProcessProjectStandardService extends ServiceImpl Date: Thu, 18 Jan 2024 16:47:43 +0800 Subject: [PATCH 24/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProcessProjectStandardService.java | 85 ++++++++++--------- 1 file changed, 46 insertions(+), 39 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 7b9e2500..c7fe0336 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -329,6 +329,45 @@ public class ProcessProjectStandardService extends ServiceImpl 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(); + if (taskDefinitionKey.contains("_") && !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)){ + taskDefinitionKey = taskDefinitionKey.substring(0,taskDefinitionKey.length()-1); + } + processHandleService.updateApprovalRecord(processInfoVO); + switch (taskDefinitionKey){ + //部所主管级领导下发 + case ProcessProjectStandardCommon.BSZGJLDXF: + bszgjldxfSubmit(processInfoVO, processDTO); + break; + //模块责任人分发 + //驳回后模块责任人分发 + case ProcessProjectStandardCommon.MKZRRFF_1: + mkzrrffSubmit(processInfoVO, processDTO, false); + break; + case ProcessProjectStandardCommon.MKZRRFF_4: + case ProcessProjectStandardCommon.MKZRRFF_5: + mkzrrffSubmit(processInfoVO, processDTO, true); + break; + //设计工程师评估 + case ProcessProjectStandardCommon.SJGCSPG_: + sjgcspgSubmit(processInfoVO, processDTO); + break; + //设计工程师补充工作令编号 + case ProcessProjectStandardCommon.SJGCSBCGZLBH: + sjgcsbcgzlbhSubmit(processInfoVO, processDTO); + break; + default: + } + } + public void approveTask(ProcessInfoVO processInfoVO, boolean pass) { BasicTaskInfoDTO basicTaskInfoDTO = processInfoVO.getBasicTaskInfoDTO(); String taskId = basicTaskInfoDTO.getTaskId(); @@ -474,44 +513,6 @@ public class ProcessProjectStandardService extends ServiceImpl 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(); - if (taskDefinitionKey.contains("_") && !taskDefinitionKey.contains(ProcessProjectStandardCommon.MKZRRFF_)){ - taskDefinitionKey = taskDefinitionKey.substring(0,taskDefinitionKey.length()-1); - } - processHandleService.updateApprovalRecord(processInfoVO); - switch (taskDefinitionKey){ - //部所主管级领导下发 - case ProcessProjectStandardCommon.BSZGJLDXF: - bszgjldxfSubmit(processInfoVO, processDTO); - break; - //模块责任人分发 - //驳回后模块责任人分发 - case ProcessProjectStandardCommon.MKZRRFF_1: - mkzrrffSubmit(processInfoVO, processDTO, false); - break; - case ProcessProjectStandardCommon.MKZRRFF_4: - case ProcessProjectStandardCommon.MKZRRFF_5: - mkzrrffSubmit(processInfoVO, processDTO, true); - break; - //设计工程师评估 - case ProcessProjectStandardCommon.SJGCSPG_: - sjgcspgSubmit(processInfoVO, processDTO); - break; - //设计工程师补充工作令编号 - case ProcessProjectStandardCommon.SJGCSBCGZLBH: - sjgcsbcgzlbhSubmit(processInfoVO, processDTO); - break; - default: - } - } //部所主管级领导下发 private void bszgjldxfSubmit(ProcessInfoVO processInfoVO, ProcessDTO processDTO) { String businessId = processInfoVO.getBusinessId(); @@ -605,7 +606,7 @@ public class ProcessProjectStandardService extends ServiceImpl termList = termMapper.getByModuleOwner(projectId, assignee, executionParentId, false); } From 953b8d5b80f2d1758a6aa337223732011552274c Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 16:51:27 +0800 Subject: [PATCH 25/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../process/fb/service/impl/ProcessHandleServiceImpl.java | 3 ++- 1 file changed, 2 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 6ddd39a5..2dc43bf1 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 @@ -490,7 +490,8 @@ public class ProcessHandleServiceImpl implements IProcessHandleService { if (StringUtils.isNotBlank(taskId)) { deleteWrapper.eq(ProcessDraft::getTaskId, taskId); } - deleteWrapper.ne(ProcessDraft::getSaveSource, DraftCommon.INITIAL_SOURCE); + deleteWrapper.and(qw -> qw.ne(ProcessDraft::getSaveSource, DraftCommon.INITIAL_SOURCE) + .or().isNull(ProcessDraft::getSaveSource)); List processDraftList = processDraftService.list(deleteWrapper); for (ProcessDraft processDraft : processDraftList) { processDraftService.removeById(processDraft.getId()); From 8ec09a158476b616f6f33d597c4f5c2a51bac43a Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 17:03:58 +0800 Subject: [PATCH 26/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ProcessProjectStandardService.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index c7fe0336..3fcaf700 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -399,6 +399,9 @@ public class ProcessProjectStandardService extends ServiceImpl processInfoVO, ProcessDTO processDTO, boolean pass) { + Task task = processDTO.getTask(); + String parentExecutionId = task.getFormKey(); + ThreadLocalUtil.put(ProcessProjectAssessCommon.EXECUTION_ID,parentExecutionId); // 完成任务 String taskId = processDTO.getTaskId(); Map variables = new HashMap<>(); @@ -632,7 +635,7 @@ public class ProcessProjectStandardService extends ServiceImpl variables = new HashMap<>(); From d46eeaf8b1defcf3db2c74209d917e2436441cb8 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 18 Jan 2024 17:14:46 +0800 Subject: [PATCH 27/55] =?UTF-8?q?fix:=20=E4=BC=81=E6=A0=87=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E8=AF=A6=E6=83=85=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xml/EnterpriseStandardPlanMapper.xml | 28 ------------------- 1 file changed, 28 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/mapper/xml/EnterpriseStandardPlanMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/mapper/xml/EnterpriseStandardPlanMapper.xml index c964f13e..73c5e0d9 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/mapper/xml/EnterpriseStandardPlanMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/mapper/xml/EnterpriseStandardPlanMapper.xml @@ -12,9 +12,6 @@ - - - @@ -53,32 +50,11 @@ - - - id,create_by,create_time, - update_by,update_time,org_code, - del_flag,process_name,deadline_date, - process_description,application_category,project_type, - origin_en_standard_num,new_en_standard_num,origin_en_standard_name, - new_en_standard_name,en_standard_english_name,en_standard_system, - en_standard_code,en_name_code,standard_category_code, - decade_code,en_standard_classification,draft_planned_complete_date, - solicitation_draft_plan_complete_date,plan_approval_date,project_status, - compilation_description,component_name,auth_dept, - cooperating_units,main_drafting_user,main_drafting_unit, - main_drafting_unit_responsible_person,standard_promoter,draft_completion_date, - draft_submission_date,solicitation_opinion_enabled,solicitation_draft_completion_date, - review_date,approval_date,release_date, - change_status,project_background,similar_na_standards_analysis, - similar_en_standards_analysis,standard_leading_necessity,project_expected_effects, - remarks,attachment,qualityFlag,cooperationUnit - - SELECT p.id, - p.process_name, - p.deadline_date, - p.process_description, p.application_category, p.project_type, p.origin_en_standard_no, @@ -237,7 +210,6 @@ p.similar_en_standards_analysis, p.standard_leading_necessity, p.project_expected_effects, - p.remarks, p.upload_attachment, p.quality_flag FROM From da70a100fa74eb28d16a9cd9191432c740cc34bd Mon Sep 17 00:00:00 2001 From: lijiarao Date: Thu, 18 Jan 2024 17:49:30 +0800 Subject: [PATCH 28/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ProcessProjectStandardService.java | 9 ++++++++- .../projectstandard/vo/ProcessProjectStandardVO.java | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 3fcaf700..441510df 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -235,10 +235,17 @@ public class ProcessProjectStandardService extends ServiceImpl0){ + ProcessProjectStandardTerm term = processProjectStandardTermList.get(0); + String moduleOwner = term.getModuleOwner(); + moduleOwner1 = userNameMap.get(moduleOwner); + } ProcessProjectStandard processProjectStandard = this.getById(processId); ProcessProjectStandardVO processProjectStandardVO = new ProcessProjectStandardVO(); + processProjectStandardVO.setModuleOwner(moduleOwner1); processProjectStandardVO.setProcessProjectStandard(processProjectStandard); processProjectStandardVO.setProcessProjectStandardTermList(processProjectStandardTermList); //processProjectStandardVO.setProcessProjectStandardTermUserList(); @@ -615,7 +622,7 @@ public class ProcessProjectStandardService extends ServiceImpl designEngineerList = Arrays.asList(designEngineers.split(",")); designEngineerIds.addAll(designEngineerList); - updateWrapper.set(ProcessProjectStandardTermUser::getModuleOwner, designEngineerList.get(0)); + updateWrapper.set(ProcessProjectStandardTermUser::getDesignEngineer, designEngineerList.get(0)); termUserService.update(updateWrapper); if (designEngineerList.size() >= 2){ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/vo/ProcessProjectStandardVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/vo/ProcessProjectStandardVO.java index 4a543d77..4ce090bf 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/vo/ProcessProjectStandardVO.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/vo/ProcessProjectStandardVO.java @@ -18,6 +18,9 @@ public class ProcessProjectStandardVO { /**业务基本信息*/ @ApiModelProperty(value = "业务基本信息") private ProcessProjectStandard processProjectStandard; + /**上一节点处理人*/ + @ApiModelProperty(value = "上一节点处理人") + private String moduleOwner; /**关联条款列表*/ @ApiModelProperty(value = "关联条款列表") private List processProjectStandardTermList; From f160d22eb476728dee0970debb974011a32a5d4f Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 18 Jan 2024 18:57:22 +0800 Subject: [PATCH 29/55] =?UTF-8?q?fix(=E6=B5=81=E7=A8=8B):=20=E5=BC=BA?= =?UTF-8?q?=E5=88=B6=E6=92=A4=E9=94=80=E5=AE=8C=E5=96=84=E3=80=81=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E8=AE=B0=E5=BD=95=E6=8E=92=E5=BA=8F=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/ProcessApprovalRecord.java | 13 +++++++++--- .../activiti/enums/FinishFlagEnum.java | 1 + .../listener/MyGlobalEventListener.java | 5 +---- .../impl/ProcessEsInitChangeServiceImpl.java | 3 --- .../impl/EsDeclareFlowServiceImpl.java | 7 +++++++ .../impl/EsInspectFlowServiceImpl.java | 7 +++++++ .../EsInspectDelayApplyFlowServiceImpl.java | 3 +++ .../impl/EsInspectPlanFlowServiceImpl.java | 7 +++++++ .../impl/EsInspectRectifyFlowServiceImpl.java | 7 +++++++ .../EsPermissionApplyFlowServiceImpl.java | 7 +++++++ .../impl/MeetingManageFlowServiceImpl.java | 5 +++++ .../activiti/service/ProcessAllService.java | 20 +++++++++++++------ .../service/ProcessApprovalRecordService.java | 12 ++++++++--- 13 files changed, 78 insertions(+), 19 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java b/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java index f4e02906..fdfb8da6 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java @@ -83,11 +83,11 @@ public class ProcessApprovalRecord { private String mesg; /** - * 完成注记(0未完成,1完成) + * 完成注记(1进行中,2已完成,3未处理,4已撤回) */ @Dict(dicCode = "prc_node_status") @TableField(value = "finish_flag") - @ApiModelProperty(value = "完成注记(1进行中,2已完成)") + @ApiModelProperty(value = "完成注记(1进行中,2已完成,3未处理,4已撤回)") private Integer finishFlag; /** @@ -98,7 +98,7 @@ public class ProcessApprovalRecord { private String projectId; /** - * 审批意见(0同意,1不同意) + * 审批意见(1通过,2驳回,3未处理) */ @Dict(dicCode = "commit_flag") @TableField(value = "commit_flag") @@ -186,4 +186,11 @@ public class ProcessApprovalRecord { */ @ApiModelProperty(value = "节点id") private String nodeId; + + /** + * 完成注记 搜索用 + */ + @TableField(exist = false) + @ApiModelProperty(value = "完成注记 搜索用") + private String finishFlagSearch; } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java b/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java index 37086187..bac9263d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java @@ -16,6 +16,7 @@ public enum FinishFlagEnum { INCOMPLETE("未完成", 1), COMPLETE("完成", 2), SUSPEND("暂停", 3), + WITHDRAWN("已撤回", 4) ; private String name; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java index 2deee254..f621a1a4 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java @@ -138,10 +138,7 @@ public class MyGlobalEventListener implements ActivitiEventListener { approvalRecord.setUserId(assignee); approvalRecord.setOriginUserId(assignee); approvalRecord.setFinishFlag(FinishFlagEnum.INCOMPLETE.getValue()); - // 加一秒,解决流程审批信息发起节点和下一节点创建时间一致,排序错乱问题 - Date date = new Date(); - date.setTime(createTime.getTime() + 1000); - approvalRecord.setCreateTime(date); + approvalRecord.setCreateTime(createTime); approvalRecord.setNodeId(taskDefinitionKey); recordService.save(approvalRecord); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java index dd840fd5..bae9b410 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java @@ -4,7 +4,6 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.jero.common.api.vo.Result; import com.jero.common.api.vo.ResultCommon; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; @@ -13,7 +12,6 @@ import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.entity.CounterSignNodeNameConstants; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ActFlowCommonService; -import com.jero.modules.activiti.process.esInitChange.entity.EsInitChangeConstant; 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.ESPProjectType; @@ -44,7 +42,6 @@ import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.task.Task; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.RequestBody; import javax.annotation.Resource; import java.util.*; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java index b7a964fe..a7c9b773 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esdeclare.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -11,6 +14,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -111,6 +115,9 @@ public class EsDeclareFlowServiceImpl implements IEsDeclareFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.STANDARD_DECLARE.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java index 55ea8fb7..aecf3822 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esinspect.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -9,6 +12,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -124,6 +128,9 @@ public class EsInspectFlowServiceImpl implements IEsInspectFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java index 71196ba1..3106a439 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java @@ -8,6 +8,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -105,6 +106,8 @@ public class EsInspectDelayApplyFlowServiceImpl implements IEsInspectDelayApplyF // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_DELAY_APPLY.getValue())); + + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java index 3f290c6e..95a0a51c 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esinspectplan.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -12,6 +15,7 @@ import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.entity.ProcessNode; import com.jero.modules.activiti.entity.ProcessNodeLink; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -122,6 +126,9 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_PLAN.getValue())); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java index 037b44d4..38cbde3b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esinspectrectify.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -11,6 +14,7 @@ import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.entity.ProcessNodeLink; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -98,6 +102,9 @@ public class EsInspectRectifyFlowServiceImpl implements IEsInspectRectifyFlowSer // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_REPORT.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java index 98d699dd..446c8c99 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.espermissionapply.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -9,6 +12,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -92,6 +96,9 @@ public class EsPermissionApplyFlowServiceImpl implements EsPermissionApplyFlowSe // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.PERMISSION_APPLY_PROCESS.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java index 7a109f93..da71d4d7 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.meetingmanage.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -108,6 +111,8 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.MEETING_MANAGE.getValue())); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java index 4b3f9ca7..2022ee81 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java @@ -16,6 +16,7 @@ import com.jero.common.system.vo.LoginUser; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.mapper.ProcessAllMapper; import com.jero.modules.activiti.process.common.common.DraftCommon; @@ -135,12 +136,19 @@ public class ProcessAllService extends ServiceImpl processDraftService.update(processDraftUpdateWrapper); //activiti撤销 runtimeService.deleteProcessInstance(processInstanceId,"强制撤回"); - //删除流程总表 - this.removeById(processAll.getId()); - //删除审批表 - LambdaQueryWrapper wrapper1 = new LambdaQueryWrapper<>(); - wrapper1.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId); - approvalRecordService.remove(wrapper1); + //更新流程总表状态 + update(new LambdaUpdateWrapper() + .eq(ProcessAll::getId, processAll.getId()) + .set(ProcessAll::getPrcStatus, ProcessStatusEnum.WITHDRAWN.getValue())); + + //更新增审批表状态 + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); + processApprovalRecord.setUserId(loginUser.getId()); + processApprovalRecord.setProcessInstanceId(processInstanceId); + processApprovalRecord.setFinishFlag(FinishFlagEnum.WITHDRAWN.getValue()); + processApprovalRecord.setCreateTime(null); + approvalRecordService.save(processApprovalRecord); //todo 同步删除操作到统一待办 } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java index ca5621ed..3688d459 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java @@ -3,18 +3,20 @@ package com.jero.modules.activiti.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.query.QueryGenerator; +import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper; import com.jero.modules.laws.common.util.CurrentUserUtil; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; + import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.util.Arrays; import java.util.List; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper; -import com.jero.modules.activiti.entity.ProcessApprovalRecord; /** * *@author liJiaRao @@ -33,6 +35,10 @@ public class ProcessApprovalRecordService extends ServiceImpl pageList(Page page, ProcessApprovalRecord processApprovalRecord, HttpServletRequest req) { QueryWrapper wrapper = QueryGenerator.initQueryWrapper(processApprovalRecord, req.getParameterMap()); + if (StringUtils.isNotBlank(processApprovalRecord.getFinishFlagSearch())){ + wrapper.in("finish_flag", Arrays.asList(processApprovalRecord.getFinishFlagSearch().split(","))); + } + wrapper.last("ORDER BY IF(ISNULL(create_time), 1, 0) DESC ,create_time DESC, end_time DESC"); Page pageList = this.page(page, wrapper); List records = pageList.getRecords(); for (ProcessApprovalRecord record : records) { From ae0c370efcd32a9b10f7f7b8a9a16a6ef6e8e158 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 18 Jan 2024 18:07:27 +0800 Subject: [PATCH 30/55] =?UTF-8?q?fix:=20=E4=BC=81=E6=A0=87=E7=AB=8B?= =?UTF-8?q?=E9=A1=B9=E5=8F=98=E6=9B=B4=E6=B5=81=E7=A8=8B=E7=AB=8B=E9=A1=B9?= =?UTF-8?q?=E5=88=86=E6=94=AF=E4=B8=8D=E6=98=BE=E7=A4=BA=E4=B8=BB=E8=B5=B7?= =?UTF-8?q?=E8=8D=89=E4=BA=BA=E6=8A=84=E9=80=81=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/modules/activiti/service/ProcessNodeService.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessNodeService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessNodeService.java index 3f2476f2..9440608a 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessNodeService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessNodeService.java @@ -150,6 +150,8 @@ public class ProcessNodeService extends ServiceImpl Objects.equals(processNode.getNodeName(), EsInitChangeConstant.AUTO_COPY)); // 将两个节点改名 processNodeList.forEach(processNode -> { if (Objects.equals(processNode.getNodeName(), EsInitChangeConstant.MAIN_DRAFT_USER_LEADER)) { @@ -162,6 +164,7 @@ public class ProcessNodeService extends ServiceImpl Objects.equals(processNode.getNodeName(), EsInitChangeConstant.EXPERT_CHECK)); processNodeList.forEach(processNode -> { if (Objects.equals(processNode.getNodeName(), EsInitChangeConstant.MAIN_DRAFT_USER_LEADER)) { From 44b5656a51fdd5278e7f18d84dc6d99e242f1b0f Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 18 Jan 2024 18:08:51 +0800 Subject: [PATCH 31/55] =?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=E5=8F=91=E8=B5=B7=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=E5=88=A4=E6=96=AD=E4=BC=81=E6=A0=87=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E4=B8=8D=E8=83=BD=E6=98=AF=E5=BA=9F=E6=AD=A2=E5=92=8C=E5=B0=81?= =?UTF-8?q?=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/common/api/vo/ResultCommon.java | 5 +++++ .../impl/ProcessEsChangeServiceImpl.java | 20 ++++++++++++++++++- .../main/resources/i18n/messages.properties | 3 ++- .../resources/i18n/messages_en.properties | 3 ++- .../resources/i18n/messages_zh.properties | 3 ++- 5 files changed, 30 insertions(+), 4 deletions(-) diff --git a/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java b/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java index 2df40841..95ee99ff 100644 --- a/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java +++ b/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java @@ -137,6 +137,11 @@ public class ResultCommon { */ public static final String INVALID_ESP = "invalid.esp"; + /** + * 不可以编辑废止或封存状态的企标 + */ + public static final String CAN_NOT_EDIT_ABOLISH_OR_ARCHIVE_ES = "can.not.edit.abolish.or.archive.es"; + // ---------项目合规评估流程--------- /** * 模块负责人不能为空 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java index 8aebe308..e09d824a 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java @@ -11,6 +11,7 @@ import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.entity.CounterSignNodeNameConstants; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; +import com.jero.modules.activiti.process.common.enums.StandardStateEnum; import com.jero.modules.activiti.process.common.service.ActFlowCommonService; import com.jero.modules.activiti.process.esArchive.entity.ProcessEsArchive; import com.jero.modules.activiti.process.esArchive.entity.vo.ESArchiveDataVO; @@ -24,6 +25,8 @@ import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO; import com.jero.modules.activiti.process.fb.service.IProcessHandleService; import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO; import com.jero.modules.activiti.service.ProcessNodeLinkService; +import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard; +import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService; import com.jero.modules.sys.utils.UserUtils; import com.jero.modules.system.service.ISysUserDepartService; import lombok.extern.slf4j.Slf4j; @@ -69,6 +72,9 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl Date: Fri, 19 Jan 2024 09:50:08 +0800 Subject: [PATCH 32/55] =?UTF-8?q?fix(=E4=BC=81=E6=A0=87=E7=A8=BD=E6=9F=A5?= =?UTF-8?q?=E8=AE=A1=E5=88=92):=20=E5=AF=BC=E5=85=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ProcessEsInspectPlanServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/ProcessEsInspectPlanServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/ProcessEsInspectPlanServiceImpl.java index 8f75d6ee..ae783351 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/ProcessEsInspectPlanServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/ProcessEsInspectPlanServiceImpl.java @@ -386,7 +386,7 @@ public class ProcessEsInspectPlanServiceImpl extends ServiceImpl Date: Fri, 19 Jan 2024 09:49:43 +0800 Subject: [PATCH 33/55] =?UTF-8?q?feat:=20=E6=96=87=E6=A1=A3=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E6=9F=A5=E8=AF=A2=20=E6=89=B9=E9=87=8F=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LawsUpdateRecordController.java | 59 +++++++++++++++++++ .../service/ILawsUpdateRecordService.java | 9 +++ .../impl/LawsUpdateRecordServiceImpl.java | 18 ++++++ 3 files changed, 86 insertions(+) create mode 100644 laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java new file mode 100644 index 00000000..9b657adc --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java @@ -0,0 +1,59 @@ +package com.jero.modules.laws.standard.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.jero.common.api.vo.Result; +import com.jero.common.aspect.annotation.AutoLog; +import com.jero.modules.laws.standard.entity.LawsUpdateRecord; +import com.jero.modules.laws.standard.service.ILawsUpdateRecordService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.extern.slf4j.Slf4j; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.Map; + +/** + * @Description: 文档动态 + * @Author: jero-boot + * @Date: 2024-01-19 + * @Version: V1.0 + */ +@Api(tags = "文档动态") +@RestController +@RequestMapping("/laws/standard/updateRecord") +@Slf4j +public class LawsUpdateRecordController { + + @Resource + private ILawsUpdateRecordService lawsUpdateRecordService; + + @AutoLog(value = "文档动态-查询") + @ApiOperation(value = "文档动态-查询", notes = "文档动态-查询") + @GetMapping(value = "/list") + @ApiOperationSupport(order = 1) + @RequiresPermissions("standardRegulationLibrary:documentDynamics:search") + public Result> getUpdateRecordList( + @RequestParam("content") @ApiParam("消息内容") String content, + @RequestParam(name = "pageNo", defaultValue = "1") @ApiParam("页码") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") @ApiParam("页面显示数量") Integer pageSize) { + IPage pageList = lawsUpdateRecordService.queryPageList(content, pageNo, pageSize); + return Result.OK(pageList); + } + + + @AutoLog(value = "文档动态-批量删除") + @ApiOperation(value = "文档动态-批量删除", notes = "文档动态-批量删除") + @PostMapping(value = "/deleteBatch") + @ApiOperationSupport(order = 2) + @RequiresPermissions("standardRegulationLibrary:documentDynamics:batchDelete") + public Result batchDelete(@RequestBody Map map) { + lawsUpdateRecordService.removeByIds(Collections.singletonList(map.get("ids").split(","))); + return Result.OK(); + } + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsUpdateRecordService.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsUpdateRecordService.java index 85240dea..d7190fd5 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsUpdateRecordService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsUpdateRecordService.java @@ -1,5 +1,6 @@ package com.jero.modules.laws.standard.service; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.jero.modules.laws.standard.entity.LawsUpdateRecord; import com.baomidou.mybatisplus.extension.service.IService; @@ -18,4 +19,12 @@ public interface ILawsUpdateRecordService extends IService { **/ void addRecord(String standardNumber, String content); + /** + * 文档动态列表 + * @param content 消息内容 + * @param pageNo 页码 + * @param pageSize 页面显示数量 + * @return IPage + */ + IPage queryPageList(String content, Integer pageNo, Integer pageSize); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsUpdateRecordServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsUpdateRecordServiceImpl.java index 82556781..50571ab9 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsUpdateRecordServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsUpdateRecordServiceImpl.java @@ -1,5 +1,12 @@ package com.jero.modules.laws.standard.service.impl; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.common.api.vo.Result; +import com.jero.common.constant.enums.YesOrNoEnum; +import com.jero.modules.laws.enterprise.entity.vo.EnterpriseStandardPlanVo; import com.jero.modules.laws.standard.entity.LawsUpdateRecord; import com.jero.modules.laws.standard.mapper.LawsUpdateRecordMapper; import com.jero.modules.laws.standard.service.ILawsUpdateRecordService; @@ -31,4 +38,15 @@ public class LawsUpdateRecordServiceImpl extends ServiceImpl queryPageList(String content, Integer pageNo, Integer pageSize) { + IPage page = new Page<>(pageNo, pageSize); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.like(StrUtil.isNotBlank(content), LawsUpdateRecord::getContent, content); + queryWrapper.eq(LawsUpdateRecord::getDelFlag, YesOrNoEnum.NO.getValue()); + queryWrapper.orderByDesc(LawsUpdateRecord::getCreateTime); + page = page(page, queryWrapper); + return page; + } } From 92a7949f3a90375aefc3a08f223ced6e98fd2d6d Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 19 Jan 2024 09:56:29 +0800 Subject: [PATCH 34/55] =?UTF-8?q?ci:=20=E6=94=BE=E5=BC=80swagger=20referer?= =?UTF-8?q?=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/jero/config/filter/csrf/CsrfFilter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/laws-base/laws-base-core/src/main/java/com/jero/config/filter/csrf/CsrfFilter.java b/laws-base/laws-base-core/src/main/java/com/jero/config/filter/csrf/CsrfFilter.java index 2796b28f..9c617f73 100644 --- a/laws-base/laws-base-core/src/main/java/com/jero/config/filter/csrf/CsrfFilter.java +++ b/laws-base/laws-base-core/src/main/java/com/jero/config/filter/csrf/CsrfFilter.java @@ -56,7 +56,7 @@ public class CsrfFilter implements Filter { String url = req.getRequestURL().toString(); // 获取来源 String referurl = req.getHeader("Referer"); - if(isWhiteReq(referurl) || Objects.equals(upgrade,"websocket") || url.contains("view")){ + if(isWhiteReq(referurl) || Objects.equals(upgrade,"websocket") || url.contains("view") || url.contains("doc.html")){ chain.doFilter(request, response); }else{ String log = ""; From 2207afc1ca0f04047cec6a9841e95856d05dbd98 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 19 Jan 2024 10:13:54 +0800 Subject: [PATCH 35/55] =?UTF-8?q?fix:=20=E6=96=87=E6=A1=A3=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E6=89=B9=E9=87=8F=E5=88=A0=E9=99=A4=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../laws/standard/controller/LawsUpdateRecordController.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java index 9b657adc..cb49544d 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsUpdateRecordController.java @@ -14,6 +14,7 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.Arrays; import java.util.Collections; import java.util.Map; @@ -52,7 +53,7 @@ public class LawsUpdateRecordController { @ApiOperationSupport(order = 2) @RequiresPermissions("standardRegulationLibrary:documentDynamics:batchDelete") public Result batchDelete(@RequestBody Map map) { - lawsUpdateRecordService.removeByIds(Collections.singletonList(map.get("ids").split(","))); + lawsUpdateRecordService.removeByIds(Arrays.asList(map.get("ids").split(","))); return Result.OK(); } From 9bfbe4cb926f79fd52943c690594e334dfdaf844 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Fri, 19 Jan 2024 10:16:13 +0800 Subject: [PATCH 36/55] =?UTF-8?q?fix(=E8=B5=84=E6=96=99=E4=B8=AD=E5=BF=83)?= =?UTF-8?q?:=2080856?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/LawsDataCenterFolderServiceImpl.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/dataCenter/service/impl/LawsDataCenterFolderServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/dataCenter/service/impl/LawsDataCenterFolderServiceImpl.java index acc4044c..8b2b1a11 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/dataCenter/service/impl/LawsDataCenterFolderServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/dataCenter/service/impl/LawsDataCenterFolderServiceImpl.java @@ -22,12 +22,11 @@ import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; @@ -48,6 +47,8 @@ public class LawsDataCenterFolderServiceImpl extends ServiceImpl allList = BeanCopyUtils.copyBeanList(lawsDataCenterFolderList, LawsDataCenterFolder.class); // 非管理员只能看到自己创建的 or 拥有管理权限 or 拥有查看权限的文件夹 or 默认根目录 - if (!roleIds.contains("admin")){ + List adminRoleCodeList = Arrays.asList(adminRoleCode.split(",")); + Collection intersection = CollectionUtils.intersection(Arrays.asList(roleIds.split(",")), adminRoleCodeList); + if (!roleIds.contains("admin") && CollectionUtils.isEmpty(intersection)){ lawsDataCenterFolderList = lawsDataCenterFolderList.stream() .filter(v -> (StringUtils.isNotBlank(v.getAuthManageIds()) && v.getAuthManageIds().contains(loginUser.getId())) || (StringUtils.isNotBlank(v.getAuthViewIds()) && v.getAuthViewIds().contains(loginUser.getId())) From e5b304a9d3fc784e4d3b7c32da06aedfaf7b2045 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 19 Jan 2024 11:11:39 +0800 Subject: [PATCH 37/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/ProcessProjectStandardCommon.java | 2 + .../ProcessProjectStandardService.java | 54 +++++++++++++++++-- 2 files changed, 52 insertions(+), 4 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java index c74b4930..fb88aa90 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java @@ -12,6 +12,8 @@ public class ProcessProjectStandardCommon { public static final String MODULE_OWNER_LIST_SIZE = "moduleOwnerListSize"; public static final String DESIGN_ENGINEER_LIST = "designEngineerList"; public static final String DESIGN_ENGINEER_LIST_SIZE = "designEngineerListSize"; + public static final String NOT_INVOLVED_MODULE_OWNER_LIST_SIZE = "notInvolvedModuleOwnerListSize"; + public static final String NOT_INVOLVED_MODULE_OWNER_LIST = "notInvolvedModuleOwnerList"; //法规工程师发起 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 441510df..fb384be0 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -156,14 +156,14 @@ public class ProcessProjectStandardService extends ServiceImpl variables = new HashMap<>(); + //如果驳回查询下一步的模块责任人 + if (!pass){ + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(ProcessProjectStandardTermUser::getProcessId,businessId); + wrapper.eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader,originUserId); + List termUserList = termUserMapper.selectList(wrapper); + //选择不涉及的模块责任人 + List notInvolvedModuleOwnerList = termUserList.stream() + .filter(i -> StringUtils.isBlank(i.getDesignEngineer())) + .map(ProcessProjectStandardTermUser::getModuleOwner) + .distinct() + .collect(Collectors.toList()); + //选择设计工程师的模块责任人 + List moduleOwnerList = termUserList.stream() + .filter(i -> StringUtils.isNotBlank(i.getDesignEngineer())) + .map(ProcessProjectStandardTermUser::getModuleOwner) + .distinct() + .collect(Collectors.toList()); + variables.put(ProcessProjectStandardCommon.NOT_INVOLVED_MODULE_OWNER_LIST, notInvolvedModuleOwnerList); + variables.put(ProcessProjectStandardCommon.NOT_INVOLVED_MODULE_OWNER_LIST_SIZE, notInvolvedModuleOwnerList.size()); + variables.put(ProcessProjectStandardCommon.MODULE_OWNER_LIST, moduleOwnerList); + variables.put(ProcessProjectStandardCommon.MODULE_OWNER_LIST_SIZE, moduleOwnerList.size()); + } + String taskId = processDTO.getTaskId(); + variables.put(ProcessProjectAssessCommon.PASS, pass); + taskService.complete(taskId, variables); } //法规工程师审批 private void fggcsspApprove(ProcessInfoVO processInfoVO, ProcessDTO processDTO, boolean pass) { @@ -467,6 +497,7 @@ public class ProcessProjectStandardService extends ServiceImpl termList = businessInfoDTO.getProcessProjectStandardTermList(); List carbonCopyPersonnelList = new ArrayList<>(); List updateTermList = new ArrayList<>(); + List designEngineerList = new ArrayList<>(); Date date = new Date(); for (ProcessProjectStandardTerm term : termList) { ProcessProjectStandardTerm term1 = new ProcessProjectStandardTerm(); @@ -476,6 +507,7 @@ public class ProcessProjectStandardService extends ServiceImpl variables = new HashMap<>(); + variables.put(ProcessProjectAssessCommon.PASS, pass); + variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerList); + variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST_SIZE, designEngineerList.size()); + taskService.complete(taskId, variables); //发送消息 String carbonCopyPersonnels = carbonCopyPersonnelList.stream().distinct().collect(Collectors.joining(",")); SendMessageDTO sendMessageDTO = new SendMessageDTO(); @@ -730,8 +769,15 @@ public class ProcessProjectStandardService extends ServiceImpl termList = termMapper.getByModuleOwner(projectId, assignee, executionParentId, false); - + List termList = termMapper.getByModuleOwner(projectId, assignee, executionParentId, true); + List designEngineerIds = termList.stream() + .map(ProcessProjectStandardTerm::getDesignEngineer) + .distinct() + .collect(Collectors.toList()); + ThreadLocalUtil.put(ProcessProjectAssessCommon.EXECUTION_ID,executionParentId); + Map variables = new HashMap<>(); + variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerIds); + taskService.complete(delegateTask.getId(),variables); } /** From 0bc1cdeddc2a9b6d77a185c910dc6432711c5500 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Fri, 19 Jan 2024 11:38:56 +0800 Subject: [PATCH 38/55] =?UTF-8?q?fix(=E5=BE=81=E6=B1=82=E6=84=8F=E8=A7=81?= =?UTF-8?q?=E6=B5=81=E7=A8=8B):=2080220?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProcessFbEntryChangeServiceImpl.java | 5 +++++ .../ProcessFbStandardConsultationServiceImpl.java | 15 +++++++++++++++ .../ProcessFbStandardPurchaseServiceImpl.java | 14 ++++++++++++++ 3 files changed, 34 insertions(+) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java index d51c384c..65dfe339 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java @@ -168,6 +168,11 @@ public class ProcessFbEntryChangeServiceImpl extends ServiceImpl Date: Fri, 19 Jan 2024 11:58:18 +0800 Subject: [PATCH 39/55] =?UTF-8?q?update=20=E6=9C=AA=E7=AC=A6=E5=90=88?= =?UTF-8?q?=E9=A1=B9=E8=B7=9F=E8=B8=AA=E6=B5=81=E7=A8=8B.bpmn?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/bpmn/未符合项跟踪流程.bpmn | 18 ++++++++---------- ...- 副本.bpmn => 未符合项跟踪流程camund.bpmn} | 16 +++++++--------- 2 files changed, 15 insertions(+), 19 deletions(-) rename laws-modules/src/main/resources/bpmn/{未符合项跟踪流程 - 副本.bpmn => 未符合项跟踪流程camund.bpmn} (86%) diff --git a/laws-modules/src/main/resources/bpmn/未符合项跟踪流程.bpmn b/laws-modules/src/main/resources/bpmn/未符合项跟踪流程.bpmn index 67724ed2..06b9f898 100644 --- a/laws-modules/src/main/resources/bpmn/未符合项跟踪流程.bpmn +++ b/laws-modules/src/main/resources/bpmn/未符合项跟踪流程.bpmn @@ -1,32 +1,30 @@ - - + + Flow_12b9yhd - + Flow_12b9yhd Flow_0ndqyc9 - + Flow_0eu6g3b Flow_1uaygks Flow_0ame206 - - - - + + Flow_0ndqyc9 Flow_1torqxs Flow_1e2ecjo Flow_1ko64jc - + Flow_1ko64jc Flow_0rn2xkx @@ -57,7 +55,7 @@ - + diff --git a/laws-modules/src/main/resources/bpmn/未符合项跟踪流程 - 副本.bpmn b/laws-modules/src/main/resources/bpmn/未符合项跟踪流程camund.bpmn similarity index 86% rename from laws-modules/src/main/resources/bpmn/未符合项跟踪流程 - 副本.bpmn rename to laws-modules/src/main/resources/bpmn/未符合项跟踪流程camund.bpmn index b7ace2e6..9b63cb29 100644 --- a/laws-modules/src/main/resources/bpmn/未符合项跟踪流程 - 副本.bpmn +++ b/laws-modules/src/main/resources/bpmn/未符合项跟踪流程camund.bpmn @@ -1,32 +1,30 @@ - - + + Flow_12b9yhd - + Flow_12b9yhd Flow_0ndqyc9 - + Flow_0eu6g3b Flow_1uaygks Flow_0ame206 - - - - + + Flow_0ndqyc9 Flow_1torqxs Flow_1e2ecjo Flow_1ko64jc - + Flow_1ko64jc Flow_0rn2xkx From fcebd84eaa65c95aa48e540a2cd9e11d89a193cb Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 19 Jan 2024 13:39:04 +0800 Subject: [PATCH 40/55] =?UTF-8?q?feat:=20=E9=9B=B6=E9=83=A8=E4=BB=B6?= =?UTF-8?q?=E6=A0=91=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/LawsPartNameController.java | 44 +++++++++ .../laws/standard/entity/PartName.java | 98 +++++++++++++++++++ .../laws/standard/mapper/PartNameMapper.java | 18 ++++ .../standard/service/PartNameService.java | 23 +++++ .../service/impl/LawsTreeNodeServiceImpl.java | 4 +- .../service/impl/PartNameServiceImpl.java | 84 ++++++++++++++++ 6 files changed, 269 insertions(+), 2 deletions(-) create mode 100644 laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java create mode 100644 laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java create mode 100644 laws-modules/src/main/java/com/jero/modules/laws/standard/mapper/PartNameMapper.java create mode 100644 laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java create mode 100644 laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java new file mode 100644 index 00000000..be9a7b18 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java @@ -0,0 +1,44 @@ +package com.jero.modules.laws.standard.controller; + +import com.jero.common.api.vo.Result; +import com.jero.common.aspect.annotation.AutoLog; +import com.jero.modules.laws.enterprise.entity.vo.LawsTreeNodeModel; +import com.jero.modules.laws.standard.entity.LawsTreeNode; +import com.jero.modules.laws.standard.entity.PartName; +import com.jero.modules.laws.standard.service.PartNameService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @author: Mzaxd + * @Date: 2024/1/19 10:42 + */ +@Api(tags = "零部件") +@RestController +@RequestMapping("/laws/standard/partName") +@Slf4j +public class LawsPartNameController { + + @Resource + private PartNameService partNameService; + + @AutoLog(value = "企业标准-零部件树") + @ApiOperation(value = "企业标准-零部件树", notes = "企业标准-零部件树") + @GetMapping("/") + public Result> queryENTreeList( + @RequestParam(required = false, defaultValue = "") @ApiParam("一级节点名称") String nodeName) { + List list = partNameService.queryTreeList(nodeName); + return Result.OK(list); + } + + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java new file mode 100644 index 00000000..6c610fac --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java @@ -0,0 +1,98 @@ +package com.jero.modules.laws.standard.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 java.util.List; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @TableName laws_part_name + */ +@Data +@TableName(value = "laws_part_name") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "laws_part_name对象", description = "零部件") +public class PartName implements Serializable { + + /** + * 主键ID + */ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键ID") + private String id; + + /** + * 创建人 + */ + @ApiModelProperty(value = "创建人") + private String createBy; + + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间") + private Date createTime; + + /** + * 更新人 + */ + @ApiModelProperty(value = "更新人") + private String updateBy; + + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间") + private Date updateTime; + + /** + * 所属部门 + */ + @ApiModelProperty(value = "所属部门") + private String orgCode; + + /** + * 0表示未删除,1表示删除 + */ + @ApiModelProperty(value = "0表示未删除,1表示删除") + private Integer delFlag; + + /** + * 零部件码 + */ + @ApiModelProperty(value = "零部件码") + private String code; + + /** + * 零部件名称 + */ + @ApiModelProperty(value = "零部件名称") + private String name; + + /** + * 父级零件id + */ + @ApiModelProperty(value = "父级零件id") + private String parentId; + + /** + * 子零部件 + */ + @TableField(exist = false) + @ApiModelProperty(value = "子零部件") + private List childPartNameList; + + @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/laws/standard/mapper/PartNameMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/mapper/PartNameMapper.java new file mode 100644 index 00000000..67bf3c10 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/mapper/PartNameMapper.java @@ -0,0 +1,18 @@ +package com.jero.modules.laws.standard.mapper; + +import com.jero.modules.laws.standard.entity.PartName; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author ThinkBook +* @description 针对表【laws_part_name】的数据库操作Mapper +* @createDate 2024-01-19 10:37:39 +* @Entity com.jero.modules.laws.standard.entity.PartName +*/ +public interface PartNameMapper extends BaseMapper { + +} + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java new file mode 100644 index 00000000..6cf1ff63 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java @@ -0,0 +1,23 @@ +package com.jero.modules.laws.standard.service; + +import com.jero.modules.laws.enterprise.entity.vo.LawsTreeNodeModel; +import com.jero.modules.laws.standard.entity.LawsTreeNode; +import com.jero.modules.laws.standard.entity.PartName; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** +* @author ThinkBook +* @description 针对表【laws_part_name】的数据库操作Service +* @createDate 2024-01-19 10:37:39 +*/ +public interface PartNameService extends IService { + + /** + * 查询零部件树 + * @param nodeName + * @return + */ + List queryTreeList(String nodeName); +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsTreeNodeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsTreeNodeServiceImpl.java index efa9346a..38b9dbaf 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsTreeNodeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/LawsTreeNodeServiceImpl.java @@ -103,7 +103,7 @@ public class LawsTreeNodeServiceImpl extends ServiceImpl findPathToRoot(List allNodes, LawsTreeNode node) { + public static Set findPathToRoot(List allNodes, LawsTreeNode node) { Set pathNodes = new HashSet<>(); LawsTreeNode[] currentHolder = new LawsTreeNode[1]; currentHolder[0] = node; @@ -116,7 +116,7 @@ public class LawsTreeNodeServiceImpl extends ServiceImpl findAllChildren(List allNodes, LawsTreeNode node) { + public Set findAllChildren(List allNodes, LawsTreeNode node) { Set childrenSet = new HashSet<>(); List directChildren = allNodes.stream() .filter(n -> n.getParentId().equals(node.getId())) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java new file mode 100644 index 00000000..fbdef5f9 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java @@ -0,0 +1,84 @@ +package com.jero.modules.laws.standard.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.common.constant.CommonConstant; +import com.jero.common.exception.JeroBootException; +import com.jero.modules.laws.enterprise.EnterpriseConstants; +import com.jero.modules.laws.enterprise.entity.vo.LawsTreeNodeModel; +import com.jero.modules.laws.enterprise.util.FindsTreeNodeChildrenUtil; +import com.jero.modules.laws.standard.entity.LawsTreeNode; +import com.jero.modules.laws.standard.entity.PartName; +import com.jero.modules.laws.standard.service.PartNameService; +import com.jero.modules.laws.standard.mapper.PartNameMapper; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; + +/** +* @author ThinkBook +* @description 针对表【laws_part_name】的数据库操作Service实现 +* @createDate 2024-01-19 10:37:39 +*/ +@Service +@Transactional(rollbackFor = JeroBootException.class) +public class PartNameServiceImpl extends ServiceImpl + implements PartNameService{ + + @Override + public List queryTreeList(String nodeName) { + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.eq(PartName::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + List allNodesPartName = this.list(query); + + // 将PartName转换为LawsTreeNode + List allNodes = this.convertPartNameToLawsTreeNode(allNodesPartName); + + Set nodesSet = new HashSet<>(); + + List matchedNodes = allNodes.stream() + .filter(node -> node.getNodeName().contains(nodeName)) + .collect(Collectors.toList()); + + for (LawsTreeNode matchedNode : matchedNodes) { + nodesSet.addAll(LawsTreeNodeServiceImpl.findPathToRoot(allNodes, matchedNode)); + // 需求调整 只带上级不带下级 +// nodesSet.addAll(findAllChildren(allNodes, matchedNode)); + } + // 如果没有任何匹配或者只匹配到了跟节点,则只返回根节点 + List lawsTreeNodes = new ArrayList<>(); + if (nodesSet.size() <= 1) { + LawsTreeNode parentNode = allNodes.stream().filter(node -> node.getParentCode() == null).collect(Collectors.toList()).get(0); + lawsTreeNodes.add(parentNode); + } else { + lawsTreeNodes = new ArrayList<>(nodesSet); + } + // 调用wrapTreeDataToTreeList方法生成树状数据 + return FindsTreeNodeChildrenUtil.wrapTreeDataToTreeList(lawsTreeNodes); + } + + private List convertPartNameToLawsTreeNode(List allNodesPartName) { + List allNodes = new ArrayList<>(); + for (PartName partName : allNodesPartName) { + LawsTreeNode lawsTreeNode = new LawsTreeNode(); + lawsTreeNode.setId(partName.getId()); + lawsTreeNode.setNodeCode(partName.getCode()); + lawsTreeNode.setNodeName(partName.getName()); + lawsTreeNode.setParentId(partName.getParentId()); + lawsTreeNode.setDelFlag(partName.getDelFlag()); + allNodes.add(lawsTreeNode); + } + return allNodes; + } + +} + + + + From 189ca1bf08c0a9d2a9ea093303b5a7ede1e7dd99 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 19 Jan 2024 14:11:38 +0800 Subject: [PATCH 41/55] =?UTF-8?q?feat:=20=E4=BC=81=E6=A0=87=E6=9B=B4?= =?UTF-8?q?=E6=94=B9=20=E5=A4=8D=E5=AE=A1=E6=B5=81=E7=A8=8B=20=E5=8F=91?= =?UTF-8?q?=E8=B5=B7=E8=8A=82=E7=82=B9=E5=A2=9E=E5=8A=A0=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/service/ActFlowCommonService.java | 18 ++++++++++++++++++ .../impl/ProcessEsChangeServiceImpl.java | 13 +------------ .../impl/ProcessEsRecheckServiceImpl.java | 17 +++++++++++------ 3 files changed, 30 insertions(+), 18 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java index c1c98ba5..2996c481 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.jero.common.api.vo.ResultCommon; import com.jero.common.exception.JeroBootException; import com.jero.common.system.vo.LoginUser; import com.jero.modules.activiti.entity.ProcessAll; @@ -15,6 +16,7 @@ import com.jero.modules.activiti.process.common.common.DraftCommon; import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.entity.StandTypeVO; +import com.jero.modules.activiti.process.common.enums.StandardStateEnum; import com.jero.modules.activiti.process.esArchive.entity.vo.ESArchiveDataVO; import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO; import com.jero.modules.activiti.process.fb.dto.BasicTaskInfoDTO; @@ -25,6 +27,8 @@ import com.jero.modules.activiti.service.ProcessApprovalRecordService; import com.jero.modules.laws.common.util.CurrentUserUtil; import com.jero.modules.laws.enterprise.entity.EnterpriseStandardPlan; import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService; +import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard; +import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService; import com.jero.modules.sys.utils.UserUtils; import lombok.extern.slf4j.Slf4j; import org.activiti.engine.RepositoryService; @@ -76,6 +80,9 @@ public class ActFlowCommonService { @Resource private IProcessHandleService processHandleService; + @Resource + private ILawsEnterpriseStandardService esService; + /** * 启动流程实例 */ @@ -474,4 +481,15 @@ public class ActFlowCommonService { processInfoVO.setBasicProcessInfoDTO(basicProcessInfoDTO); return processInfoVO; } + + public void checkStandardState(String standardId) { + LawsEnterpriseStandard es = esService.getById(standardId); + if (es != null) { + String standardState = es.getStandardState(); + if (StandardStateEnum.ABOLISH.getStateValue().equals(standardState) || + StandardStateEnum.ARCHIVE.getStateValue().equals(standardState)) { + throw new JeroBootException(ResultCommon.CAN_NOT_EDIT_ABOLISH_OR_ARCHIVE_ES); + } + } + } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java index e09d824a..c72e5743 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java @@ -72,9 +72,6 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl - implements ProcessEsRecheckService{ + implements ProcessEsRecheckService { @Resource private ActFlowCommonService actFlowCommonService; @@ -179,7 +180,11 @@ public class ProcessEsRecheckServiceImpl extends ServiceImpl Date: Fri, 19 Jan 2024 14:12:02 +0800 Subject: [PATCH 42/55] =?UTF-8?q?feat:=20=E4=BC=81=E6=A0=87=E7=AB=8B?= =?UTF-8?q?=E9=A1=B9=E5=8F=98=E6=9B=B4=E6=B5=81=E7=A8=8B=E5=8F=91=E8=B5=B7?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E5=A2=9E=E5=8A=A0=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ProcessEsInitChangeServiceImpl.java | 10 +++++++++- .../laws/enterprise/job/ESPlanProjectStatusJob.java | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java index bae9b410..c6519602 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java @@ -14,6 +14,7 @@ import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ActFlowCommonService; 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.ESPProjectStatus; import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPProjectType; import com.jero.modules.activiti.process.esInitChange.entity.vo.InitChangeDataVO; import com.jero.modules.activiti.process.esInitChange.service.ProcessEsInitChangeService; @@ -340,7 +341,14 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl espIdList = initChangeData.getDataList().stream().map(ProcessEsInitChange::getEspId).collect(Collectors.toList()); LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESPlanProjectStatusJob.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESPlanProjectStatusJob.java index ce3b48a1..c522fa5a 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESPlanProjectStatusJob.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/job/ESPlanProjectStatusJob.java @@ -27,6 +27,7 @@ public class ESPlanProjectStatusJob implements Job { // 每天执行定时任务 判断所有进行中的计划是否逾期 逾期则修改项目状态为逾期 LambdaQueryWrapper espWrapper = new LambdaQueryWrapper<>(); espWrapper.eq(EnterpriseStandardPlan::getProjectStatus, ESPProjectStatus.IN_PROGRESS.getValue()); + espWrapper.eq(EnterpriseStandardPlan::getProjectStatus, ESPProjectStatus.OVERDUE.getValue()); espWrapper.eq(EnterpriseStandardPlan::getDelFlag, YesOrNoEnum.NO.getValue()); List list = espService.list(espWrapper); Date curDate = new Date(); @@ -35,6 +36,8 @@ public class ESPlanProjectStatusJob implements Job { curDate.after(p.getSolicitationDraftPlanCompleteDate()) || curDate.after(p.getPlanApprovalDate())) { p.setProjectStatus(ESPProjectStatus.OVERDUE.getValue()); + } else { + p.setProjectStatus(ESPProjectStatus.IN_PROGRESS.getValue()); } }); espService.updateBatchById(list); From 422a6cd81396232e4217526d67a2725a82c57990 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 19 Jan 2024 14:32:52 +0800 Subject: [PATCH 43/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/ProcessProjectStandardCommon.java | 1 + .../xml/ProcessProjectStandardTermMapper.xml | 3 +++ .../service/ProcessProjectStandardService.java | 14 ++++++++++---- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java index fb88aa90..f9a94bac 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java @@ -5,6 +5,7 @@ package com.jero.modules.activiti.process.projectstandard.common; * @date 2024-01-15 17:25 */ public class ProcessProjectStandardCommon { + public static final String PASS = "pass"; public static final String STANDARDS_ENGINEER = "standardsEngineer"; public static final String MANAGER_LEADER_LIST = "managerLeaderList"; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml index 602c542f..1c92e48d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml @@ -28,6 +28,7 @@ + @@ -67,6 +68,7 @@ ppstu.id term_user_id, ppstu.not_involved, ppstu.assess_results, + ppstu.model_series, ppstu.description, ppstu.file_id, ppstu.design_engineer @@ -91,6 +93,7 @@ ppstu.not_involved, ppstu.module_owner, ppstu.assess_results, + ppstu.model_series, ppstu.description, ppstu.file_id, ppstu.design_engineer diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index fb384be0..0a783eab 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -408,11 +408,17 @@ public class ProcessProjectStandardService extends ServiceImpl processInfoVO, ProcessDTO processDTO, boolean pass) { Task task = processDTO.getTask(); String parentExecutionId = task.getFormKey(); - ThreadLocalUtil.put(ProcessProjectAssessCommon.EXECUTION_ID,parentExecutionId); + //查询表单 + ProcessProjectStandardVO businessInfoDTO = processInfoVO.getBusinessInfoDTO(); + List termList = businessInfoDTO.getProcessProjectStandardTermList(); + List designEngineerList = termList.stream().map(ProcessProjectStandardTerm::getDesignEngineer).distinct().collect(Collectors.toList()); + // 完成任务 + ThreadLocalUtil.put(ProcessProjectAssessCommon.EXECUTION_ID,parentExecutionId); String taskId = processDTO.getTaskId(); Map variables = new HashMap<>(); - variables.put(ProcessProjectAssessCommon.PASS, pass); + variables.put(ProcessProjectStandardCommon.PASS, pass); + variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerList); taskService.complete(taskId, variables); } //部所主管级领导审批 @@ -472,7 +478,7 @@ public class ProcessProjectStandardService extends ServiceImpl variables = new HashMap<>(); - variables.put(ProcessProjectAssessCommon.PASS, pass); + variables.put(ProcessProjectStandardCommon.PASS, pass); variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerList); variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST_SIZE, designEngineerList.size()); taskService.complete(taskId, variables); From 05e30d1ab4b50b0a8fe9c524479261e021c653d6 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 19 Jan 2024 15:34:42 +0800 Subject: [PATCH 44/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jero/common/system/api/ISysBaseAPI.java | 1 + .../system/service/impl/SysBaseApiImpl.java | 16 +++++++ .../entity/ProcessProjectStandardTerm.java | 6 +++ .../xml/ProcessProjectStandardTermMapper.xml | 44 +++++++++---------- .../ProcessProjectStandardService.java | 16 ++++++- 5 files changed, 57 insertions(+), 26 deletions(-) diff --git a/laws-base/laws-base-api/jero-system-local-api/src/main/java/com/jero/common/system/api/ISysBaseAPI.java b/laws-base/laws-base-api/jero-system-local-api/src/main/java/com/jero/common/system/api/ISysBaseAPI.java index 3313f039..87b30444 100644 --- a/laws-base/laws-base-api/jero-system-local-api/src/main/java/com/jero/common/system/api/ISysBaseAPI.java +++ b/laws-base/laws-base-api/jero-system-local-api/src/main/java/com/jero/common/system/api/ISysBaseAPI.java @@ -350,4 +350,5 @@ public interface ISysBaseAPI extends CommonAPI { */ List loadDictItemByKeyword(String dictCode, String keyword, Integer pageSize); + String translateByDictMap(Map dictMap, String keys); } diff --git a/laws-module-system/src/main/java/com/jero/modules/system/service/impl/SysBaseApiImpl.java b/laws-module-system/src/main/java/com/jero/modules/system/service/impl/SysBaseApiImpl.java index cf05517e..59f025ac 100644 --- a/laws-module-system/src/main/java/com/jero/modules/system/service/impl/SysBaseApiImpl.java +++ b/laws-module-system/src/main/java/com/jero/modules/system/service/impl/SysBaseApiImpl.java @@ -33,6 +33,7 @@ import com.jero.modules.system.mapper.*; import com.jero.modules.system.service.*; import com.jero.modules.system.util.SecurityUtil; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.sequence.KeepCommand; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.jetbrains.annotations.NotNull; @@ -1166,6 +1167,21 @@ public class SysBaseApiImpl implements ISysBaseAPI { return sysDictService.loadDict(dictCode, keyword, pageSize); } + @Override + public String translateByDictMap(Map dictMap, String keys) { + if (keys == null){ + return null; + } + String[] keyList = keys.split(","); + List resultList = new ArrayList<>(); + for (String key : keyList) { + if (dictMap.containsKey(key)){ + resultList.add(dictMap.get(key)); + } + } + return String.join(",",resultList); + } + @Override public Map> translateManyDict(String dictCodes, String keys) { List dictCodeList = Arrays.asList(dictCodes.split(",")); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java index 8a365c84..ae4e7cc0 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java @@ -138,6 +138,12 @@ public class ProcessProjectStandardTerm { @ApiModelProperty(value="设计工程师") private String designEngineer; + /** + * 设计工程师 + */ + @ApiModelProperty(value="设计工程师") + private String designEngineer_dictText; + /** * 抄送人员 */ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml index 1c92e48d..bce1656c 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml @@ -39,16 +39,15 @@ select + ppstu.id term_user_id, + ppstu.not_involved, + ppstu.assess_results, + ppstu.model_series, + ppstu.description, + ppstu.file_id, + ppstu.design_engineer, - , - ppstu.id term_user_id, - ppstu.not_involved, - ppstu.assess_results, - ppstu.model_series, - ppstu.description, - ppstu.file_id, - ppstu.design_engineer from process_project_standard_term ppst left join process_project_standard_term_user ppstu on ppst.id = ppstu.term_id where ppst.process_id = #{processId} @@ -85,10 +83,6 @@ select - - - - , ppstu.id term_user_id, ppstu.not_involved, ppstu.assess_results, ppstu.description, ppstu.file_id, ppstu.design_engineer + + + from process_project_standard_term ppst left join process_project_standard_term_user ppstu on ppst.id = ppstu.term_id where ppst.process_id = #{processId} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 0a783eab..e014242d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -165,6 +165,9 @@ public class ProcessProjectStandardService extends ServiceImpl modelSeriesDict = sysBaseAPI.queryDictItemsByCode("model_series"); + Map modelSeriesDictMap = CollStreamUtil.toMap(modelSeriesDict, DictModel::getValue, DictModel::getText); + List dictModels = sysBaseAPI.queryDictItemsByCode("assess_results"); Map assessResultsMap = CollStreamUtil.toMap(dictModels, DictModel::getValue, DictModel::getText); //给条款中保存关联的信息 @@ -234,6 +240,10 @@ public class ProcessProjectStandardService extends ServiceImpl0){ @@ -390,7 +400,7 @@ public class ProcessProjectStandardService extends ServiceImpl designEngineerList = Arrays.asList(designEngineers.split(",")); designEngineerIds.addAll(designEngineerList); updateWrapper.set(ProcessProjectStandardTermUser::getDesignEngineer, designEngineerList.get(0)); + updateWrapper.set(ProcessProjectStandardTermUser::getParentExecutionId, executionId); termUserService.update(updateWrapper); if (designEngineerList.size() >= 2){ @@ -676,6 +687,7 @@ public class ProcessProjectStandardService extends ServiceImpl variables = new HashMap<>(); From d8c0f5c9f80e08b6e6d7091193a73692fd6b6f78 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 19 Jan 2024 15:55:34 +0800 Subject: [PATCH 45/55] =?UTF-8?q?feat:=20=E5=88=86=E9=A1=B5=E9=9B=B6?= =?UTF-8?q?=E9=83=A8=E4=BB=B6=E6=A0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/LawsPartNameController.java | 10 +- .../laws/standard/entity/PartName.java | 6 ++ .../laws/standard/entity/TreePage.java | 20 ++++ .../standard/service/PartNameService.java | 8 +- .../service/impl/PartNameServiceImpl.java | 102 +++++++++--------- 5 files changed, 90 insertions(+), 56 deletions(-) create mode 100644 laws-modules/src/main/java/com/jero/modules/laws/standard/entity/TreePage.java diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java index be9a7b18..545003ae 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/controller/LawsPartNameController.java @@ -1,10 +1,12 @@ package com.jero.modules.laws.standard.controller; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.AutoLog; import com.jero.modules.laws.enterprise.entity.vo.LawsTreeNodeModel; import com.jero.modules.laws.standard.entity.LawsTreeNode; import com.jero.modules.laws.standard.entity.PartName; +import com.jero.modules.laws.standard.entity.TreePage; import com.jero.modules.laws.standard.service.PartNameService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -34,9 +36,11 @@ public class LawsPartNameController { @AutoLog(value = "企业标准-零部件树") @ApiOperation(value = "企业标准-零部件树", notes = "企业标准-零部件树") @GetMapping("/") - public Result> queryENTreeList( - @RequestParam(required = false, defaultValue = "") @ApiParam("一级节点名称") String nodeName) { - List list = partNameService.queryTreeList(nodeName); + public Result> queryENTreeList( + @RequestParam(required = false, defaultValue = "") @ApiParam("一级节点名称") String nodeName, + @RequestParam(name = "pageNo", defaultValue = "1") @ApiParam("页码") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") @ApiParam("页面大小") Integer pageSize) { + TreePage list = partNameService.queryTreeList(nodeName, pageNo, pageSize); return Result.OK(list); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java index 6c610fac..19b95f7f 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/PartName.java @@ -86,6 +86,12 @@ public class PartName implements Serializable { @ApiModelProperty(value = "父级零件id") private String parentId; + /** + * 一级节点 + */ + @ApiModelProperty(value = "一级节点") + private String firstNode; + /** * 子零部件 */ diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/TreePage.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/TreePage.java new file mode 100644 index 00000000..5663812b --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/entity/TreePage.java @@ -0,0 +1,20 @@ +package com.jero.modules.laws.standard.entity; + +import lombok.Data; + +import java.util.List; + +/** + * @author: Mzaxd + * @Date: 2024/1/19 15:24 + */ +@Data +public class TreePage { + + private List records; + private long total; + private long size; + private long current; + + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java index 6cf1ff63..fc929ac3 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/PartNameService.java @@ -1,9 +1,10 @@ package com.jero.modules.laws.standard.service; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.jero.modules.laws.enterprise.entity.vo.LawsTreeNodeModel; -import com.jero.modules.laws.standard.entity.LawsTreeNode; import com.jero.modules.laws.standard.entity.PartName; import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.standard.entity.TreePage; import java.util.List; @@ -16,8 +17,11 @@ public interface PartNameService extends IService { /** * 查询零部件树 + * * @param nodeName + * @param pageNo + * @param pageSize * @return */ - List queryTreeList(String nodeName); + TreePage queryTreeList(String nodeName, Integer pageNo, Integer pageSize); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java index fbdef5f9..35514fff 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/impl/PartNameServiceImpl.java @@ -1,81 +1,81 @@ package com.jero.modules.laws.standard.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.jero.common.constant.CommonConstant; +import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; -import com.jero.modules.laws.enterprise.EnterpriseConstants; -import com.jero.modules.laws.enterprise.entity.vo.LawsTreeNodeModel; -import com.jero.modules.laws.enterprise.util.FindsTreeNodeChildrenUtil; -import com.jero.modules.laws.standard.entity.LawsTreeNode; import com.jero.modules.laws.standard.entity.PartName; +import com.jero.modules.laws.standard.entity.TreePage; import com.jero.modules.laws.standard.service.PartNameService; import com.jero.modules.laws.standard.mapper.PartNameMapper; -import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.ArrayList; -import java.util.HashSet; import java.util.List; -import java.util.Set; +import java.util.Map; +import java.util.function.Function; import java.util.stream.Collectors; + /** -* @author ThinkBook -* @description 针对表【laws_part_name】的数据库操作Service实现 -* @createDate 2024-01-19 10:37:39 -*/ + * @author ThinkBook + * @description 针对表【laws_part_name】的数据库操作Service实现 + * @createDate 2024-01-19 10:37:39 + */ @Service @Transactional(rollbackFor = JeroBootException.class) public class PartNameServiceImpl extends ServiceImpl - implements PartNameService{ + implements PartNameService { + + @Resource + private PartNameMapper partNameMapper; @Override - public List queryTreeList(String nodeName) { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(PartName::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); - List allNodesPartName = this.list(query); + public TreePage queryTreeList(String nodeName, Integer pageNo, Integer pageSize) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PartName::getDelFlag, YesOrNoEnum.NO.getValue()) + .like(StrUtil.isNotBlank(nodeName), PartName::getName, nodeName); + List allNodes = partNameMapper.selectList(queryWrapper); - // 将PartName转换为LawsTreeNode - List allNodes = this.convertPartNameToLawsTreeNode(allNodesPartName); + // 将所有节点转换为映射,以便快速查找 + Map nodeMap = allNodes.stream() + .collect(Collectors.toMap(PartName::getId, Function.identity())); - Set nodesSet = new HashSet<>(); + // 构建树形结构 + List topLevelNodes = new ArrayList<>(); + allNodes.forEach(node -> { + if (node.getParentId() == null) { + topLevelNodes.add(node); + } else { + PartName parentNode = nodeMap.get(node.getParentId()); + if (parentNode != null) { + if (parentNode.getChildPartNameList() == null) { + parentNode.setChildPartNameList(new ArrayList<>()); + } + parentNode.getChildPartNameList().add(node); + } + } + }); - List matchedNodes = allNodes.stream() - .filter(node -> node.getNodeName().contains(nodeName)) - .collect(Collectors.toList()); + // 实现分页逻辑 + int start = (pageNo - 1) * pageSize; + int end = Math.min(start + pageSize, topLevelNodes.size()); + List pageData = topLevelNodes.subList(start, end); - for (LawsTreeNode matchedNode : matchedNodes) { - nodesSet.addAll(LawsTreeNodeServiceImpl.findPathToRoot(allNodes, matchedNode)); - // 需求调整 只带上级不带下级 -// nodesSet.addAll(findAllChildren(allNodes, matchedNode)); - } - // 如果没有任何匹配或者只匹配到了跟节点,则只返回根节点 - List lawsTreeNodes = new ArrayList<>(); - if (nodesSet.size() <= 1) { - LawsTreeNode parentNode = allNodes.stream().filter(node -> node.getParentCode() == null).collect(Collectors.toList()).get(0); - lawsTreeNodes.add(parentNode); - } else { - lawsTreeNodes = new ArrayList<>(nodesSet); - } - // 调用wrapTreeDataToTreeList方法生成树状数据 - return FindsTreeNodeChildrenUtil.wrapTreeDataToTreeList(lawsTreeNodes); + // 封装分页信息 + TreePage result = new TreePage<>(); + result.setRecords(pageData); + result.setTotal(topLevelNodes.size()); + result.setSize(pageSize); + result.setCurrent(pageNo); + return result; } - private List convertPartNameToLawsTreeNode(List allNodesPartName) { - List allNodes = new ArrayList<>(); - for (PartName partName : allNodesPartName) { - LawsTreeNode lawsTreeNode = new LawsTreeNode(); - lawsTreeNode.setId(partName.getId()); - lawsTreeNode.setNodeCode(partName.getCode()); - lawsTreeNode.setNodeName(partName.getName()); - lawsTreeNode.setParentId(partName.getParentId()); - lawsTreeNode.setDelFlag(partName.getDelFlag()); - allNodes.add(lawsTreeNode); - } - return allNodes; - } } From f45eb92ce03a02cde9941956fcf6d50b629e386d Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 19 Jan 2024 16:05:03 +0800 Subject: [PATCH 46/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=98=AF=E5=90=A6=E4=B8=8E=E8=BD=A6=E5=9E=8B=E5=BC=BA?= =?UTF-8?q?=E5=85=B3=E8=81=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projectstandard/entity/ProcessProjectStandardTerm.java | 7 +++++++ .../entity/ProcessProjectStandardTermUser.java | 6 ++++++ .../mapper/xml/ProcessProjectStandardTermMapper.xml | 2 ++ .../service/ProcessProjectStandardService.java | 1 + 4 files changed, 16 insertions(+) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java index ae4e7cc0..ae45161c 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTerm.java @@ -158,6 +158,13 @@ public class ProcessProjectStandardTerm { @ApiModelProperty(value = "不涉及原因") private String notInvolved; + /** + * 是否与车型强关联 + */ + @TableField(exist = false) + @ApiModelProperty(value="是否与车型强关联") + private String isRelate; + /** * 车型系列 */ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java index 322f90fe..3a70f265 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java @@ -134,6 +134,12 @@ public class ProcessProjectStandardTermUser { @ApiModelProperty(value="父执行实例流id") private String parentExecutionId; + /** + * 是否与车型强关联 + */ + @TableField(value = "is_relate") + @ApiModelProperty(value="是否与车型强关联") + private String isRelate; /** * 车型系列 */ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml index bce1656c..238b6940 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml @@ -29,6 +29,7 @@ + @@ -88,6 +89,7 @@ ppstu.module_owner, ppstu.assess_results, ppstu.model_series, + ppstu.is_relate, ppstu.description, ppstu.file_id, ppstu.design_engineer, diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index e014242d..fb805dc1 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -724,6 +724,7 @@ public class ProcessProjectStandardService extends ServiceImpl Date: Fri, 19 Jan 2024 16:21:54 +0800 Subject: [PATCH 47/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProcessProjectStandardController.java | 2 +- .../ProcessProjectStandardTermUser.java | 7 ++++ .../ProcessProjectStandardService.java | 32 +++++++++++++++++-- 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java index a7b4b48b..d2703cb2 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/controller/ProcessProjectStandardController.java @@ -152,7 +152,7 @@ public class ProcessProjectStandardController extends JeroController> getTermUserList(ProcessProjectStandardTermUser processProjectStandardTermUser, Integer pageNo, Integer pageSize, HttpServletRequest req) { - IPage page = termUserService.queryPage(processProjectStandardTermUser, pageNo, pageSize, req); + IPage page = processProjectStandardService.getTermUserList(processProjectStandardTermUser, pageNo, pageSize, req); return Result.OK(page); } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java index 3a70f265..48278afa 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/entity/ProcessProjectStandardTermUser.java @@ -174,4 +174,11 @@ public class ProcessProjectStandardTermUser { @TableField(value = "project_approval_flag") @ApiModelProperty(value="是否立项") private Integer projectApprovalFlag; + + /** + * 任务id + */ + @TableField(exist = false) + @ApiModelProperty(value="任务id") + private String taskId; } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index fb805dc1..4b98702c 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -3,6 +3,7 @@ package com.jero.modules.activiti.process.projectstandard.service; import cn.hutool.core.collection.CollStreamUtil; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -13,6 +14,7 @@ import com.jero.common.constant.CommonConstant; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; +import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.vo.DictModel; import com.jero.common.system.vo.LoginUser; import com.jero.modules.activiti.entity.ProcessAll; @@ -63,6 +65,7 @@ import com.jero.modules.activiti.process.projectstandard.mapper.ProcessProjectSt import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import java.util.*; import java.util.stream.Collectors; @@ -209,12 +212,12 @@ public class ProcessProjectStandardService extends ServiceImpl stringProcessProjectStandardTermMap = CollStreamUtil.toIdentityMap(list, ProcessProjectStandardTerm::getSplitInfoId); return stringProcessProjectStandardTermMap; } + + public IPage getTermUserList(ProcessProjectStandardTermUser processProjectStandardTermUser, Integer pageNo, Integer pageSize, HttpServletRequest req) { + ProcessDTO processDTO = processHandleService.getProcessDTO(processProjectStandardTermUser.getTaskId()); + ProcessApprovalRecord processApprovalRecord = processDTO.getProcessApprovalRecord(); + String originUserId = processApprovalRecord.getOriginUserId(); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda() + .eq(ProcessProjectStandardTermUser::getTermId,processProjectStandardTermUser.getId()) + .eq(ProcessProjectStandardTermUser::getModuleOwner,originUserId); + Page page = new Page<>(pageNo, pageSize); + Page pageList = termUserService.page(page, queryWrapper); + //获取所有用户信息 + List userList = sysBaseAPI.getAllUser(); + Map userNameMap = new HashMap<>(); + for (LoginUser loginUser : userList) { + userNameMap.put(loginUser.getId(), loginUser.calcNameWorkNo()); + } + for (ProcessProjectStandardTermUser record : pageList.getRecords()) { + String moduleOwner = record.getModuleOwner(); + record.setModuleOwner(userNameMap.get(moduleOwner)); + String designEngineer = record.getDesignEngineer(); + record.setDesignEngineer(userNameMap.get(designEngineer)); + } + return pageList; + } } From 024f3395c6951c3929ed91dcc3d6522366007908 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 19 Jan 2024 16:29:00 +0800 Subject: [PATCH 48/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B=20=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E8=AF=84=E4=BC=B0=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projectstandard/service/ProcessProjectStandardService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 4b98702c..e4e5126b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -820,7 +820,7 @@ public class ProcessProjectStandardService extends ServiceImpl queryWrapper = new QueryWrapper<>(); queryWrapper.lambda() .eq(ProcessProjectStandardTermUser::getTermId,processProjectStandardTermUser.getId()) - .eq(ProcessProjectStandardTermUser::getModuleOwner,originUserId); + .eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader,originUserId); Page page = new Page<>(pageNo, pageSize); Page pageList = termUserService.page(page, queryWrapper); //获取所有用户信息 From b2d6fc223263a7d12c49450b4a84d3b852e79986 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 19 Jan 2024 16:49:19 +0800 Subject: [PATCH 49/55] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88?= =?UTF-8?q?=E8=A7=84=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B=20=E6=B3=95?= =?UTF-8?q?=E8=A7=84=E5=B7=A5=E7=A8=8B=E5=B8=88=E6=9F=A5=E8=AF=A2=E8=AF=A6?= =?UTF-8?q?=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xml/ProcessProjectStandardTermMapper.xml | 5 ---- .../ProcessProjectStandardService.java | 27 ++++++++++++++----- 2 files changed, 21 insertions(+), 11 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml index 238b6940..7534f091 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/mapper/xml/ProcessProjectStandardTermMapper.xml @@ -107,11 +107,6 @@ + +