From ed197ce7acddf4183b8459b57f0c39b0284b98b5 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期二, 20 七月 2021 17:26:20 +0800 Subject: [PATCH] update 完成OSS模块页面功能 --- ruoyi-oss/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java | 59 +++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 39 insertions(+), 20 deletions(-) diff --git a/ruoyi-oss/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java b/ruoyi-oss/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java index 1f9c764..ccbf2ad 100644 --- a/ruoyi-oss/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java +++ b/ruoyi-oss/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java @@ -3,63 +3,82 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; +import com.ruoyi.common.core.page.PagePlus; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.exception.CustomException; import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.oss.entity.UploadResult; import com.ruoyi.oss.factory.OssFactory; import com.ruoyi.oss.service.ICloudStorageService; +import com.ruoyi.system.bo.SysOssQueryBo; import com.ruoyi.system.domain.SysOss; import com.ruoyi.system.mapper.SysOssMapper; import com.ruoyi.system.service.ISysOssService; -import lombok.extern.slf4j.Slf4j; +import com.ruoyi.system.vo.SysOssVo; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.util.Collection; import java.util.List; +import java.util.Map; /** * 鏂囦欢涓婁紶 鏈嶅姟灞傚疄鐜� * * @author Lion Li */ -@Slf4j @Service -public class SysOssServiceImpl extends ServiceImpl<SysOssMapper, SysOss> implements ISysOssService { +public class SysOssServiceImpl extends ServicePlusImpl<SysOssMapper, SysOss> implements ISysOssService { @Override - public TableDataInfo<SysOss> queryPageList(SysOss sysOss) { + public TableDataInfo<SysOssVo> queryPageList(SysOssQueryBo bo) { + PagePlus<SysOss, SysOssVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo), SysOssVo.class); + return PageUtils.buildDataInfo(result); + } + + private LambdaQueryWrapper<SysOss> buildQueryWrapper(SysOssQueryBo bo) { + Map<String, Object> params = bo.getParams(); LambdaQueryWrapper<SysOss> lqw = Wrappers.lambdaQuery(); - lqw.like(StrUtil.isNotBlank(sysOss.getFileName()), SysOss::getFileName, sysOss.getFileName()); - lqw.like(StrUtil.isNotBlank(sysOss.getFileSuffix()), SysOss::getFileSuffix, sysOss.getFileSuffix()); - lqw.like(StrUtil.isNotBlank(sysOss.getUrl()), SysOss::getUrl, sysOss.getUrl()); - lqw.like(StrUtil.isNotBlank(sysOss.getService()), SysOss::getService, sysOss.getService()); - return PageUtils.buildDataInfo(page(PageUtils.buildPage(), lqw)); + lqw.like(StrUtil.isNotBlank(bo.getFileName()), SysOss::getFileName, bo.getFileName()); + lqw.like(StrUtil.isNotBlank(bo.getOriginalName()), SysOss::getOriginalName, bo.getOriginalName()); + lqw.eq(StrUtil.isNotBlank(bo.getFileSuffix()), SysOss::getFileSuffix, bo.getFileSuffix()); + lqw.eq(StrUtil.isNotBlank(bo.getUrl()), SysOss::getUrl, bo.getUrl()); + lqw.between(params.get("beginCreateTime") != null && params.get("endCreateTime") != null, + SysOss::getCreateTime, params.get("beginCreateTime"), params.get("endCreateTime")); + lqw.eq(StrUtil.isNotBlank(bo.getCreateBy()), SysOss::getCreateBy, bo.getCreateBy()); + lqw.eq(StrUtil.isNotBlank(bo.getService()), SysOss::getService, bo.getService()); + return lqw; } @Override public SysOss upload(MultipartFile file) { String originalfileName = file.getOriginalFilename(); String suffix = StrUtil.sub(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length()); + ICloudStorageService storage = OssFactory.instance(); + UploadResult uploadResult; try { - ICloudStorageService storage = OssFactory.instance(); - String url = storage.uploadSuffix(file.getBytes(), suffix); - // 淇濆瓨鏂囦欢淇℃伅 - SysOss oss = new SysOss() - .setUrl(url).setFileSuffix(suffix) - .setFileName(originalfileName) - .setService(storage.getServiceType()); - save(oss); - return oss; + uploadResult = storage.uploadSuffix(file.getBytes(), suffix, file.getContentType()); } catch (IOException e) { throw new CustomException("鏂囦欢璇诲彇寮傚父!!!", e); } + // 淇濆瓨鏂囦欢淇℃伅 + SysOss oss = new SysOss() + .setUrl(uploadResult.getUrl()) + .setFileSuffix(suffix) + .setFileName(uploadResult.getFilename()) + .setOriginalName(originalfileName) + .setService(storage.getServiceType()); + save(oss); + return oss; } @Override - public Boolean deleteByIds(Collection<Long> ids) { + public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { + if (isValid) { + // 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠� + } List<SysOss> list = listByIds(ids); for (SysOss sysOss : list) { ICloudStorageService storage = OssFactory.instance(sysOss.getService()); -- Gitblit v1.9.3