Browse Source

七牛云上传修改

feature-1.0-img
qyhdd 3 years ago
parent
commit
ccc5a821e4
  1. 4
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/utils/Sm4Util.java
  2. 8
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java
  3. 45
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/enumeration/AddressEnum.java
  4. 2
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IQiniuService.java
  5. 14
      bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java

4
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/utils/Sm4Util.java

@ -54,4 +54,8 @@ public class Sm4Util {
kg.init(keySize, new SecureRandom()); kg.init(keySize, new SecureRandom());
return kg.generateKey().getEncoded(); return kg.generateKey().getEncoded();
} }
public static void main(String[] args) {
System.out.println(Sm4Util.sm4Encryption("15196354506"));
}
} }

8
bnyer-services/bnyer-file/src/main/java/com/bnyer/file/controller/SysFileController.java

@ -47,11 +47,11 @@ public class SysFileController {
*/ */
@ApiOperation(value="批量上传到七牛云") @ApiOperation(value="批量上传到七牛云")
@PostMapping("/uploadBatch") @PostMapping("/uploadBatch")
public R<List<String>> uploadBatch(MultipartFile[] files) { public R<List<String>> uploadBatch(@RequestParam MultipartFile[] files,@RequestParam Integer fileType) {
try { try {
List<String> list = new ArrayList<>(); List<String> list = new ArrayList<>();
for (MultipartFile file : files) { for (MultipartFile file : files) {
String url = qiniuService.userUpload(file); String url = qiniuService.userUpload(file,fileType);
list.add(url); list.add(url);
} }
// 上传并返回访问地址 // 上传并返回访问地址
@ -70,11 +70,11 @@ public class SysFileController {
*/ */
@ApiOperation(value="批量压缩上传到七牛云") @ApiOperation(value="批量压缩上传到七牛云")
@PostMapping("/uploadBatchCompImg") @PostMapping("/uploadBatchCompImg")
public R<List<String>> compression(@RequestParam MultipartFile[] files) throws IOException { public R<List<String>> compression(@RequestParam MultipartFile[] files,@RequestParam Integer fileType) throws IOException {
List<String> list = new ArrayList<>(); List<String> list = new ArrayList<>();
for (MultipartFile file : files) { for (MultipartFile file : files) {
MultipartFile file1 = ImgUtil.commpressPicCycle(Long.parseLong(imgConfig.getFileSize()), Double.parseDouble(imgConfig.getAccuracy()), file); MultipartFile file1 = ImgUtil.commpressPicCycle(Long.parseLong(imgConfig.getFileSize()), Double.parseDouble(imgConfig.getAccuracy()), file);
String url = qiniuService.userUpload(file1); String url = qiniuService.userUpload(file1,fileType);
list.add(url); list.add(url);
} }

45
bnyer-services/bnyer-file/src/main/java/com/bnyer/file/enumeration/AddressEnum.java

@ -0,0 +1,45 @@
package com.bnyer.file.enumeration;
import java.util.Arrays;
/**
* @Author qyh
* @Date 2023/4/29 18:58
* @Description
*/
public enum AddressEnum {
BACK(0,"back/"),
EMOJI(1,"emoji/"),
FRIEND(2,"friend/"),
HEAD(3,"head/"),
ICON(4,"icon/"),
PHONEBACK(5,"phoneBack/"),
WATCH(6,"watch/");
private Integer businessType;
private String fileAddress;
AddressEnum(Integer businessType, String fileAddress) {
this.businessType = businessType;
this.fileAddress = fileAddress;
}
public Integer getBusinessType() {
return businessType;
}
public void setBusinessType(Integer businessType) {
this.businessType = businessType;
}
public String getFileAddress() {
return fileAddress;
}
public void setFileAddress(String fileAddress) {
this.fileAddress = fileAddress;
}
public static AddressEnum getMessageEnum(Integer businessType) {
return Arrays.stream(AddressEnum.values()).filter(x -> x.businessType.equals(businessType)).findFirst().orElse(null);
}
}

2
bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/IQiniuService.java

@ -5,7 +5,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList; import java.util.ArrayList;
public interface IQiniuService { public interface IQiniuService {
String userUpload(MultipartFile file); String userUpload(MultipartFile file,Integer fileType);
/** /**
* 检查图片内容是否符合规定 * 检查图片内容是否符合规定

14
bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/QiniuServiceImpl.java

@ -3,6 +3,7 @@ package com.bnyer.file.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.bnyer.file.config.QiniuConfig; import com.bnyer.file.config.QiniuConfig;
import com.bnyer.file.enumeration.AddressEnum;
import com.bnyer.file.service.IQiniuService; import com.bnyer.file.service.IQiniuService;
import com.bnyer.file.utils.ImgUtil; import com.bnyer.file.utils.ImgUtil;
import com.bnyer.file.utils.StringUtil; import com.bnyer.file.utils.StringUtil;
@ -36,7 +37,7 @@ public class QiniuServiceImpl implements IQiniuService {
@Autowired @Autowired
private QiniuConfig qiniuConfig; private QiniuConfig qiniuConfig;
private Zone zone = new Zone.Builder(Zone.autoZone()) private Zone zone = new Zone.Builder(Zone.zone0())
.upHttp("http://upload.qiniup.com") .upHttp("http://upload.qiniup.com")
.upHttps("http://upload.qiniup.com") .upHttps("http://upload.qiniup.com")
.upBackupHttp("http://upload.qiniup.com") .upBackupHttp("http://upload.qiniup.com")
@ -46,10 +47,10 @@ public class QiniuServiceImpl implements IQiniuService {
.apiHttp("http://api.qiniu.com") .apiHttp("http://api.qiniu.com")
.iovipHttp("http://iovip.qbox.me").build(); .iovipHttp("http://iovip.qbox.me").build();
@Override @Override
public String userUpload(MultipartFile file) { public String userUpload(MultipartFile file,Integer fileType) {
return this.updloadFile(file); return this.updloadFile(file,fileType);
} }
public String updloadFile(MultipartFile file){ public String updloadFile(MultipartFile file,Integer fileType){
String url = null; String url = null;
// 获取文件的名称 // 获取文件的名称
String fileName = file.getOriginalFilename(); String fileName = file.getOriginalFilename();
@ -61,13 +62,16 @@ public class QiniuServiceImpl implements IQiniuService {
String token = auth.uploadToken(qiniuConfig.getBucketName()); String token = auth.uploadToken(qiniuConfig.getBucketName());
// 使用工具类根据上传文件生成唯一图片名称 // 使用工具类根据上传文件生成唯一图片名称
String imgName = StringUtil.getRandomImgName(fileName); String imgName = StringUtil.getRandomImgName(fileName);
//根据前端传值获取上传地址
AddressEnum addressEnum = AddressEnum.getMessageEnum(fileType);
imgName=addressEnum.getFileAddress()+imgName;
if (!file.isEmpty()) { if (!file.isEmpty()) {
InputStream inputStream =null; InputStream inputStream =null;
try { try {
inputStream=(InputStream) file.getInputStream(); inputStream=(InputStream) file.getInputStream();
Response response = uploadManager.put(inputStream, imgName, token,null,null); Response response = uploadManager.put(inputStream, imgName, token,null,null);
DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class); DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
url=qiniuConfig.getUrl()+"/"+putRet.key; url=qiniuConfig.getUrl()+putRet.key;
//System.out.println(putRet.hash); //System.out.println(putRet.hash);
inputStream.close(); inputStream.close();
} catch (QiniuException ex) { } catch (QiniuException ex) {

Loading…
Cancel
Save