From 683e5b1adee64e1edbd82641ff0bd2a16177c2d2 Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Mon, 25 Apr 2022 18:01:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=87=E6=A1=A3=E5=BA=93--=E4=BA=BA=E5=91=98?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E5=AD=97=E6=AE=B5=20=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=92=8C=E5=88=97=E8=A1=A8=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BussDocumentLibraryEOServiceImpl.java | 70 ++++++++++++++++++- 1 file changed, 67 insertions(+), 3 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java index 4a992b72d..7a71f4d4f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java @@ -1104,13 +1104,33 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue()); + + //过滤所有人员选择类型的字段 + List personnelOnlCgformFieldList = fieldList.stream() + .filter(e -> FieldTypeEnum.PERSON.getValue().equals(e.getFieldShowType())).collect(Collectors.toList()); + if(personnelOnlCgformFieldList.size() != 0){ + List collect = personnelOnlCgformFieldList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList()); + List personnelList = new ArrayList<>(); + for (Map.Entry entry : map.entrySet()) { + String key = entry.getKey(); + if(collect.contains(key)){ + personnelList.add(key); + } + } + if(personnelList.size() != 0){ + for (String personnel : personnelList) { + map.put(personnel, map.get(personnel+"_id")); + map.remove(personnel+"_id"); + } + } + } //代替标准不为空,需要向被替代标准的法规工程师发送站内通知和飞书信息,提醒内容:"新标准编号"已实施,请注意更新“替代标准编号”状态 String cut = (String) map.get("cut"); map.remove("cut"); map.remove("replace_standard_id"); map.remove("corresponding_standard_id"); - //字段属性 - List fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue()); //获取搜索中心字段 List searchFieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(e.getIsShowSearch())).collect(Collectors.toList()); //文件类型字段 @@ -2595,16 +2615,59 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl FieldTypeEnum.FILE.getValue().equals(e.getFieldShowType())) .collect(Collectors.toList()); List fileList = onlCgformFieldFileList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList()); + //过滤出人员选择字段 + List personnelPnlCgformFieldFileList = fieldList.stream() + .filter(e -> FieldTypeEnum.PERSON.getValue().equals(e.getFieldShowType())) + .collect(Collectors.toList()); + List personnelList = personnelPnlCgformFieldFileList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList()); + List personnelValue = new ArrayList<>(); + List records = infoPage.getRecords(); + for (Map record : records) { + Map record1 = (Map) record; + for (Map.Entry entry : record1.entrySet()) { + //过滤出人员选择的数据 + if(personnelList.size() != 0 && personnelList.contains(entry.getKey())){ + String value = (String) entry.getValue(); + if(ObjectUtils.isNotEmpty(value)){ + personnelValue.addAll(Arrays.asList(value.split(","))); + } + } + } + } + List userList = new ArrayList<>(); + if(personnelValue.size() != 0){ + //查询用户信息(根据用户名) + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.in(SysUser::getId,personnelValue); + userList = sysUserService.list(wrapper); + } //数据字典 List sysDictItems = sysDictItemServiceImpl.selectItemsAll(); //下拉选处理数据字典 - List records = infoPage.getRecords(); List idList = new ArrayList<>(); List fileIdLidt = new ArrayList<>(); + for (Map record : records) { Map record1 = (Map) record; idList.add((String) record1.get("id")); for (Map.Entry entry : record1.entrySet()) { + String key = entry.getKey(); + String value = (String) entry.getValue(); + //处理人员选择 + if(personnelList.contains(key) && StringUtils.isNotBlank(value)){ + StringBuilder sb = new StringBuilder(); + for (String userId : value.split(",")) { + List sysUserList = userList.stream().filter(e -> userId.equals(e.getId())).collect(Collectors.toList()); + if(sysUserList.size() != 0){ + sb.append(sysUserList.get(0).getUsername()+","); + } + } + if(StringUtils.isNotBlank(sb)){ + String substring = sb.substring(0, sb.length() - 1); + entry.setValue(substring); + } + } + //下拉选处理数据字典 dictItem(sysDictItems, entry, cut, fieldList,null); treeDictItem(categoryList, entry, treeFieldList, cut,null); @@ -2613,6 +2676,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl fileInfos = iOSSFileService.getFileInfos(StringUtils.join(fileIdLidt, ",")); if(fileInfos.size() != 0){