管道基础大数据平台系统开发-【后端】-Server
22
sws
2022-11-23 d14a82b015ae737cfc1c8ceb959f03d79f71e4fd
22
已添加1个文件
已修改9个文件
215 ■■■■ 文件已修改
src/main/java/com/lf/server/controller/all/BaseUploadController.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/controller/data/DataLoaderController.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/controller/data/DataUploadController.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/helper/AccessHelper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/helper/GdbHelper.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/helper/MdbHelper.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/helper/ShpHelper.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/mapper/data/MetaMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/service/all/BaseUploadService.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/service/data/MetaService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/controller/all/BaseUploadController.java
@@ -108,22 +108,6 @@
    }
    @SysLog()
    @ApiOperation(value = "查询文件")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "path", value = "路径", dataType = "String", paramType = "query")
    })
    @GetMapping(value = "/selectFiles")
    public ResponseMsg<List<MetaFileEntity>> selectFiles(String path) {
        try {
            List<MetaFileEntity> list = baseUploadService.selectFiles(path);
            return success(list);
        } catch (Exception ex) {
            return fail(ex.getMessage(), null);
        }
    }
    @SysLog()
    @ApiOperation(value = "上传文件")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "path", value = "路径", dataType = "String", paramType = "query")
src/main/java/com/lf/server/controller/data/DataLoaderController.java
@@ -7,11 +7,13 @@
import com.lf.server.entity.ctrl.TabMapperEntity;
import com.lf.server.entity.ctrl.UploadEntity;
import com.lf.server.entity.data.MetaEntity;
import com.lf.server.entity.data.MetaFileEntity;
import com.lf.server.entity.sys.UserEntity;
import com.lf.server.helper.StringHelper;
import com.lf.server.helper.WebHelper;
import com.lf.server.service.all.BaseQueryService;
import com.lf.server.service.data.DataLoaderService;
import com.lf.server.service.data.MetaService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -20,6 +22,8 @@
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@@ -32,11 +36,62 @@
@RequestMapping("/dataLoader")
public class DataLoaderController extends BaseUploadController {
    @Autowired
    MetaService metaService;
    @Autowired
    BaseQueryService baseQueryService;
    @Autowired
    DataLoaderService dataLoaderService;
    private final static String FILE_TYPES = "'xls','shp','gdb','mdb'";
    public static List<String> extList = new ArrayList<>(Arrays.asList(".xls", ".xlsx", ".mdb", ".zip"));
    @SysLog()
    @ApiOperation(value = "分页查询上传数据并返回记录数")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "Integer", paramType = "query", example = "10"),
            @ApiImplicitParam(name = "pageIndex", value = "分页数(从1开始)", dataType = "Integer", paramType = "query", example = "1")
    })
    @GetMapping(value = "/selectByPageForUpload")
    public ResponseMsg<Object> selectByPageForUpload(Integer pageSize, Integer pageIndex, HttpServletRequest req) {
        try {
            if (pageSize < 1 || pageIndex < 1) {
                return fail("每页页数或分页数小于1", null);
            }
            UserEntity ue = tokenService.getCurrentUser(req);
            int count = metaService.selectCountForUpload(ue.getId(), FILE_TYPES);
            if (count == 0) {
                return success(0, null);
            }
            List<MetaEntity> list = metaService.selectByPageForUpload(ue.getId(), FILE_TYPES, pageSize, pageSize * (pageIndex - 1));
            return success(count, list);
        } catch (Exception ex) {
            return fail(ex.getMessage(), null);
        }
    }
    @SysLog()
    @ApiOperation(value = "查询文件")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "path", value = "路径", dataType = "String", paramType = "query")
    })
    @GetMapping(value = "/selectFiles")
    public ResponseMsg<List<MetaFileEntity>> selectFiles(String path) {
        try {
            List<MetaFileEntity> list = baseUploadService.selectFiles(path, extList);
            return success(list);
        } catch (Exception ex) {
            return fail(ex.getMessage(), null);
        }
    }
    @SysLog()
    @ApiOperation(value = "查询所有表")
    @GetMapping(value = "/selectTabs")
