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 48cb9497..e5809953 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 @@ -261,6 +261,13 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService { if (horizonValid) { isHorizontalOverstep(parameter.get(INFO_ID).toString()); } + // 企标权限校验 + if (parameter.containsKey("serialNumber")){ + SarFileSplitInfoEO sarFileSplitInfoEO = new SarFileSplitInfoEO(); + sarFileSplitInfoEO.setSerialNumber((String) parameter.get("serialNumber")); + enterpriseCheck(sarFileSplitInfoEO); + parameter.remove("serialNumber"); + } // 查询全部字段列表 List fieldList = lawsCommonMapper.getFieldList(TableNameEnum.DOCUMENT_SPLIT.getTableName()); // 列表展示字段 @@ -1033,11 +1040,21 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService { public LawsDocumentSplitView queryView(Map parameter) { LawsDocumentSplitView lawsDocumentSplitView = new LawsDocumentSplitView(); String id = (String) parameter.get(ID); + boolean itemContent = false; // 水平越权 if (parameter.containsKey("horizontalOverstep")){ isHorizontalOverstep(id); parameter.remove("horizontalOverstep"); } + + // 企标权限校验 + if (parameter.containsKey("serial_number")){ + SarFileSplitInfoEO sarFileSplitInfoEO = new SarFileSplitInfoEO(); + sarFileSplitInfoEO.setSerialNumber((String) parameter.get("serial_number")); + enterpriseCheck(sarFileSplitInfoEO); + parameter.remove("serial_number"); + } + // 文档拆分信息 DocumentSplitInfo documentSplitInfo = new DocumentSplitInfo(); documentSplitInfo.setId(id); @@ -1047,20 +1064,33 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService { List documentSplitInfos = queryByList(documentSplitInfo); lawsDocumentSplitView.setDocumentSplitInfo(documentSplitInfos.get(0)); - // 目录 - SarFileSplitMenuEOPage splitMenuEOPage = new SarFileSplitMenuEOPage(); - splitMenuEOPage.setValidFlag("0"); - splitMenuEOPage.setOrderBy("display_seq"); - splitMenuEOPage.setInfoId(id); - List sarFileSplitMenuEOS = sarFileSplitMenuEOService.queryByList(splitMenuEOPage); - // 不需要总目录层级 - lawsDocumentSplitView.setSarFileSplitMenuEO(sarFileSplitMenuEOS.get(0).getChildren()); - + if (parameter.containsKey("item_content")){ + itemContent = true; + } // 文档拆分详情 parameter.remove(ID); parameter.put(INFO_ID, id); List> documentSplitDetailByList = queryDocumentSplitDetailByList(parameter); lawsDocumentSplitView.setDocumentSplitDetail(documentSplitDetailByList); + + // 目录 + SarFileSplitMenuEOPage splitMenuEOPage = new SarFileSplitMenuEOPage(); + splitMenuEOPage.setValidFlag("0"); + splitMenuEOPage.setOrderBy("display_seq"); + splitMenuEOPage.setInfoId(id); + if (itemContent && CollectionUtils.isNotEmpty(documentSplitDetailByList)){ + List menuId = documentSplitDetailByList.stream() + .map(v -> String.valueOf(v.get("menu_id"))).distinct() + .collect(Collectors.toList()); + splitMenuEOPage.setIdList(menuId); + List sarFileSplitMenuEOS = sarFileSplitMenuEOService.queryByList(splitMenuEOPage); + lawsDocumentSplitView.setSarFileSplitMenuEO(sarFileSplitMenuEOS); + }else { + List sarFileSplitMenuEOS = sarFileSplitMenuEOService.queryByList(splitMenuEOPage); + // 不需要总目录层级 + lawsDocumentSplitView.setSarFileSplitMenuEO(sarFileSplitMenuEOS.get(0).getChildren()); + } + return lawsDocumentSplitView; } @Override diff --git a/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml b/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml index fa171aa4..21ef7139 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/split/mapper/xml/SarFileSplitMenuEOMapper.xml @@ -71,6 +71,12 @@ and modify_user ${modifyUserOperator} #{modifyUser} + + and id in + + #{id} + + @@ -178,7 +184,7 @@