画布上传图片修改为oss

This commit is contained in:
guchengwuyue
2023-07-07 19:58:31 +08:00
parent 0ff75a99c9
commit 1eafd50c29

View File

@ -9,15 +9,18 @@
package co.yixiang.modules.canvas.rest;
import java.util.Arrays;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import co.yixiang.api.YshopException;
import co.yixiang.constant.ShopConstants;
import co.yixiang.constant.SystemConfigConstants;
import co.yixiang.enums.ShopCommonEnum;
import co.yixiang.modules.tools.domain.QiniuContent;
import co.yixiang.modules.aop.ForbidSubmit;
import co.yixiang.modules.tools.service.LocalStorageService;
import co.yixiang.modules.tools.service.QiNiuService;
import co.yixiang.modules.tools.service.dto.LocalStorageDto;
import co.yixiang.oss.config.OssProperties;
import co.yixiang.oss.service.OssTemplate;
import co.yixiang.utils.RedisUtils;
import lombok.AllArgsConstructor;
import co.yixiang.modules.logging.aop.log.Log;
@ -44,10 +47,11 @@ public class StoreCanvasController {
private final StoreCanvasService storeCanvasService;
private final LocalStorageService localStorageService;
private final QiNiuService qiNiuService;
private final RedisUtils redisUtils;
private final OssProperties ossProperties;
private final OssTemplate ossTemplate;
@ForbidSubmit
@PostMapping("/saveCanvas")
@Log("新增或修改画布")
@ApiOperation("新增或修改画布")
@ -68,7 +72,8 @@ public class StoreCanvasController {
}
String mode = redisUtils.getY(SystemConfigConstants.FILE_STORE_MODE);
StringBuilder url = new StringBuilder();
if (ShopCommonEnum.STORE_MODE_1.getValue().toString().equals(mode)) { //存在走本地
if (ShopCommonEnum.STORE_MODE_1.getValue().toString().equals(mode)) {
// 存在走本地
if(StrUtil.isBlank(localUrl)){
throw new YshopException("本地上传,请先登陆系统配置后台/移动端API地址");
}
@ -78,12 +83,20 @@ public class StoreCanvasController {
} else {
url = url.append(","+localUrl + "/file/" + localStorageDTO.getType() + "/" + localStorageDTO.getRealName());
}
} else {//走七牛云
QiniuContent qiniuContent = qiNiuService.upload(file, qiNiuService.find());
} else {
// 走oss存储
String [] originalFilename = file.getOriginalFilename().split("\\.");
String fileName = ossProperties.getBucketName()+"/file/"+originalFilename[0] + "-" + IdUtil.simpleUUID() + StrUtil.DOT + FileUtil.extName(file.getOriginalFilename());
try {
ossTemplate.putObject(ossProperties.getBucketName(), fileName, file.getInputStream());
} catch (Exception e) {
e.printStackTrace();
}
String fileUrl = String.format(ossProperties.getCustomDomain(), fileName);
if ("".equals(url.toString())) {
url = url.append(qiniuContent.getUrl());
url = url.append(fileUrl);
}else{
url = url.append(","+qiniuContent.getUrl());
url = url.append(","+fileUrl);
}
}