|
@@ -1,4 +1,4 @@
|
|
|
-package com.css.simulation.resource.common.api.controller;
|
|
|
+package com.css.simulation.resource.common.adapter.controller;
|
|
|
|
|
|
import api.common.pojo.common.ResponseBodyVO;
|
|
|
import api.common.pojo.constants.DictConstants;
|
|
@@ -6,8 +6,9 @@ import api.common.pojo.param.MinioParameter;
|
|
|
import api.common.util.FileUtil;
|
|
|
import api.common.util.ObjectUtil;
|
|
|
import api.common.util.TimeUtil;
|
|
|
-import com.css.simulation.resource.common.infra.configuration.minio.MinioConfiguration;
|
|
|
-import com.css.simulation.resource.common.infra.configuration.minio.SubMinioClient;
|
|
|
+import com.css.simulation.resource.common.infra.config.minio.MinioConfiguration;
|
|
|
+import com.css.simulation.resource.common.infra.config.minio.SubMinioClient;
|
|
|
+import com.css.simulation.resource.common.infra.mysql.mapper.AlgorithmMapper;
|
|
|
import com.css.simulation.resource.common.infra.util.MinioUtil;
|
|
|
import io.minio.CreateMultipartUploadResponse;
|
|
|
import io.minio.ListPartsResponse;
|
|
@@ -38,6 +39,9 @@ public class MinioController {
|
|
|
@Resource
|
|
|
private MinioConfiguration minioConfiguration;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private AlgorithmMapper algorithmMapper;
|
|
|
+
|
|
|
|
|
|
@PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
|
|
|
public ResponseBodyVO<String> upload(
|
|
@@ -224,11 +228,34 @@ public class MinioController {
|
|
|
}
|
|
|
|
|
|
@PostMapping("/remove")
|
|
|
- public void download(
|
|
|
- @RequestBody @Validated MinioParameter minioParameter
|
|
|
- ) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException {
|
|
|
+ public void download(@RequestBody @Validated MinioParameter minioParameter) {
|
|
|
|
|
|
MinioUtil.removeObject(minioClientPrivate, minioConfiguration.getBucketName(), minioParameter.getObjectName());
|
|
|
}
|
|
|
|
|
|
+ // ------- 清理 minio 无用文件 -------
|
|
|
+ @PostMapping("clean")
|
|
|
+ @SneakyThrows
|
|
|
+ public ResponseBodyVO<String> clean() {
|
|
|
+ //1 清理算法文件
|
|
|
+ {
|
|
|
+ List<String> objects = MinioUtil.listObjects(minioClientPrivate, minioConfiguration.getBucketName(), "algorithm");
|
|
|
+
|
|
|
+ List<String> strings = algorithmMapper.selectMinioPaths();
|
|
|
+ for (String object : objects) {
|
|
|
+ if (!strings.contains(object)) {
|
|
|
+ MinioUtil.removeObject(minioClientPrivate, minioConfiguration.getBucketName(), object);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //2 清理项目文件
|
|
|
+ {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, "清理垃圾文件完成!");
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|