管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2022-11-20 2232f91a091927cb90f5e7ebb4e6b62f27ca4cef
src/main/java/com/lf/server/service/data/DataLoaderService.java
@@ -1,5 +1,6 @@
package com.lf.server.service.data;
import com.lf.server.entity.ctrl.TabMapperEntity;
import com.lf.server.entity.data.MetaEntity;
import com.lf.server.entity.data.MetaFileEntity;
import com.lf.server.helper.FileHelper;
@@ -22,15 +23,22 @@
    @Autowired
    MetaFileService metaFileService;
    private final static String XLS = ".xls";
    private final static String MDB = ".mdb";
    private final static String SHP = ".shp";
    private final static String GDB = ".gdb";
    /**
     * 插入文件
     */
    public int insertFiles(MetaEntity entity, List<MetaFileEntity> list) {
    public int insertFiles(MetaEntity entity, List<MetaFileEntity> list, List<TabMapperEntity> tabs) {
        int count = 0;
        try {
            String temp = pathHelper.getConfig().getTempPath();
            String root = pathHelper.getUploadFullPath();
            String uploadPath = pathHelper.getConfig().getUploadPath();
            for (MetaFileEntity mf : list) {
                String filePath = getFilePath(temp, root, mf);
@@ -40,20 +48,18 @@
                // 元数据
                MetaEntity me = createMetaEntity(entity, mf);
                Integer rows = metaService.insert(me);
                if (rows < 1) {
                if (metaService.insert(me) < 1) {
                    continue;
                }
                // 元数据文件
                MetaFileEntity mfe = createMetaFileEntity(entity, mf, filePath);
                rows = metaFileService.insert(mfe);
                if (rows < 1) {
                if (metaFileService.insert(mfe) < 1) {
                    continue;
                }
                rows = insertDb(mfe, uploadPath);
                if (rows > 0) {
                // 入库
                if (null != me.getType() && insertDb(me, mfe, tabs) > 0) {
                    count++;
                }
            }
@@ -133,16 +139,16 @@
     * 获取文件类型
     */
    private String getType(String name) {
        if (name.contains(".xls")) {
        if (name.contains(XLS)) {
            return "xls";
        }
        if (name.contains(".mdb")) {
        if (name.contains(MDB)) {
            return "mdb";
        }
        if (name.contains(".shp")) {
        if (name.contains(SHP)) {
            return "shp";
        }
        if (name.contains(".gdb")) {
        if (name.contains(GDB)) {
            return "gdb";
        }
@@ -152,9 +158,19 @@
    /**
     * 插入数据库
     */
    private Integer insertDb(MetaFileEntity mfe, String root) {
        return 0;
    private Integer insertDb(MetaEntity me, MetaFileEntity mfe, List<TabMapperEntity> tabs) {
        String root = pathHelper.getConfig().getUploadPath();
        switch (me.getType()) {
            case "xls":
                return 1;
            case "mdb":
                return 2;
            case "shp":
                return 3;
            case "gdb":
                return 4;
            default:
                return 0;
        }
    }
}