Merge remote-tracking branch 'refs/remotes/origin/dev'
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
package com.schisandra.oss.api;
|
||||
import com.schisandra.oss.entity.Result;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@FeignClient("schisandra-cloud-storage-oss")
|
||||
public interface SchisandraOssFeignService {
|
||||
@GetMapping("/oss/ali/returnAll")
|
||||
Result returnAliAll();
|
||||
|
||||
@GetMapping("/oss/minio/returnAll")
|
||||
Result returnMinioAll();
|
||||
|
||||
@GetMapping("/oss/tencent/returnAll")
|
||||
Result returnTencentAll();
|
||||
|
||||
@GetMapping("/oss/qiniu/returnAll")
|
||||
Result returnQiniuAll();
|
||||
}
|
@@ -0,0 +1,50 @@
|
||||
package com.schisandra.oss.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class Result<T> {
|
||||
|
||||
private Boolean success;
|
||||
|
||||
private Integer code;
|
||||
|
||||
private String message;
|
||||
|
||||
private T data;
|
||||
|
||||
public static Result ok(){
|
||||
Result result = new Result();
|
||||
result.setSuccess(true);
|
||||
result.setCode(ResultCodeEnum.SUCCESS.getCode());
|
||||
result.setMessage(ResultCodeEnum.SUCCESS.getDesc());
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T> Result ok(T data){
|
||||
Result result = new Result();
|
||||
result.setSuccess(true);
|
||||
result.setCode(ResultCodeEnum.SUCCESS.getCode());
|
||||
result.setMessage(ResultCodeEnum.SUCCESS.getDesc());
|
||||
result.setData(data);
|
||||
return result;
|
||||
}
|
||||
|
||||
public static Result fail(){
|
||||
Result result = new Result();
|
||||
result.setSuccess(false);
|
||||
result.setCode(ResultCodeEnum.FAIL.getCode());
|
||||
result.setMessage(ResultCodeEnum.FAIL.getDesc());
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T> Result fail(T data){
|
||||
Result result = new Result();
|
||||
result.setSuccess(false);
|
||||
result.setCode(ResultCodeEnum.FAIL.getCode());
|
||||
result.setMessage(ResultCodeEnum.FAIL.getDesc());
|
||||
result.setData(data);
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
package com.schisandra.oss.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum ResultCodeEnum {
|
||||
|
||||
SUCCESS(200,"成功"),
|
||||
FAIL(500,"失败");
|
||||
|
||||
public int code;
|
||||
|
||||
public String desc;
|
||||
|
||||
ResultCodeEnum(int code,String desc){
|
||||
this.code = code;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public static ResultCodeEnum getByCode(int codeVal){
|
||||
for(ResultCodeEnum resultCodeEnum : ResultCodeEnum.values()){
|
||||
if(resultCodeEnum.code == codeVal){
|
||||
return resultCodeEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
@@ -11,12 +11,15 @@ import com.schisandra.oss.application.dto.SchisandraOssQiniuDTO;
|
||||
import com.schisandra.oss.application.oss.constant.OssConstant;
|
||||
import com.schisandra.oss.application.oss.core.ali.AliOssClient;
|
||||
import com.schisandra.oss.application.oss.core.ali.AliOssConfiguration;
|
||||
import com.schisandra.oss.application.oss.core.minio.MinioOssClient;
|
||||
import com.schisandra.oss.application.oss.model.OssInfo;
|
||||
import com.schisandra.oss.common.entity.Result;
|
||||
import com.schisandra.oss.domain.bo.SchisandraOssAliBO;
|
||||
import com.schisandra.oss.domain.redis.RedisUtil;
|
||||
import com.schisandra.oss.domain.service.SchisandraOssAliDomainService;
|
||||
import io.minio.errors.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.util.StreamUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
@@ -28,6 +31,8 @@ import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.URLEncoder;
|
||||
import java.security.InvalidKeyException;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
@@ -232,6 +237,13 @@ public class SchisandraOssAliController {
|
||||
}
|
||||
|
||||
}
|
||||
@Cacheable(value = "aliBucket", key = "#userId+#bucket",unless = "#result==null")
|
||||
@PostMapping("getBucketSize")
|
||||
public Result<String> getBucketSize(@RequestParam String userId, @RequestParam String bucket) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException {
|
||||
Preconditions.checkNotNull(userId, "不能为空");
|
||||
AliOssClient bean = SpringUtil.getBean(OssConstant.OssType.ALI + userId);
|
||||
return Result.ok(bean.getAliBucketSize(bucket));
|
||||
}
|
||||
|
||||
/**
|
||||
* @description: 创建bucket
|
||||
@@ -274,6 +286,7 @@ public class SchisandraOssAliController {
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @description: 上传文件
|
||||
* @param: [schisandraOssAliDTO]
|
||||
|
@@ -9,6 +9,7 @@ import com.schisandra.oss.application.convert.SchisandraOssTencentDTOConverter;
|
||||
import com.schisandra.oss.application.dto.SchisandraOssQiniuDTO;
|
||||
import com.schisandra.oss.application.dto.SchisandraOssTencentDTO;
|
||||
import com.schisandra.oss.application.oss.constant.OssConstant;
|
||||
import com.schisandra.oss.application.oss.core.ali.AliOssClient;
|
||||
import com.schisandra.oss.application.oss.core.qiniu.QiNiuOssClient;
|
||||
import com.schisandra.oss.application.oss.core.qiniu.QiNiuOssConfiguration;
|
||||
import com.schisandra.oss.application.oss.exception.OssException;
|
||||
@@ -17,8 +18,10 @@ import com.schisandra.oss.common.entity.Result;
|
||||
import com.schisandra.oss.domain.bo.SchisandraOssQiniuBO;
|
||||
import com.schisandra.oss.domain.redis.RedisUtil;
|
||||
import com.schisandra.oss.domain.service.SchisandraOssQiniuDomainService;
|
||||
import io.minio.errors.*;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.util.StreamUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
@@ -29,6 +32,8 @@ import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.URLEncoder;
|
||||
import java.security.InvalidKeyException;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
@@ -292,7 +297,13 @@ public class SchisandraOssQiniuController {
|
||||
} else
|
||||
return Result.ok(bean.selectAllBucket());
|
||||
}
|
||||
|
||||
@Cacheable(value = "qiniuBucket", key = "#userId+#bucket",unless = "#result==null")
|
||||
@PostMapping("getBucketSize")
|
||||
public Result<String> getBucketSize(@RequestParam String userId, @RequestParam String bucket) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException {
|
||||
Preconditions.checkNotNull(userId, "不能为空");
|
||||
QiNiuOssClient bean = SpringUtil.getBean(OssConstant.OssType.QINIU + userId);
|
||||
return Result.ok(bean.getQiniuBucketSize(bucket));
|
||||
}
|
||||
/**
|
||||
* @description: 删除bucket
|
||||
* @param: [userId, bucket]
|
||||
|
@@ -82,7 +82,7 @@ public class AliOssClient implements StandardOssClient {
|
||||
buckets.forEach(bucket -> {
|
||||
HashMap<String, String> names = new HashMap<>();
|
||||
names.put("name",bucket.getName());
|
||||
names.put("size",getAliBucketSize(bucket.getName()));
|
||||
// names.put("size",getAliBucketSize(bucket.getName()));
|
||||
list1.add(names);
|
||||
});
|
||||
return list1;
|
||||
|
@@ -189,7 +189,7 @@ public class QiNiuOssClient implements StandardOssClient {
|
||||
for(int i=0;i<list.length;i++){
|
||||
HashMap<String, String> names = new HashMap<>();
|
||||
names.put("name",list[i]);
|
||||
names.put("size",getQiniuBucketSize(list[i]));
|
||||
// names.put("size",getQiniuBucketSize(list[i]));
|
||||
list1.add(names);
|
||||
}
|
||||
return list1;
|
||||
|
@@ -45,9 +45,9 @@ public class SchisandraOssAliDomainServiceImpl implements SchisandraOssAliDomain
|
||||
schisandraUserOss.setUserId(schisandraOssAliBO.getUserId());
|
||||
schisandraUserOss.setIsDeleted(0);
|
||||
schisandraUserOss.setCreatedTime(new Date());
|
||||
schisandraUserOss.setOssType(String.valueOf(OssType.ALI));
|
||||
schisandraUserOss.setOssType(OssType.ALI.type);
|
||||
schisandraUserOss.setConfigCount(1);
|
||||
schisandraUserOss.setName(String.valueOf(OssName.ALI));
|
||||
schisandraUserOss.setName(OssName.ALI.type);
|
||||
schisandraUserOssService.insert(schisandraUserOss);
|
||||
}else{
|
||||
userOss.setConfigCount(userOss.getConfigCount()+1);
|
||||
|
@@ -44,8 +44,8 @@ public class SchisandraOssMinioDomainServiceImpl implements SchisandraOssMinioDo
|
||||
schisandraUserOss.setUserId(schisandraOssMinioBO.getUserId());
|
||||
schisandraUserOss.setIsDeleted(0);
|
||||
schisandraUserOss.setCreatedTime(new Date());
|
||||
schisandraUserOss.setOssType(String.valueOf(OssType.MINIO));
|
||||
schisandraUserOss.setName(String.valueOf(OssName.MINIO));
|
||||
schisandraUserOss.setOssType(OssType.MINIO.type);
|
||||
schisandraUserOss.setName(OssName.MINIO.type);
|
||||
schisandraUserOss.setConfigCount(1);
|
||||
schisandraUserOssService.insert(schisandraUserOss);
|
||||
}else{
|
||||
|
@@ -48,8 +48,8 @@ public class SchisandraOssQiniuDomainServiceImpl implements SchisandraOssQiniuDo
|
||||
schisandraUserOss.setUserId(schisandraOssQiniuBO.getUserId());
|
||||
schisandraUserOss.setIsDeleted(0);
|
||||
schisandraUserOss.setCreatedTime(new Date());
|
||||
schisandraUserOss.setOssType(String.valueOf(OssType.QINIU));
|
||||
schisandraUserOss.setName(String.valueOf(OssName.QINIU));
|
||||
schisandraUserOss.setOssType(OssType.QINIU.type);
|
||||
schisandraUserOss.setName(OssName.QINIU.type);
|
||||
schisandraUserOss.setConfigCount(1);
|
||||
schisandraUserOssService.insert(schisandraUserOss);
|
||||
}else{
|
||||
|
@@ -47,9 +47,9 @@ public class SchisandraOssTencentDomainServiceImpl implements SchisandraOssTence
|
||||
schisandraUserOss.setUserId(schisandraOssTencentBO.getUserId());
|
||||
schisandraUserOss.setIsDeleted(0);
|
||||
schisandraUserOss.setCreatedTime(new Date());
|
||||
schisandraUserOss.setOssType(String.valueOf(OssType.TENCENT));
|
||||
schisandraUserOss.setOssType(OssType.TENCENT.type);
|
||||
schisandraUserOss.setConfigCount(1);
|
||||
schisandraUserOss.setName(String.valueOf(OssName.TENCENT));
|
||||
schisandraUserOss.setName(OssName.TENCENT.type);
|
||||
schisandraUserOssService.insert(schisandraUserOss);
|
||||
}else{
|
||||
userOss.setConfigCount(userOss.getConfigCount()+1);
|
||||
|
Reference in New Issue
Block a user