ProjectImportService.java 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package cn.cslg.pas.service;
  2. import cn.cslg.pas.common.model.vo.ProjectImportVO;
  3. import cn.cslg.pas.common.utils.DateUtils;
  4. import cn.cslg.pas.common.utils.FileUtils;
  5. import cn.cslg.pas.common.utils.Response;
  6. import cn.cslg.pas.common.utils.StringUtils;
  7. import cn.cslg.pas.domain.Project;
  8. import cn.cslg.pas.domain.ProjectImport;
  9. import cn.cslg.pas.mapper.ProjectImportMapper;
  10. import cn.hutool.core.io.FileUtil;
  11. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  12. import com.baomidou.mybatisplus.core.metadata.IPage;
  13. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  14. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  15. import lombok.RequiredArgsConstructor;
  16. import org.springframework.context.annotation.Lazy;
  17. import org.springframework.stereotype.Service;
  18. import org.springframework.transaction.annotation.Transactional;
  19. import java.io.File;
  20. import java.util.Date;
  21. /**
  22. * @author Administrator
  23. * @description 针对表【os_thematic_import(专题库数据导入记录)】的数据库操作Service
  24. * @createDate 2022-05-19 10:55:10
  25. */
  26. @Service
  27. @RequiredArgsConstructor(onConstructor_ = {@Lazy})
  28. public class ProjectImportService extends ServiceImpl<ProjectImportMapper, ProjectImport> {
  29. private final FileUtils fileUtils;
  30. private final ProjectImportStatusService projectImportStatusService;
  31. public IPage<ProjectImport> getPageList(ProjectImportVO params) {
  32. IPage<ProjectImport> pageList = baseMapper.getPageList(new Page<>(params.getCurrent(), params.getSize()), params);
  33. return pageList;
  34. }
  35. @Transactional
  36. public String delete(Integer id) {
  37. ProjectImport temp = this.getById(id);
  38. this.removeById(id);
  39. projectImportStatusService.deleteByImportId(id);
  40. if (StringUtils.isNotEmpty(temp.getUrl())) {
  41. FileUtil.del(fileUtils.getSystemPath(temp.getUrl()));
  42. }
  43. return Response.success(true);
  44. }
  45. public Integer add(Integer userId, String url) {
  46. File file = new File(fileUtils.getSystemPath(url));
  47. ProjectImport projectImport = new ProjectImport();
  48. projectImport.setCreateBy(userId);
  49. projectImport.setCreateTime(new Date());
  50. projectImport.setUrl(url);
  51. projectImport.setFileSize(FileUtil.size(file));
  52. projectImport.setFileName(file.getName());
  53. projectImport.insert();
  54. return projectImport.getId();
  55. }
  56. }