From 233336b97af9fe4994c92803ee8f1be64f496300 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期日, 05 二月 2023 16:32:15 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/service/all/UploadAttachService.java | 40 +++++++++++++++++++++++++++++++++++++--- 1 files changed, 37 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/lf/server/service/all/UploadAttachService.java b/src/main/java/com/lf/server/service/all/UploadAttachService.java index dac906f..6e94fea 100644 --- a/src/main/java/com/lf/server/service/all/UploadAttachService.java +++ b/src/main/java/com/lf/server/service/all/UploadAttachService.java @@ -260,10 +260,20 @@ } Field field = getAnnexField(list.get(0), meta); - + String folder = meta.getName().split(".")[0].trim().toLowerCase() + File.separator; int rows = 0; for (Object obj : list) { + String name = getAnnexName(obj, field); + if (StringHelper.isEmpty(name)) { + continue; + } + + String file = findAnnexFile(name, folder, files); + if (null == file) { + continue; + } + BaseEntity be = (BaseEntity) obj; rows += insertXlsAnnex(be, files); } @@ -301,6 +311,7 @@ private Field getAnnexField(Object obj, MetaEntity meta) { try { String str = ATTACH_TABS.get(meta.getTab()); + Field field = obj.getClass().getDeclaredField(str); field.setAccessible(true); @@ -311,10 +322,33 @@ } /** - * 鏌ユ壘Excel闄勪欢 + * 鑾峰彇闄勪欢鍚嶇О */ - private String findXlsAnnex(Object obj) { + private String getAnnexName(Object obj, Field field) { + try { + Object val = field.get(obj); + return null == val ? null : val.toString().trim(); + } catch (Exception ex) { + return null; + } + } + + /** + * 鏌ユ壘闄勪欢鏂囦欢 + */ + private String findAnnexFile(String name, String folder, List<String> files) { + name = File.separator + name.split(".")[0].toLowerCase(); + for (String file : files) { + if (file.toLowerCase().contains(folder) && file.toLowerCase().contains(name)) { + return file; + } + } + for (String file : files) { + if (file.toLowerCase().contains(name)) { + return file; + } + } return null; } -- Gitblit v1.9.3