reghao před 1 měsícem
rodič
revize
f35a546182

+ 0 - 24
oss-api/src/main/java/cn/reghao/oss/api/dto/media/ImageUrlDto.java

@@ -1,24 +0,0 @@
-package cn.reghao.oss.api.dto.media;
-
-import lombok.Getter;
-import lombok.Setter;
-
-import java.io.Serializable;
-
-/**
- * @author reghao
- * @date 2023-08-28 15:50:38
- */
-@Setter
-@Getter
-public class ImageUrlDto implements Serializable {
-    private static final long serialVersionUID = 1L;
-
-    private String imageFileId;
-    private String originalUrl;
-    private String thumbnailUrl;
-
-    public ImageUrlDto(String imageFileId) {
-        this.imageFileId = imageFileId;
-    }
-}

+ 0 - 24
oss-api/src/main/java/cn/reghao/oss/api/dto/media/VideoUrlDto.java

@@ -1,24 +0,0 @@
-package cn.reghao.oss.api.dto.media;
-
-import lombok.Getter;
-import lombok.Setter;
-
-import java.io.Serializable;
-
-/**
- * @author reghao
- * @date 2023-01-10 09:51:53
- */
-@Getter
-@Setter
-public class VideoUrlDto implements Serializable {
-    private static final long serialVersionUID = 1L;
-
-    private String objectId;
-    private int channelCode;
-    private String type;
-    private String url;
-    private int width;
-    private int height;
-    private String quality;
-}

+ 3 - 2
oss-mgr/src/main/java/cn/reghao/oss/mgr/controller/OssSdkController.java

@@ -143,10 +143,10 @@ public class OssSdkController {
 
     @Operation(summary = "设置对象的可见范围", description = "N")
     @PostMapping(value = "/object/scope", produces = MediaType.APPLICATION_JSON_VALUE)
-    public String setObjectScope(@RequestBody @Validated FileInitRequest req) {
+    public String checkAndSetScope(@RequestBody @Validated FileInitRequest req) {
         String objectId = req.getObjectId();
         int scope = req.getScope();
-        ossClientService.setObjectScope(objectId, scope);
+        ossClientService.checkAndSetScope(objectId, scope);
         return WebResult.success();
     }
 
@@ -154,6 +154,7 @@ public class OssSdkController {
     @PostMapping(value = "/object/delete", produces = MediaType.APPLICATION_JSON_VALUE)
     public String deleteObject(@RequestBody @Validated FileInitRequest req) {
         String objectId = req.getObjectId();
+        ossClientService.deleteObject(objectId);
         return WebResult.success();
     }
 

+ 1 - 1
oss-mgr/src/main/java/cn/reghao/oss/mgr/db/repository/ObjectRepository.java

@@ -46,7 +46,7 @@ public class ObjectRepository {
     }
 
     public void deleteObject(String objectId) {
-
+        log.info("delete FileMeta by objectId {}", objectId);
     }
 
     public DataBlock getBySha256sum(String sha256sum) {

+ 9 - 4
oss-mgr/src/main/java/cn/reghao/oss/mgr/service/OssClientService.java

@@ -107,16 +107,21 @@ public class OssClientService {
     public void deleteObject(String objectId) {
         DataBlock dataBlock = dataBlockMapper.findByObjectId(objectId);
         String hostPort = dataBlock.getHostPort();
-
         StoreService storeService = rpcService.getStoreService(hostPort);
-        storeService.deleteFile(dataBlock.getAbsolutePath());
 
+        storeService.deleteFile(dataBlock.getAbsolutePath());
         objectRepository.deleteObject(objectId);
     }
 
-    public void setObjectScope(String objectId, int scope) {
+    public void checkAndSetScope(String objectId, int scope) {
         ObjectScope objectScope = ObjectScope.getByCode(scope);
-        fileMetaMapper.updateScopeByObjectId(objectId, objectScope.getCode());
+        FileMeta fileMeta = fileMetaMapper.findByObjectId(objectId);
+        if (fileMeta != null) {
+            int currentScope = fileMeta.getScope();
+            if (currentScope != scope) {
+                fileMetaMapper.updateScopeByObjectId(objectId, objectScope.getCode());
+            }
+        }
     }
 
     public ObjectInfo getObjectInfo(String objectId) {

+ 3 - 2
oss-sdk/src/main/java/cn/reghao/oss/sdk/OssClient.java

@@ -400,10 +400,11 @@ public class OssClient {
         }
     }
 
-    public void setObjectScope(String objectId, int scope) {
+    public void checkAndSetScope(String objectId, int scope) {
         Map<String, Object> body = Map.of(
                 "objectId", objectId,
-                "scope", scope);
+                "scope", scope
+                );
         String jsonBody = JsonConverter.objectToJson(body);
         String api = "/api/oss/sdk/object/scope";
         try {

+ 1 - 0
oss-store/src/main/java/cn/reghao/oss/store/rpc/StoreServiceImpl.java

@@ -52,6 +52,7 @@ public class StoreServiceImpl implements StoreService {
         File file = new File(absolutePath);
         if (file.exists()) {
             //FileUtils.deleteQuietly(file);
+            log.info("delete file {}",  absolutePath);
         }
     }