src/main/java/com/lf/server/controller/data/DataUploadController.java
@@ -5,10 +5,12 @@
import com.lf.server.entity.all.ResponseMsg;
import com.lf.server.entity.ctrl.UploadEntity;
import com.lf.server.entity.data.MetaEntity;
import com.lf.server.entity.data.MetaFileEntity;
import com.lf.server.entity.sys.UserEntity;
import com.lf.server.helper.StringHelper;
import com.lf.server.helper.WebHelper;
import com.lf.server.service.data.DataUploadService;
import com.lf.server.service.data.MetaService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -18,6 +20,7 @@
import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.List;
/**
 * æ•°æ®ä¸Šä¼ 
@@ -28,8 +31,57 @@
@RequestMapping("/dataUpload")
public class DataUploadController extends BaseUploadController {
    @Autowired
    MetaService metaService;
    @Autowired
    DataUploadService dataUploadService;
    private final static String FILE_TYPES = "'file'";
    @SysLog()
    @ApiOperation(value = "分页查询上传数据并返回记录数")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "Integer", paramType = "query", example = "10"),
            @ApiImplicitParam(name = "pageIndex", value = "分页数(从1开始)", dataType = "Integer", paramType = "query", example = "1")
    })
    @GetMapping(value = "/selectByPageForUpload")
    public ResponseMsg<Object> selectByPageForUpload(Integer pageSize, Integer pageIndex, HttpServletRequest req) {
        try {
            if (pageSize < 1 || pageIndex < 1) {
                return fail("每页页数或分页数小于1", null);
            }
            UserEntity ue = tokenService.getCurrentUser(req);
            int count = metaService.selectCountForUpload(ue.getId(), FILE_TYPES);
            if (count == 0) {
                return success(0, null);
            }
            List<MetaEntity> list = metaService.selectByPageForUpload(ue.getId(), FILE_TYPES, pageSize, pageSize * (pageIndex - 1));
            return success(count, list);
        } catch (Exception ex) {
            return fail(ex.getMessage(), null);
        }
    }
    @SysLog()
    @ApiOperation(value = "查询文件")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "path", value = "路径", dataType = "String", paramType = "query")
    })
    @GetMapping(value = "/selectFiles")
    public ResponseMsg<List<MetaFileEntity>> selectFiles(String path) {
        try {
            List<MetaFileEntity> list = baseUploadService.selectFiles(path, null);
            return success(list);
        } catch (Exception ex) {
            return fail(ex.getMessage(), null);
        }
    }
    @SysLog()
    @ApiOperation(value = "插入文件")
    @ApiImplicitParams({
src/main/java/com/lf/server/helper/AccessHelper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
package com.lf.server.helper;
/**
 * Access帮助类
 * @author WWW
 */
public class AccessHelper {
    //
}
src/main/java/com/lf/server/helper/GdbHelper.java
@@ -9,10 +9,7 @@
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
 * GDB帮助类
