| | |
| | | } |
| | | |
| | | 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); |
| | | } |
| | |
| | | private Field getAnnexField(Object obj, MetaEntity meta) { |
| | | try { |
| | | String str = ATTACH_TABS.get(meta.getTab()); |
| | | |
| | | Field field = obj.getClass().getDeclaredField(str); |
| | | field.setAccessible(true); |
| | | |
| | |
| | | } |
| | | |
| | | /** |
| | | * 查找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; |
| | | } |