diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/oss/service/impl/OSSFileServiceImpl.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/oss/service/impl/OSSFileServiceImpl.java index bf1ccd851..4fc57b1c4 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/oss/service/impl/OSSFileServiceImpl.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/oss/service/impl/OSSFileServiceImpl.java @@ -387,10 +387,12 @@ public class OSSFileServiceImpl extends ServiceImpl impl } LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.in(OSSFile::getId, id.split(",")); + wrapper.orderByAsc(OSSFile::getCreateTime); List list = this.list(wrapper); if (list.size() == 0) { LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.in(OSSFile::getConnectId, id.split(",")); + lambdaQueryWrapper.orderByAsc(OSSFile::getCreateTime); list = this.list(lambdaQueryWrapper); } return list; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/home/service/impl/HomeFunctionModuleEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/home/service/impl/HomeFunctionModuleEOServiceImpl.java index ea18ace2b..e5a01ff5e 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/home/service/impl/HomeFunctionModuleEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/home/service/impl/HomeFunctionModuleEOServiceImpl.java @@ -144,6 +144,19 @@ public class HomeFunctionModuleEOServiceImpl extends ServiceImpl homeFunctionModuleEOSTemp = new ArrayList<>(); + //第一次配置后, 重新添加权限的图标 + for (HomeFunctionModuleEO homeFunctionModuleEO : homeFunctionModuleEOList) { + List collect = metaList.stream().filter(e -> homeFunctionModuleEO.getIconName().equals(e.getName())).collect(Collectors.toList()); + if(ObjectUtils.isNotEmpty(collect)){ + List iconNameList = homeFunctionModuleEOS.stream().map(HomeFunctionModuleEO::getIconName).collect(Collectors.toList()); + //有权限但是配有配置的图标 + if(!iconNameList.contains(homeFunctionModuleEO.getIconName())){ + homeFunctionModuleEOSTemp.add(homeFunctionModuleEO); + } + } + } + + //有权限且第一次配置的图标(每个用户会将配置的和没有配置的数据存一套) for (SysPermission sysPermission : metaList) { List collect = homeFunctionModuleEOS.stream().filter(e -> e.getIconName().equals(sysPermission.getName())).collect(Collectors.toList()); if(ObjectUtils.isNotEmpty(collect)){ diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/job/LawsOpinionGatherRemindJob.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/job/LawsOpinionGatherRemindJob.java index fe112748e..2c11e5c82 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/job/LawsOpinionGatherRemindJob.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/job/LawsOpinionGatherRemindJob.java @@ -17,10 +17,7 @@ import org.quartz.JobExecutionException; import org.springframework.beans.factory.annotation.Autowired; import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.GregorianCalendar; -import java.util.List; +import java.util.*; /** * 法规意见收集表 - 定时器 @@ -62,22 +59,30 @@ public class LawsOpinionGatherRemindJob implements Job { throw new JeroBootException("日期转换错误"); } if (days == 3) { - List userIdList = this.workFlowFeignClient.getLawsOpinionGatherFlowAssigneeList(lawsOpinionGatherEO.getId()); - if(CollectionUtils.isNotEmpty(userIdList)){ - JSONObject sendJsonObject = new JSONObject(); - sendJsonObject.put("msgType", MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_THREE_DAYS_BEFORE_MSG.getValue()); - sendJsonObject.put("lawsOpinionGatherId",lawsOpinionGatherEO.getId()); - sendJsonObject.put("userIdList",userIdList); - this.lawsOpinionGatherEOService.workFlowSendMsg(sendJsonObject); + Map map = this.workFlowFeignClient.getLawsOpinionGatherFlowAssigneeList(lawsOpinionGatherEO.getId()); + if(!map.isEmpty()){ + for (String key : map.keySet()) { + JSONObject sendJsonObject = new JSONObject(); + sendJsonObject.put("msgType", MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_THREE_DAYS_BEFORE_MSG.getValue()); + sendJsonObject.put("lawsOpinionGatherId",lawsOpinionGatherEO.getId()); + sendJsonObject.put("taskId",map.get(key)); + sendJsonObject.put("actiProcInstId",lawsOpinionGatherEO.getActiProcInstId()); + sendJsonObject.put("evaluatorIds",key); + this.lawsOpinionGatherEOService.workFlowSendMsg(sendJsonObject); + } } } else if (endTime.equals(now)) { - List userIdList = this.workFlowFeignClient.getLawsOpinionGatherFlowAssigneeList(lawsOpinionGatherEO.getId()); - if(CollectionUtils.isNotEmpty(userIdList)){ - JSONObject sendJsonObject = new JSONObject(); - sendJsonObject.put("msgType", MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_TODAY_MSG.getValue()); - sendJsonObject.put("lawsOpinionGatherId",lawsOpinionGatherEO.getId()); - sendJsonObject.put("userIdList",userIdList); - this.lawsOpinionGatherEOService.workFlowSendMsg(sendJsonObject); + Map map = this.workFlowFeignClient.getLawsOpinionGatherFlowAssigneeList(lawsOpinionGatherEO.getId()); + if(!map.isEmpty()){ + for (String key : map.keySet()) { + JSONObject sendJsonObject = new JSONObject(); + sendJsonObject.put("msgType", MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_TODAY_MSG.getValue()); + sendJsonObject.put("lawsOpinionGatherId",lawsOpinionGatherEO.getId()); + sendJsonObject.put("taskId",map.get(key)); + sendJsonObject.put("actiProcInstId",lawsOpinionGatherEO.getActiProcInstId()); + sendJsonObject.put("evaluatorIds",key); + this.lawsOpinionGatherEOService.workFlowSendMsg(sendJsonObject); + } } } /*if(StringUtils.equals(nextDayStr,sdf.format(lawsOpinionGatherEO.getEndTime()))){ diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java index 2d490d9f3..021c749ed 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/lawsOpinionGather/service/impl/LawsOpinionGatherEOServiceImpl.java @@ -214,6 +214,8 @@ public class LawsOpinionGatherEOServiceImpl extends ServiceImpl) jsonObject.get("userIdList"); + userIdList.add(jsonObject.getString("evaluatorIds")); cnContentUpper = "您好,该任务将于3天后到期,请及时查看处理,谢谢!"; cnContentLower = "编号: " + lawsOpinionGatherEO.getSerialNumber() + @@ -366,9 +374,10 @@ public class LawsOpinionGatherEOServiceImpl extends ServiceImpl) jsonObject.get("userIdList"); + hrefFeishu = backUrl + "/regulatoryProcessReview?prcId="+ actiProcInstId +"&taskIds="+ taskId +"&prcType=5&router=%2FregulatoryAssessmentTasks&prcNum="+ lawsOpinionGatherEO.getPrcNum() +"&taskDefinitionKey=pgrpg&isDisabled=false"; + } else if (StringUtils.equals(msgType, MsgTypeEnum.LAWS_OPOMOPM_GATHER_ENALUATOR_EXPIRE_REMIND_TODAY_MSG.getValue())){ + userIdList.add(jsonObject.getString("evaluatorIds")); cnContentUpper = "您好,该任务将于今天到期,请尽快查看处理,谢谢!"; cnContentLower = "编号: " + lawsOpinionGatherEO.getSerialNumber() + "\n标题: " + lawsOpinionGatherEO.getTitle() + @@ -378,6 +387,8 @@ public class LawsOpinionGatherEOServiceImpl extends ServiceImpl) jsonObject.get("userIdList"); @@ -405,8 +419,7 @@ public class LawsOpinionGatherEOServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(ProjectLibraryRoleRelEO::getProjectLibraryId,projectLibraryBase.getId()); - ProjectLibraryRoleRelEO projectLibraryRoleRelEO = projectLibraryRoleRelEOService.getOne(queryWrapper); - if(ObjectUtils.isNotEmpty(projectLibraryRoleRelEO)){ - projectLibraryRoleRelEO.setId(UUID.randomUUID().toString().replace("-", "")); - projectLibraryRoleRelEO.setProjectLibraryId(projectId); - projectLibraryRoleRelEOService.add(projectLibraryRoleRelEO); + List projectLibraryRoleRelEOList = projectLibraryRoleRelEOService.list(queryWrapper); + if(ObjectUtils.isNotEmpty(projectLibraryRoleRelEOList)){ + for (ProjectLibraryRoleRelEO projectLibraryRoleRelEO : projectLibraryRoleRelEOList) { + projectLibraryRoleRelEO.setId(UUID.randomUUID().toString().replace("-", "")); + projectLibraryRoleRelEO.setProjectLibraryId(projectId); + projectLibraryRoleRelEOService.add(projectLibraryRoleRelEO); + } } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml index 81b37fa4c..0d7e61b3d 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml @@ -78,7 +78,9 @@ pi.prc_name, plb.project_name_id, plb.target_market, - plb.studio_engineer + plb.studio_engineer, + plb.project_version, + plb.parent_id FROM process_info pi left join project_library_base plb on plb.id = pi.project_library_id @@ -160,7 +162,9 @@ pi.prc_name, plb.project_name_id, plb.target_market, - plb.studio_engineer + plb.studio_engineer, + plb.project_version, + plb.parent_id FROM process_info pi LEFT JOIN project_library_base plb ON plb.id = pi.project_library_id @@ -212,7 +216,9 @@ pi.prc_name, plb.project_name_id, plb.target_market, - plb.studio_engineer + plb.studio_engineer, + plb.project_version, + plb.parent_id FROM process_info pi LEFT JOIN project_library_base plb ON plb.id = pi.project_library_id diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java index afb8c12d6..b2f1ca3d4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java @@ -5,7 +5,9 @@ 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.api.vo.Result; +import com.jero.common.constant.enums.CutEnum; import com.jero.common.exception.JeroBootException; +import com.jero.common.system.vo.DictModel; import com.jero.common.system.vo.LoginUser; import com.jero.modules.lawsOpinionGather.entity.LawsOpinionGatherEO; import com.jero.modules.lawsOpinionGather.service.ILawsOpinionGatherEOService; @@ -23,6 +25,8 @@ import com.jero.modules.project.service.IProjectLibraryBaseService; import com.jero.modules.project.service.IProjectTaskInventoryDetailEOService; import com.jero.modules.project.service.IProjectTaskInventoryEOService; import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.enums.DicCodeEnum; +import com.jero.modules.system.service.ISysDictService; import com.jero.modules.system.service.ISysUserService; import com.jero.modules.todoCenter.entity.ProcessInfoDetailEO; import com.jero.modules.todoCenter.entity.ProcessInfoEO; @@ -78,6 +82,8 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl targetMarketList = this.sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode()); + + String targetMarket = getMarket(cut, targetMarketList, data.getTargetMarket()); + //主项目的版本号 + String projectVersion = ""; + if(StringUtils.isBlank(data.getParentId())){ + projectVersion = "00"; + }else{ + projectVersion = data.getProjectVersion(); + } + + data.setProjectName(data.getProjectName() + "-" + data.getYearName() + "-" + targetMarket + "-" + projectVersion); + } //设置任务清单明细表id if(CollectionUtils.isNotEmpty(finalTaskInventoryDetailList)){ @@ -1063,4 +1084,28 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl targetMarketList, String targetMarkets) { + List dictModelList = new ArrayList<>(); + for (String s : targetMarkets.split(",")) { + List dictModelListTemp = targetMarketList.stream() + .filter(e -> s.equals(e.getValue())).collect(Collectors.toList()); + dictModelList.addAll(dictModelListTemp); + } + String targetMarket = ""; + if(dictModelList.size() != 0){ + StringBuilder sb = new StringBuilder(); + for (DictModel dictModel : dictModelList) { + if(CutEnum.CN.getValue().equals(cut)){ + sb.append(dictModel.getText()+","); + }else{ + sb.append(dictModel.getTextEn()+","); + } + } + if(com.jero.modules.system.util.StringUtils.isNotBlank(sb)){ + targetMarket = sb.substring(0,sb.length()-1); + } + } + return targetMarket; + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/vo/ProcessInfoVO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/vo/ProcessInfoVO.java index 94a903a45..9ea695af6 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/vo/ProcessInfoVO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/vo/ProcessInfoVO.java @@ -107,4 +107,8 @@ public class ProcessInfoVO implements Serializable { /**标准信息**/ private String standardInfo; + /**项目版本**/ + private String projectVersion; + /**主项目id parent_id**/ + private String parentId; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java index 32b08b47e..1c8fa71ec 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/feginClient/WorkFlowFeignClient.java @@ -174,7 +174,7 @@ public interface WorkFlowFeignClient { Result deleteProcessInstanceByTaskId(@RequestParam("taskId") String taskId); @RequestMapping(value = "/bat-wkflow/task/getLawsOpinionGatherFlowAssigneeList",method = RequestMethod.GET) - List getLawsOpinionGatherFlowAssigneeList(@RequestParam("lawsOpinionGatherId") String lawsOpinionGatherId); + Map getLawsOpinionGatherFlowAssigneeList(@RequestParam("lawsOpinionGatherId") String lawsOpinionGatherId); @RequestMapping(value = "/bat-wkflow/task/getTaskAssigneeListByPrcIds",method = RequestMethod.GET) List getTaskAssigneeListByPrcIds(@RequestParam("actiProcInstIds") String actiProcInstIds);