Преглед на файлове

1. 多线程删除
2. 修改了发布
3. 修改了config.url

wuweihao преди 5 години
родител
ревизия
5c32e20f82

+ 5 - 0
src/main/java/com/fd/controller/FdModelController.java

@@ -218,6 +218,11 @@ public class FdModelController {
         OutputFileEntity entity = modelServer.findById(fileId);
         entity.setResStatus(1);
         modelServer.save(entity);
+
+        FileEntity fileEntity = modelServer.findByInputFileId(entity.getUploadId());
+        fileEntity.setResStatus(1);
+        fileEntity = modelServer.saveInputFile(fileEntity);
+
         new Thread(new DeleteThread(fileId)).start();
         log.info("delete vector id");
         return new R(200, MsgCode.SUCCESS);

+ 8 - 0
src/main/java/com/fd/controller/RasterController.java

@@ -83,16 +83,19 @@ public class RasterController {
 
         // 文件是否包含中文字符
         if (RegexUtils.regexChinese(fileName)) {
+            log.info(MsgCode.E51005);
             return new R(51005, MsgCode.E51005);
         }
 
         String s = StringUtils.substringAfterLast(fileName, ".");
         if (!"tif".equals(s)) {
+            log.info(MsgCode.E50008);
             return new R(50008,MsgCode.E50008);
         }
 
         List<FileEntity> list = rasterServer.findByFileName(fileName);
         if (list.size() > 0) {
+            log.info( MsgCode.E51006);
             return new R(51006, MsgCode.E51006);
         }
         return new R(200, MsgCode.SUCCESS);
@@ -197,6 +200,11 @@ public class RasterController {
         OutputFileEntity entity = rasterServer.findById(fileId);
         entity.setResStatus(1);
         rasterServer.save(entity);
+
+        FileEntity fileEntity = rasterServer.findByInputFileId(entity.getUploadId());
+        fileEntity.setResStatus(1);
+        rasterServer.saveInputFile(fileEntity);
+
         new Thread(new RasterDeleteThread(fileId)).start();
         log.info("delete vector id");
         return new R(200, MsgCode.SUCCESS);

+ 5 - 0
src/main/java/com/fd/controller/VectorController.java

@@ -219,6 +219,11 @@ public class VectorController {
         OutputFileEntity entity = vectorServer.findById(fileId);
         entity.setResStatus(1);
         vectorServer.save(entity);
+
+        FileEntity fileEntity = vectorServer.findByInputFileId(entity.getUploadId());
+        fileEntity.setResStatus(1);
+        fileEntity = vectorServer.saveInputFile(fileEntity);
+
         new Thread(new DeleteThread(fileId)).start();
         log.info("delete vector id");
         return new R(200, MsgCode.SUCCESS);

+ 4 - 0
src/main/java/com/fd/repository/FileRepository.java

@@ -24,7 +24,11 @@ public interface FileRepository extends JpaRepository<FileEntity, Long>, JpaSpec
 
     List<FileEntity> findByFileName(String fileName);
 
+    List<FileEntity> findByFileNameAndTypeAndResStatus(String fileName, String type, Integer resStatus);
+
     List<FileEntity> findByFileNameAndType(String fileName, String type);
 
     List<FileEntity> findByDirectory(String directory);
+
+    List<FileEntity> findByDirectoryAndResStatus(String directory, Integer resStatus);
 }

+ 4 - 0
src/main/java/com/fd/server/ModelServer.java

@@ -31,4 +31,8 @@ public interface ModelServer {
     List<FileEntity> findByFileName(String fileName);
 
     Integer cmdSlice(String cmd);
+
+    FileEntity findByInputFileId(Long fileId);
+
+    FileEntity saveInputFile(FileEntity fileEntity);
 }

+ 4 - 0
src/main/java/com/fd/server/RasterServer.java

@@ -29,4 +29,8 @@ public interface RasterServer {
     R deleteById(Long fileId);
 
     List<FileEntity> findByFileName(String fileName);
+
+    FileEntity findByInputFileId(Long fileId);
+
+    FileEntity saveInputFile(FileEntity fileEntity);
 }

+ 4 - 0
src/main/java/com/fd/server/VectorServer.java

@@ -69,4 +69,8 @@ public interface VectorServer {
      * @param entity
      */
     Integer cmdSlice(String cmd, OutputFileEntity entity);
+
+    FileEntity findByInputFileId(Long fileId);
+
+    FileEntity saveInputFile(FileEntity fileEntity);
 }

+ 18 - 1
src/main/java/com/fd/server/impl/ModelServerImpl.java

@@ -107,7 +107,8 @@ public class ModelServerImpl implements ModelServer  {
     @Override
     public List<FileEntity> findByFileName(String fileName) {
 
-        return fileRepository.findByFileNameAndType(fileName, TypeCode.FILE_TYPE_MODEL);
+//        return fileRepository.findByFileNameAndType(fileName, TypeCode.FILE_TYPE_MODEL);
+        return fileRepository.findByFileNameAndTypeAndResStatus(fileName, TypeCode.FILE_TYPE_MODEL, 0);
     }
 
     @Override
@@ -163,6 +164,21 @@ public class ModelServerImpl implements ModelServer  {
             return isCmd;
         }
 
+    @Override
+    public FileEntity findByInputFileId(Long fileId) {
+        Optional<FileEntity> o = fileRepository.findById(fileId);
+        if (o.isPresent()) {
+            return o.get();
+        }
+        return null;
+    }
+
+
+
+    @Override
+    public FileEntity saveInputFile(FileEntity fileEntity) {
+        return fileRepository.save(fileEntity);
+    }
 
 
 //
@@ -242,6 +258,7 @@ public class ModelServerImpl implements ModelServer  {
         entity.setUpdateTime(new Date());
         entity.setType(TypeCode.FILE_TYPE_MODEL);
 //        entity.setStatus(1);
+        entity.setResStatus(0);
         entity = fileRepository.save(entity);
 
 

+ 20 - 1
src/main/java/com/fd/server/impl/RasterServerImpl.java

@@ -236,6 +236,7 @@ public class RasterServerImpl implements RasterServer {
         entity.setType(TypeCode.FILE_TYPE_RASTER);
         entity.setCoord(strCoord);
         entity.setStatus(2);
+        entity.setResStatus(0);
         fileRepository.save(entity);
 
         OutputFileEntity outputFile = new OutputFileEntity();
@@ -281,7 +282,8 @@ public class RasterServerImpl implements RasterServer {
     @Override
     public List<FileEntity> findByFileName(String fileName) {
 
-        return fileRepository.findByFileNameAndType(fileName, TypeCode.FILE_TYPE_RASTER);
+//        return fileRepository.findByFileNameAndType(fileName, TypeCode.FILE_TYPE_RASTER);
+        return fileRepository.findByFileNameAndTypeAndResStatus(fileName, TypeCode.FILE_TYPE_RASTER, 0);
     }
 
     @Override
@@ -289,6 +291,23 @@ public class RasterServerImpl implements RasterServer {
         return outputFileRepository.save(fileSchedule);
     }
 
+
+    @Override
+    public FileEntity findByInputFileId(Long fileId) {
+        Optional<FileEntity> o = fileRepository.findById(fileId);
+        if (o.isPresent()) {
+            return o.get();
+        }
+        return null;
+    }
+
+
+
+    @Override
+    public FileEntity saveInputFile(FileEntity fileEntity) {
+        return fileRepository.save(fileEntity);
+    }
+
     private void writeJsonFile(ConfigJsonDto param, String lastName, OutputFileEntity entity) {
         String s = FileUtils.readFile(CONFIG_JSON_PATH);
 

+ 23 - 2
src/main/java/com/fd/server/impl/VectorServerImpl.java

@@ -299,7 +299,9 @@ public class VectorServerImpl implements VectorServer {
 
 
         // 判断目录重名
-        List<FileEntity> en = fileRepository.findByDirectory(directoryName);
+//        List<FileEntity> en = fileRepository.findByDirectory(directoryName);
+        List<FileEntity> en = fileRepository.findByDirectoryAndResStatus(directoryName, 0);
+
         if (en.size() > 0) {
             return new R(51007, MsgCode.E51007);
         }
@@ -382,6 +384,7 @@ public class VectorServerImpl implements VectorServer {
             entity.setUpdateTime(new Date());
             entity.setType(TypeCode.FILE_TYPE_VECTOR);
             entity.setCoord(coord);
+            entity.setResStatus(0);
             entity = fileRepository.save(entity);
 
             outputFile.setUploadId(entity.getId());
@@ -415,7 +418,8 @@ public class VectorServerImpl implements VectorServer {
     @Override
     public List<FileEntity> findByDirectory(String directory) {
 
-        return fileRepository.findByDirectory(directory);
+//        return fileRepository.findByDirectory(directory);
+        return fileRepository.findByDirectoryAndResStatus(directory, 0);
     }
 
     @Override
@@ -639,6 +643,23 @@ public class VectorServerImpl implements VectorServer {
         return isCmd;
     }
 
+    @Override
+    public FileEntity findByInputFileId(Long fileId) {
+        Optional<FileEntity> o = fileRepository.findById(fileId);
+        if (o.isPresent()){
+            FileEntity fileEntity = o.get();
+            return fileEntity;
+        }
+        return null;
+
+    }
+
+    @Override
+    public FileEntity saveInputFile(FileEntity fileEntity) {
+        FileEntity save = fileRepository.save(fileEntity);
+        return save;
+    }
+
 
     /**
      * 获取经纬度平均值