| | |
| | | */ |
| | | public void insertFiles(UserEntity ue, List<MetaFileEntity> list, HttpServletRequest req) { |
| | | checkMetaFiles(ue, list); |
| | | MetaFileEntity xlsMeta = getExcelMetaEntity(list); |
| | | loadData(list); |
| | | copyFiles(list); |
| | | insertMetas(list); |
| | | if (null != xlsMeta) { |
| | | excelLoader(xlsMeta, req); |
| | | } |
| | | excelLoader(list, req); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | /** |
| | | * 获取Excel元数据实体 |
| | | */ |
| | | private MetaFileEntity getExcelMetaEntity(List<MetaFileEntity> list) { |
| | | List<MetaFileEntity> xlsList = getExcelFiles(list); |
| | | if (xlsList.isEmpty()) { |
| | | return null; |
| | | } |
| | | |
| | | return getExcelMeta(xlsList); |
| | | } |
| | | |
| | | /** |
| | | * Excel入库 |
| | | */ |
| | | private String excelLoader(MetaFileEntity xlsMeta, HttpServletRequest req) { |
| | | String guid; |
| | | private String excelLoader(List<MetaFileEntity> list, HttpServletRequest req) { |
| | | try { |
| | | guid = fmeService.excelLoader(xlsMeta, req); |
| | | List<MetaFileEntity> xlsList = getExcelFiles(list); |
| | | if (xlsList.isEmpty()) { |
| | | return null; |
| | | } |
| | | |
| | | MetaFileEntity xlsMeta = getExcelMeta(xlsList); |
| | | String guid = fmeService.excelLoader(xlsMeta, req); |
| | | |
| | | return guid; |
| | | } catch (Exception ex) { |
| | | log.error(ex.getMessage(), ex); |
| | | guid = null; |
| | | return null; |
| | | } |
| | | |
| | | return guid; |
| | | } |
| | | |
| | | /** |
| | |
| | | private List<MetaFileEntity> getExcelFiles(List<MetaFileEntity> list) { |
| | | List<MetaFileEntity> xlsList = new ArrayList<>(); |
| | | for (MetaFileEntity mf : list) { |
| | | if (null != mf.getMsg()) { |
| | | continue; |
| | | } |
| | | if (StaticData.XLS.equals(mf.getExtName()) || StaticData.XLSX.equals(mf.getExtName()) || mf.getName().contains("WBS")) { |
| | | if ("成功".equals(mf.getMsg()) && isExcel(mf)) { |
| | | xlsList.add(mf); |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | /** |
| | | * 是/否为Excel |
| | | */ |
| | | private boolean isExcel(MetaFileEntity mf) { |
| | | return StaticData.XLS.equals(mf.getExtName()) || StaticData.XLSX.equals(mf.getExtName()); |
| | | } |
| | | |
| | | /** |
| | | * 获取Excel的元数据 |
| | | */ |
| | | private MetaFileEntity getExcelMeta(List<MetaFileEntity> xlsList) { |