ZbFileServiceImpl.java 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package com.ruoyi.system.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5. import com.ruoyi.common.config.RuoYiConfig;
  6. import com.ruoyi.common.utils.file.FileUtils;
  7. import com.ruoyi.system.domain.ZbFile;
  8. import com.ruoyi.system.service.IZbFileService;
  9. import com.ruoyi.system.mapper.ZbFileMapper;
  10. import com.ruoyi.system.service.IZbGalleryCategoryService;
  11. import lombok.RequiredArgsConstructor;
  12. import lombok.extern.slf4j.Slf4j;
  13. import org.springframework.stereotype.Service;
  14. import java.io.File;
  15. import java.io.IOException;
  16. import java.util.List;
  17. /**
  18. * 系统附件Service业务层处理
  19. *
  20. * @author ruoyi
  21. * @date 2020-11-19
  22. */
  23. @Slf4j
  24. @Service
  25. @RequiredArgsConstructor
  26. public class ZbFileServiceImpl extends ServiceImpl<ZbFileMapper, ZbFile> implements IZbFileService {
  27. private final IZbGalleryCategoryService categoryService;
  28. /**
  29. * 查询系统附件列表
  30. *
  31. * @param zbFile 系统附件
  32. * @return 系统附件
  33. */
  34. @Override
  35. public List<ZbFile> selectZbFileList(ZbFile zbFile, Page<ZbFile> page) {
  36. return baseMapper.selectZbFileList(zbFile, page);
  37. }
  38. /**
  39. * 新增系统附件
  40. *
  41. * @param zbFile 系统附件
  42. * @return 结果
  43. */
  44. @Override
  45. public int insertZbFile(ZbFile zbFile) {
  46. return baseMapper.insert(zbFile);
  47. }
  48. /**
  49. * 修改系统附件
  50. *
  51. * @param zbFile 系统附件
  52. * @return 结果
  53. */
  54. @Override
  55. public int updateZbFile(ZbFile zbFile) {
  56. return baseMapper.updateById(zbFile);
  57. }
  58. @Override
  59. public ZbFile findByHash(String hashString) {
  60. LambdaQueryWrapper<ZbFile> queryWrapper = new LambdaQueryWrapper<>();
  61. queryWrapper.eq(ZbFile::getFileHash, hashString).last("limit 1");
  62. return this.getOne(queryWrapper);
  63. }
  64. @Override
  65. public boolean deletePicture(ZbFile zbFile) {
  66. try {
  67. Integer id = zbFile.getId();
  68. zbFile = baseMapper.selectById(id);
  69. File file = new File(RuoYiConfig.getProfile() + File.separator + zbFile.getPath());
  70. log.info("删除原始文件: " + file);
  71. FileUtils.forceDelete(file);
  72. File fileThumbnail = new File(RuoYiConfig.getProfile() + File.separator + zbFile.getPath());
  73. log.info("删除缩略图文件: " + fileThumbnail);
  74. FileUtils.forceDelete(fileThumbnail);
  75. } catch (IOException e) {
  76. // TODO Auto-generated catch block
  77. log.info("删除文件失败");
  78. e.printStackTrace();
  79. }
  80. return true;
  81. }
  82. }