Browse Source

增加selectByIdOrMd5

zhouhao 7 years ago
parent
commit
5383f3ec7f

+ 2 - 0
hsweb-system/hsweb-system-file/hsweb-system-file-service/hsweb-system-file-service-api/src/main/java/org/hswebframework/web/service/file/FileInfoService.java

@@ -10,4 +10,6 @@ import org.hswebframework.web.service.CrudService;
  */
 public interface FileInfoService extends CrudService<FileInfoEntity, String> {
     FileInfoEntity selectByMd5(String md5);
+
+    FileInfoEntity selectByIdOrMd5(String idOrMd5);
 }

+ 7 - 0
hsweb-system/hsweb-system-file/hsweb-system-file-service/hsweb-system-file-service-simple/src/main/java/org/hswebframework/web/service/file/simple/SimpleFileInfoService.java

@@ -76,4 +76,11 @@ public class SimpleFileInfoService extends GenericEntityService<FileInfoEntity,
         if (null == md5) return null;
         return createQuery().where(FileInfoEntity.md5, md5).single();
     }
+
+    @Override
+    @Cacheable(key = "'id-or-md5:'+#idOrMd5", condition = "#idOrMd5!=null")
+    public FileInfoEntity selectByIdOrMd5(String idOrMd5) {
+        if (null == idOrMd5) return null;
+        return createQuery().where(FileInfoEntity.md5,idOrMd5).or(FileInfoEntity.id,idOrMd5).single();
+    }
 }