From 71726a1cb05790d6841595ef7daef5173f2cddfa Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 29 三月 2023 09:43:11 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/service/show/DataLibService.java | 39 +++++++++++++++++++++++++++------------ 1 files changed, 27 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/lf/server/service/show/DataLibService.java b/src/main/java/com/lf/server/service/show/DataLibService.java index 9a3c8b7..adf6c3c 100644 --- a/src/main/java/com/lf/server/service/show/DataLibService.java +++ b/src/main/java/com/lf/server/service/show/DataLibService.java @@ -138,6 +138,9 @@ } for (String id : ids) { + if (StringHelper.isEmpty(id)) { + continue; + } if (!rs.contains(id)) { rs.add(id); } @@ -148,24 +151,21 @@ * 璇锋眰DB鏁版嵁涓嬭浇 */ public String downloadDbReq(UserEntity ue, DownloadReqEntity dr) { - Map<String, String> annexMap = new HashMap<>(3); - Map<String, List<?>> dataMap = new HashMap<>(3); + Map<String, List<?>> dataMap = new HashMap<>(2); + Map<String, List<AttachEntity>> annexMap = new HashMap<>(2); queryData(dr, dataMap, annexMap); if (dataMap.size() == 0) { return null; } - // - - return null; } /** - * 鏌ヨ鏁版嵁 + * 鏌ヨ鏁版嵁+闄勪欢 */ - private void queryData(DownloadReqEntity dr, Map<String, List<?>> dataMap , Map<String, String> annexMap) { + private void queryData(DownloadReqEntity dr, Map<String, List<?>> dataMap, Map<String, List<AttachEntity>> annexMap) { for (String enity : dr.getEntities()) { try { BasicMapper baseMapper = ClassHelper.getBasicMapper(enity); @@ -174,16 +174,30 @@ } QueryWrapper wrapper = createQueryWrapper(baseMapper, dr); - List<?> list = baseMapper.selectList(wrapper); + List list = baseMapper.selectList(wrapper); if (null == list || list.size() == 0) { continue; } - // SQL鐗囨 - String sqlSegment = wrapper.getSqlSegment(); - + String tab = BaseQueryService.getTabName(baseMapper); if (!dataMap.containsKey(enity)) { dataMap.put(enity, list); + } else { + dataMap.get(enity).addAll(list); + } + if (wrapper.isEmptyOfWhere()) { + wrapper.apply("1 = 1"); + } + + List<AttachEntity> annex = baseMapper.selectAnnex(tab, wrapper); + if (null == annex || annex.isEmpty()) { + continue; + } + + if (!annexMap.containsKey(enity)) { + annexMap.put(enity, annex); + } else { + annexMap.get(enity).addAll(annex); } } catch (Exception ex) { log.error(ex.getMessage(), ex); @@ -202,6 +216,7 @@ wrapper.apply(dirs); } if (!StringHelper.isEmpty(dr.getDepcode())) { + // wrapper.apply(String.format("depid like '%s'", StringHelper.getRightLike(dr.getDepcode()))) wrapper.likeRight("depid", dr.getDepcode()); } if (baseMapper instanceof GeomBaseMapper && !StringHelper.isEmpty(dr.getWkt())) { @@ -421,7 +436,7 @@ removeDuplicate(list); setRightLike(list, field); - return StringHelper.join(list, " or "); + return "(" + StringHelper.join(list, " or ") + ")"; } /** -- Gitblit v1.9.3