@@ -21,12 +18,7 @@
public class GdbHelper {
    private final static Log log = LogFactory.getLog(GdbHelper.class);
    public static List<String> excludeFields = new ArrayList<String>();
    static {
        excludeFields.add("gid");
        excludeFields.add("shape_leng");
    }
    public static List<String> excludeFields = new ArrayList<>(Arrays.asList("gid", "shape_leng"));
    /**
     * èŽ·å–è¡¨å
@@ -35,11 +27,15 @@
        List<String> list = new ArrayList<>();
        try {
            org.gdal.ogr.Driver driver = ogr.GetDriverByName("OpenFileGDB");
            if (driver == null) {
            if (null == driver) {
                return list;
            }
            DataSource dataSource = driver.Open(filePath, 0);
            if (null == dataSource) {
                return list;
            }
            for (int i = 0, count = dataSource.GetLayerCount(); i < count; i++) {
                Layer layer = dataSource.GetLayer(i);
                list.add(layer.GetName());
@@ -63,11 +59,15 @@
        List<T> list = new ArrayList<>();
        try {
            org.gdal.ogr.Driver driver = ogr.GetDriverByName("OpenFileGDB");
            if (driver == null) {
            if (null == driver) {
                return list;
            }
            DataSource dataSource = driver.Open(filePath, 0);
            if (null == dataSource) {
                return list;
            }
            for (int i = 0, count = dataSource.GetLayerCount(); i < count; i++) {
                Layer layer = dataSource.GetLayer(i);
src/main/java/com/lf/server/helper/MdbHelper.java
@@ -23,11 +23,15 @@
        List<String> list = new ArrayList<>();
        try {
            org.gdal.ogr.Driver driver = ogr.GetDriverByName("PGeo");
            if (driver == null) {
            if (null == driver) {
                return list;
            }
            DataSource dataSource = driver.Open(filePath, 0);
            if (null == dataSource) {
                return list;
            }
            for (int i = 0, count = dataSource.GetLayerCount(); i < count; i++) {
                Layer layer = dataSource.GetLayer(i);
                list.add(layer.GetName());
@@ -51,15 +55,19 @@
        List<T> list = new ArrayList<>();
        try {
            org.gdal.ogr.Driver driver = ogr.GetDriverByName("PGeo");
            if (driver == null) {
            if (null == driver) {
                return list;
            }
            DataSource dataSource = driver.Open(filePath, 0);
            if (null == dataSource) {
                return list;
            }
            for (int i = 0, count = dataSource.GetLayerCount(); i < count; i++) {
                Layer layer = dataSource.GetLayer(i);
                if (layer.GetName().equals(layerName)){
                if (layer.GetName().equals(layerName)) {
                    GdbHelper.readLayer(clazz, layer, list);
                    break;
                }
src/main/java/com/lf/server/helper/ShpHelper.java
@@ -201,11 +201,15 @@
        List<T> list = new ArrayList<>();
        try {
            org.gdal.ogr.Driver driver = ogr.GetDriverByName("ESRI shapefile");
            if (driver == null) {
            if (null == driver) {
                return list;
            }
            DataSource dataSource = driver.Open(filePath);
            if (null == dataSource) {
                return list;
            }
            Layer layer = dataSource.GetLayer(0);
            GdbHelper.readLayer(clazz, layer, list);
src/main/java/com/lf/server/mapper/data/MetaMapper.java
@@ -32,6 +32,26 @@
    public List<MetaEntity> selectByPage(String name, Integer limit, Integer offset);
    /**
     * æŸ¥è¯¢ä¸Šä¼ è®°å½•æ•°
     *
     * @param createUser ç”¨æˆ·ID
     * @param types      æ–‡ä»¶ç±»åž‹
     * @return è®°å½•æ•°
     */
    public Integer selectCountForUpload(Integer createUser, String types);
    /**
     * åˆ†é¡µæŸ¥è¯¢ä¸Šä¼ è®°å½•
     *
     * @param createUser ç”¨æˆ·ID
     * @param types      æ–‡ä»¶ç±»åž‹
     * @param limit      è®°å½•表
     * @param offset     åç§»é‡
     * @return åˆ—表
     */
    public List<MetaEntity> selectByPageForUpload(Integer createUser, String types, Integer limit, Integer offset);
    /**
     * æŸ¥è¯¢æ‰€æœ‰
     *
     * @return
src/main/java/com/lf/server/service/all/BaseUploadService.java
@@ -33,7 +33,7 @@
    /**
     * æŸ¥è¯¢æ–‡ä»¶
     */
    public List<MetaFileEntity> selectFiles(String subPath) throws IOException {
    public List<MetaFileEntity> selectFiles(String subPath, List<String> extList) throws IOException {
        String root = pathHelper.getConfig().getTempPath() + File.separator + subPath;
        File file = new File(root);
@@ -48,6 +48,13 @@
        List<MetaFileEntity> list = new ArrayList<MetaFileEntity>();
        for (File f : files) {
            String fileName = FileHelper.getFileName(f.getPath());
            if (null != extList) {
                String extName = FileHelper.getExtension(fileName);
                if (!extList.contains(extName)) {
                    continue;
                }
            }
            double sizes = FileHelper.sizeToMb(f.length());
            String filePath = subPath + File.separator + fileName;
src/main/java/com/lf/server/service/data/MetaService.java
@@ -32,6 +32,16 @@
    }
    @Override
    public Integer selectCountForUpload(Integer createUser, String types) {
        return metaMapper.selectCountForUpload(createUser, types);
    }
    @Override
    public List<MetaEntity> selectByPageForUpload(Integer createUser, String types, Integer limit, Integer offset) {
        return metaMapper.selectByPageForUpload(createUser, types, limit, offset);
    }
    @Override
    public List<MetaEntity> selectAll() {
        return metaMapper.selectAll();
    }