From cf396d3076a064998fbac84f76861f5ed918c5e5 Mon Sep 17 00:00:00 2001 From: chenrui <1187576398@qq.com> Date: 星期四, 03 四月 2025 15:18:34 +0800 Subject: [PATCH] minio修改 --- basic-server/src/main/java/com/ruoyi/basic/service/impl/WorkShopFileServiceImpl.java | 83 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 80 insertions(+), 3 deletions(-) diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/WorkShopFileServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/WorkShopFileServiceImpl.java index bb11804..7067aad 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/WorkShopFileServiceImpl.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/WorkShopFileServiceImpl.java @@ -1,11 +1,19 @@ package com.ruoyi.basic.service.impl; - +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.basic.mapper.WorkShopFileMapper; -import com.ruoyi.basic.pojo.WorkShopFile; +import com.ruoyi.basic.mapper.*; +import com.ruoyi.basic.pojo.*; import com.ruoyi.basic.service.WorkShopFileService; +import com.ruoyi.common.config.MinioConfig; +import com.ruoyi.common.utils.file.MinioUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; /** * @description 閽堝琛ㄣ�恮ork_shop_file(杞﹂棿闄勪欢鍚嶇О)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇 @@ -14,6 +22,75 @@ @Service public class WorkShopFileServiceImpl extends ServiceImpl<WorkShopFileMapper, WorkShopFile> implements WorkShopFileService { + @Resource + private WorkShopFileMapper workShopFileMapper; + + @Resource + private ProductPartMapper productPartMapper; + + @Resource + private ProductMapper productMapper; + @Resource + private StructureTestObjectPartMapper structureTestObjectPartMapper; + + @Resource + private StructureTestObjectMapper structureTestObjectMapper; + + @Resource + private MinioUtils minioUtils; + + @Autowired + private MinioConfig minioConfig; + + @Override + public int delFile(Integer id) { + // 鑻� id 涓虹┖锛岀洿鎺ヨ繑鍥� 0锛岃〃绀烘湭鍒犻櫎浠讳綍璁板綍 + if (id == null) { + return 0; + } + try { + // 鏌ヨ瑕佸垹闄ょ殑鏂囦欢淇℃伅 + WorkShopFile file = workShopFileMapper.selectById(id); + if (file != null && file.getFileUrl() != null) { + // 妫�鏌� MinIO 涓枃浠舵槸鍚﹀瓨鍦� + if (minioUtils.objectExists(minioConfig.getBucketName(), file.getFileUrl())) { + // 鍏堝垹闄� MinIO 涓殑瀵硅薄 + minioUtils.removeObjectsResult(minioConfig.getBucketName(), file.getFileUrl()); + } + } + // 鎵ц鏁版嵁搴撳垹闄ゆ搷浣� + int deleteResult = workShopFileMapper.deleteById(id); + return deleteResult; + } catch (Exception e) { + // 澶勭悊寮傚父锛屽彲鏍规嵁瀹為檯鎯呭喌璁板綍鏃ュ織鎴栨姏鍑鸿嚜瀹氫箟寮傚父 + e.printStackTrace(); + return 0; + } + } + + @Override + public IPage<WorkShopFile> partFileList(Page page, String partNo) { + StructureTestObject structureTestObject = findStructureTestObjectByPartNo(partNo); + if (structureTestObject != null && structureTestObject.getWorkShopId() != null) { + return workShopFileMapper.selectPage(page, new LambdaQueryWrapper<WorkShopFile>().eq(WorkShopFile::getWorkShopId, structureTestObject.getWorkShopId())); + } + return null; + } + + private StructureTestObject findStructureTestObjectByPartNo(String partNo) { + ProductPart productPart = productPartMapper.selectOne(new LambdaQueryWrapper<ProductPart>().eq(ProductPart::getPartNo, partNo)); + if (productPart != null) { + Product product = productMapper.selectById(productPart.getProductId()); + if (product != null) { + return structureTestObjectMapper.selectById(product.getObjectId()); + } + } + StructureTestObjectPart structureTestObjectPart = structureTestObjectPartMapper.selectOne(new LambdaQueryWrapper<StructureTestObjectPart>().eq(StructureTestObjectPart::getPartNo, partNo)); + if (structureTestObjectPart != null) { + return structureTestObjectMapper.selectById(structureTestObjectPart.getTestObjectId()); + } + return null; + } } -- Gitblit v1.9.3