From 733b9e6837365d2817d7e8a0005b2c167c18f77e Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期四, 19 六月 2025 17:58:48 +0800 Subject: [PATCH] 1.生产加工 2.煤种id优化 --- ruoyi-common/src/main/java/com/ruoyi/basic/service/impl/StorageBlobServiceImpl.java | 47 +++++++++++++++++++++++++++-------------------- 1 files changed, 27 insertions(+), 20 deletions(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/basic/service/impl/StorageBlobServiceImpl.java b/ruoyi-common/src/main/java/com/ruoyi/basic/service/impl/StorageBlobServiceImpl.java index 72c2dd7..1c51d86 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/basic/service/impl/StorageBlobServiceImpl.java +++ b/ruoyi-common/src/main/java/com/ruoyi/basic/service/impl/StorageBlobServiceImpl.java @@ -2,29 +2,26 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.basic.entity.StorageAttachment; import com.ruoyi.basic.entity.StorageBlob; import com.ruoyi.basic.entity.dto.StorageBlobDTO; import com.ruoyi.basic.mapper.StorageAttachmentMapper; import com.ruoyi.basic.mapper.StorageBlobMapper; import com.ruoyi.basic.service.StorageBlobService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.common.config.MinioConfig; -import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.MinioResult; import com.ruoyi.common.exception.file.InvalidExtensionException; -import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.file.MinioUtils; import com.ruoyi.common.utils.uuid.IdUtils; +import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import lombok.RequiredArgsConstructor; import org.springframework.web.multipart.MultipartFile; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * <p> @@ -47,13 +44,12 @@ private MinioUtils minioUtils; @Override - public List<StorageBlobDTO> updateStorageBlobs(List<MultipartFile> files, String bucketName) { + public List<StorageBlobDTO> updateStorageBlobs(List<MultipartFile> files, String bucketName,Long type) { // 鑻ユ病浼犲叆bucketName锛屽垯浣跨敤榛樿bucketName if (StringUtils.isEmpty(bucketName)) { - bucketName = minioUtils.getDefaultBucket(); + bucketName = minioUtils.getDefaultBucket(); } - List<StorageBlobDTO> storageBlobDTOs = new ArrayList<>(); for (MultipartFile file : files) { try { @@ -66,16 +62,17 @@ dto.setKey(IdUtils.simpleUUID()); dto.setBucketName(bucketName); dto.setUrl(minioUtils.getPreviewUrl(res.getBucketFileName(), bucketName, false)); + dto.setDownloadUrl(minioUtils.getDownloadUrl(res.getBucketFileName(), bucketName)); + if (type != null){ + dto.setType(type); + } // 鎻掑叆鏁版嵁搴� storageBlobMapper.insert(dto); - storageBlobDTOs.add(dto); } catch (InvalidExtensionException e) { - throw new RuntimeException("minio鏂囦欢涓婁紶寮傚父锛�" + e); + throw new RuntimeException("minio鏂囦欢涓婁紶寮傚父锛�" + e); } } - - return storageBlobDTOs; } @@ -85,20 +82,30 @@ .eq(StorageAttachment::getRecordId, attachment.getRecordId()) .eq(StorageAttachment::getRecordType, attachment.getRecordType()) .eq(StorageAttachment::getName, attachment.getName())); - List<Long> ids = attachments.stream().map(StorageAttachment::getStorageBlobId).toList(); - List<StorageBlob> storageBlobs = storageBlobMapper.selectList(new LambdaQueryWrapper<StorageBlob>() - .in(StorageBlob::getId, ids)); + List<Long> ids = attachments.stream() + .map(StorageAttachment::getStorageBlobId) + .collect(Collectors.toList()); + List<StorageBlob> storageBlobs = new ArrayList<>(); + if (!ids.isEmpty()) { + // 鍙湪ID鍒楄〃闈炵┖鏃舵墽琛屾煡璇� + storageBlobs = storageBlobMapper.selectList( + new LambdaQueryWrapper<StorageBlob>().in(StorageBlob::getId, ids) + ); + } + + // 绉婚櫎MinIO涓殑鏂囦欢 if (!storageBlobs.isEmpty()) { for (StorageBlob storageBlob : storageBlobs) { - // 绉婚櫎妗跺唴鏂囦欢 - minioUtils.removeObjectsResult(storageBlob.getBucketName(), storageBlob.getBucketName()); + minioUtils.removeObjectsResult(storageBlob.getBucketName(), storageBlob.getBucketFilename()); } } + // 鍒犻櫎鏁版嵁搴撹褰� if (!ids.isEmpty()) { - return storageBlobMapper.delete(new QueryWrapper<StorageBlob>().lambda().in(StorageBlob::getId, ids)); + return storageBlobMapper.delete( + new QueryWrapper<StorageBlob>().lambda().in(StorageBlob::getId, ids) + ); } - return 0; } } -- Gitblit v1.9.3