修改文件访问路径

This commit is contained in:
haozq 2025-09-16 10:57:57 +08:00
parent 63bab38f8b
commit a7f2ec25d2
6 changed files with 37 additions and 17 deletions

View File

@ -0,0 +1,8 @@
package com.bonus.business.global;
public class GlobalUtils {
/**
* 临时文件时长
*/
public static int FILE_TIMES=60*60*12;
}

View File

@ -4,6 +4,7 @@ import com.bonus.business.domain.ProductCaseImage;
import com.bonus.business.domain.TbProduct;
import com.bonus.business.domain.TbProductCase;
import com.bonus.business.domain.TbPromotionMaterial;
import com.bonus.business.global.GlobalUtils;
import com.bonus.business.mapper.MaterialScreenMapper;
import com.bonus.business.mapper.ProductMapper;
import com.bonus.business.mapper.ProductScreenMapper;
@ -12,6 +13,7 @@ import com.bonus.business.service.ProductScreenService;
import com.bonus.common.config.MinioConfig;
import com.bonus.common.core.domain.AjaxResult;
import com.bonus.common.utils.StringUtils;
import com.bonus.file.minio.MinioUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -30,6 +32,8 @@ public class MaterialScreenServiceImpl implements MaterialScreenService {
@Resource
private MinioConfig minioConfig;
@Autowired
public MinioUtil minioUtil;
@Override
public List<TbPromotionMaterial> getMaterialList(TbPromotionMaterial o) {
@ -37,8 +41,10 @@ public class MaterialScreenServiceImpl implements MaterialScreenService {
List<TbPromotionMaterial> list = mapper.getMaterialList(o);
if (StringUtils.isNotEmpty(list)) {
list.forEach(vo -> {
vo.setImage(minioConfig.getUrl() + "/" + minioConfig.getBucketName() + vo.getImage());
vo.setFilePath(minioConfig.getUrl() + "/" + minioConfig.getBucketName() + vo.getFilePath());
String imageUlr = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getImage(), GlobalUtils.FILE_TIMES);
String path = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getFilePath(),GlobalUtils.FILE_TIMES);
vo.setImage(imageUlr);
vo.setFilePath(path);
});
}
return list;

View File

@ -4,6 +4,7 @@ import com.bonus.business.domain.ProductCaseImage;
import com.bonus.business.domain.ProductScreenVo;
import com.bonus.business.domain.TbProduct;
import com.bonus.business.domain.TbProductCase;
import com.bonus.business.global.GlobalUtils;
import com.bonus.business.mapper.ProductMapper;
import com.bonus.business.mapper.ProductScreenMapper;
import com.bonus.business.service.ProductScreenService;
@ -42,7 +43,7 @@ public class ProductScreenImpl implements ProductScreenService {
List<TbProduct> list=mapper.getProductList(product);
if(StringUtils.isNotEmpty(list)){
list.forEach(vo->{
String url = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getLinkImage(),60*60*12);
String url = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getLinkImage(), GlobalUtils.FILE_TIMES);
vo.setLinkImage(url);
});
}
@ -65,7 +66,7 @@ public class ProductScreenImpl implements ProductScreenService {
TbProduct vo=mapper.getProductDetails(product);
if(vo!=null){
//封面图
String url = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getLinkImage(),60*60*12);
String url = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getLinkImage(), GlobalUtils.FILE_TIMES);
vo.setLinkImage(url);
// vo.setLinkImage(minioConfig.getUrl()+"/"+minioConfig.getBucketName()+vo.getLinkImage());
getProductDetails(product, vo, productMapper, minioUtil);
@ -75,8 +76,8 @@ public class ProductScreenImpl implements ProductScreenService {
List<ProductScreenVo> fileList=new ArrayList<>();
if(StringUtils.isNotEmpty(list)){
list.forEach(vo1->{
String imageUlr = minioUtil.getFileUrl(minioConfig.getBucketName(),vo1.getImage(),60*60*12);
String path = minioUtil.getFileUrl(minioConfig.getBucketName(),vo1.getFilePath(),60*60*12);
String imageUlr = minioUtil.getFileUrl(minioConfig.getBucketName(),vo1.getImage(), GlobalUtils.FILE_TIMES);
String path = minioUtil.getFileUrl(minioConfig.getBucketName(),vo1.getFilePath(), GlobalUtils.FILE_TIMES);
vo1.setImage(imageUlr);
vo1.setUrl(path);
if("0".equals(vo1.getFileType())){
@ -103,7 +104,7 @@ public class ProductScreenImpl implements ProductScreenService {
List<ProductCaseImage> caseImages= productMapper.getCaseImageByTable(productCase.getId(),"tb_product_case");
if(StringUtils.isNotEmpty(caseImages)){
caseImages.forEach(image->{
String path = minioUtil.getFileUrl(image.getBucketName(),image.getFilePath(),60*60*12);
String path = minioUtil.getFileUrl(image.getBucketName(),image.getFilePath(), GlobalUtils.FILE_TIMES);
image.setUrl(path);
});
productCase.setImageList(caseImages);

View File

@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSON;
import com.bonus.business.domain.ProductCaseImage;
import com.bonus.business.domain.TbProduct;
import com.bonus.business.domain.TbProductCase;
import com.bonus.business.global.GlobalUtils;
import com.bonus.business.mapper.ProductMapper;
import com.bonus.business.service.ProductService;
import com.bonus.common.config.MinioConfig;
@ -61,7 +62,7 @@ public class ProductServiceImpl implements ProductService {
List<TbProduct> list=mapper.selectProductList(product);
if(StringUtils.isNotEmpty(list)){
list.forEach(vo->{
String url = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getLinkImage(),60*60*12);
String url = minioUtil.getFileUrl(minioConfig.getBucketName(),vo.getLinkImage(), GlobalUtils.FILE_TIMES);
vo.setLinkImage(url);
// vo.setLinkImage(minioConfig.getUrl()+"/"+minioConfig.getBucketName()+vo.getLinkImage());
});
@ -242,7 +243,7 @@ public class ProductServiceImpl implements ProductService {
List<ProductCaseImage> list=mapper.getCaseImageByTable(product.getId(),"tb_product");
if(StringUtils.isNotEmpty(list)){
ProductCaseImage vo1=list.get(0);
String url=minioUtil.getFileUrl(vo1.getBucketName(),vo1.getFilePath(),60*60*12);
String url=minioUtil.getFileUrl(vo1.getBucketName(),vo1.getFilePath(), GlobalUtils.FILE_TIMES);
vo1.setUrl(url);
// vo1.setUrl(minioConfig.getUrl()+"/"+vo1.getBucketName()+vo1.getFilePath());
vo.setImage(vo1);

View File

@ -7,6 +7,7 @@ import com.bonus.business.domain.ProductCaseImage;
import com.bonus.business.domain.TbPromotionMaterial;
import com.bonus.business.domain.TbPromotionMaterialFiles;
import com.bonus.business.domain.WebFileDto;
import com.bonus.business.global.GlobalUtils;
import com.bonus.business.mapper.TbPromotionMaterialMapper;
import com.bonus.business.service.ITbPromotionMaterialService;
import com.bonus.common.config.MinioConfig;
@ -16,6 +17,7 @@ import com.bonus.common.utils.SecurityUtils;
import com.bonus.common.utils.StringUtils;
import com.bonus.common.utils.file.FileTypeUtils;
import com.bonus.file.config.SysFile;
import com.bonus.file.minio.MinioUtil;
import com.bonus.file.service.FileUploadService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -38,6 +40,9 @@ public class TbPromotionMaterialServiceImpl implements ITbPromotionMaterialServi
@Autowired
private MinioConfig minioConfig;
@Autowired
public MinioUtil minioUtil;
@Resource
private FileUploadService fileUploadService;
@ -60,11 +65,13 @@ public class TbPromotionMaterialServiceImpl implements ITbPromotionMaterialServi
for (TbPromotionMaterial bean : tbPromotionMaterials) {
//查询附件
bean.setType("2");
bean.setImage(minioConfig.getUrl()+"/"+minioConfig.getBucketName() + bean.getImage());
String imageUlr = minioUtil.getFileUrl(minioConfig.getBucketName(),bean.getImage(), GlobalUtils.FILE_TIMES);
bean.setImage(imageUlr);
List<TbPromotionMaterialFiles> files = mapper.getFileMaterialId(bean);
//拼接个访问前缀
for (TbPromotionMaterialFiles o: files) {
o.setFilePath(minioConfig.getUrl()+"/"+minioConfig.getBucketName() + o.getFilePath());
String path = minioUtil.getFileUrl(minioConfig.getBucketName(),o.getFilePath(),GlobalUtils.FILE_TIMES);
o.setFilePath(path);
}
bean.setFiles(files);
}
@ -85,7 +92,8 @@ public class TbPromotionMaterialServiceImpl implements ITbPromotionMaterialServi
List<TbPromotionMaterialFiles> files = mapper.getFileMaterialId(bean);
//拼接个访问前缀
for (TbPromotionMaterialFiles o: files) {
o.setFilePath(minioConfig.getUrl()+"/"+minioConfig.getBucketName() + o.getFilePath());
String filePath = minioUtil.getFileUrl(minioConfig.getBucketName(),o.getFilePath(), GlobalUtils.FILE_TIMES);
o.setFilePath(filePath);
}
bean.setFiles(files);
List<String> products =mapper.getProductByMaterialId(bean);

View File

@ -387,16 +387,12 @@ public class MinioUtil {
* @return 文件的临时访问 URL
* @throws Exception 若生成 URL 过程中发生异常
*/
public String getFileUrl(String bucketName, String objectName) throws Exception {
public String getFileUrl(String bucketName, String objectName) {
// 604800 = 7
return getFileUrl(bucketName, objectName, 604800);
}
public String getFileUrl(String bucketName, String objectName,long time) throws Exception {
// 604800 = 7
return getFileUrl(bucketName, objectName, time);
}
/**
* 删除指定的对象