YozoServiceImpl.java 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. package jnpf.service.impl;
  2. import jnpf.base.service.SuperServiceImpl;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
  5. import com.baomidou.mybatisplus.core.metadata.IPage;
  6. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  7. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  8. import jnpf.constant.MsgCode;
  9. import jnpf.entity.FileEntity;
  10. import jnpf.base.ActionResult;
  11. import jnpf.base.vo.PaginationVO;
  12. import jnpf.mapper.FileMapper;
  13. import jnpf.model.YozoFileParams;
  14. import jnpf.service.YozoService;
  15. import jnpf.utils.SplicingUrlUtil;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.stereotype.Service;
  18. import java.io.UnsupportedEncodingException;
  19. import java.net.URLDecoder;
  20. import java.util.List;
  21. /**
  22. *
  23. *
  24. * @author JNPF开发平台组
  25. * @version V3.1.0
  26. * @copyright 引迈信息技术有限公司(https://www.jnpfsoft.com)
  27. * @date 2021/5/13
  28. */
  29. @Service
  30. public class YozoServiceImpl extends SuperServiceImpl<FileMapper,FileEntity> implements YozoService {
  31. @Autowired
  32. private FileMapper fileMapper;
  33. @Override
  34. public String getPreviewUrl(YozoFileParams params) {
  35. String previewUrl = SplicingUrlUtil.getPreviewUrl(params);
  36. return previewUrl;
  37. }
  38. @Override
  39. public ActionResult saveFileId(String fileVersionId, String fileId, String fileName) {
  40. FileEntity fileEntity =new FileEntity();
  41. fileEntity.setId(fileId);
  42. fileEntity.setFileName(fileName);
  43. fileEntity.setFileVersionId(fileVersionId);
  44. fileEntity.setType("create");
  45. this.save(fileEntity);
  46. return ActionResult.success(MsgCode.SU001.get());
  47. }
  48. @Override
  49. public FileEntity selectByName(String fileNa) {
  50. QueryWrapper<FileEntity> wrapper = new QueryWrapper<>();
  51. wrapper.lambda().eq(FileEntity::getFileName,fileNa);
  52. return this.getOne(wrapper);
  53. }
  54. @Override
  55. public ActionResult saveFileIdByHttp(String fileVersionId, String fileId, String fileUrl) {
  56. String fileName = "";
  57. String url = "";
  58. String name = "";
  59. try {
  60. url = URLDecoder.decode(fileUrl, "UTF-8");
  61. if (url.contains("/")) {
  62. fileName = url.substring(url.lastIndexOf("/") + 1);
  63. } else {
  64. fileName = url.substring(url.lastIndexOf("\\") + 1);
  65. }
  66. } catch (UnsupportedEncodingException e) {
  67. e.printStackTrace();
  68. }
  69. //同一url文件数
  70. QueryWrapper<FileEntity> wrapper = new QueryWrapper<>();
  71. wrapper.eq("F_Url", url);
  72. Long total = fileMapper.selectCount(wrapper);
  73. if (total == 0) {
  74. name = fileName;
  75. } else {
  76. String t = total.toString();
  77. name = fileName + "(" + t + ")";
  78. }
  79. FileEntity fileEntity = new FileEntity();
  80. fileEntity.setType(url.contains("http") ? "http" : "local");
  81. fileEntity.setFileVersionId(fileVersionId);
  82. fileEntity.setId(fileId);
  83. fileEntity.setFileName(name);
  84. fileEntity.setUrl(url);
  85. fileMapper.insert(fileEntity);
  86. return ActionResult.success(MsgCode.SU001.get());
  87. }
  88. @Override
  89. public ActionResult deleteFileByVersionId(String versionId) {
  90. QueryWrapper<FileEntity> wrapper = new QueryWrapper<>();
  91. wrapper.eq("F_FileVersion", versionId);
  92. int i = fileMapper.delete(wrapper);
  93. if (i == 1) {
  94. return ActionResult.success(MsgCode.SU003.get());
  95. }
  96. return ActionResult.fail(MsgCode.FA003.get());
  97. }
  98. @Override
  99. public FileEntity selectByVersionId(String fileVersionId) {
  100. QueryWrapper<FileEntity> wrapper = new QueryWrapper<>();
  101. wrapper.eq("F_FileVersion", fileVersionId);
  102. FileEntity fileEntity = fileMapper.selectOne(wrapper);
  103. return fileEntity;
  104. }
  105. @Override
  106. public ActionResult deleteBatch(String[] versions) {
  107. for (String version : versions) {
  108. QueryWrapper<FileEntity> wrapper = new QueryWrapper<>();
  109. wrapper.eq("F_FileVersion", version);
  110. int i = fileMapper.delete(wrapper);
  111. if (i == 0) {
  112. return ActionResult.fail(MsgCode.FA045.get(version));
  113. }
  114. }
  115. return ActionResult.success(MsgCode.SU003.get());
  116. }
  117. @Override
  118. public void editFileVersion(String oldFileId, String newFileId) {
  119. UpdateWrapper<FileEntity> wrapper = new UpdateWrapper<>();
  120. wrapper.eq("F_FileVersion", oldFileId);
  121. FileEntity fileEntity = new FileEntity();
  122. fileEntity.setFileVersionId(newFileId);
  123. fileEntity.setOldFileVersionId(oldFileId);
  124. fileMapper.update(fileEntity, wrapper);
  125. }
  126. @Override
  127. public List<FileEntity> getAllList(PaginationVO pageModel) {
  128. Page page = new Page(pageModel.getCurrentPage(), pageModel.getPageSize());
  129. IPage<FileEntity> iPage = fileMapper.selectPage(page, null);
  130. return iPage.getRecords();
  131. }
  132. }