CenterdataTAttachServiceImpl.java 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. package com.ruoyi.system.service.impl;
  2. import com.alibaba.fastjson.JSON;
  3. import com.ruoyi.common.core.utils.DateUtils;
  4. import com.ruoyi.common.core.utils.SpringUtils;
  5. import com.ruoyi.common.core.utils.file.FilePrefixUtils;
  6. import com.ruoyi.system.api.RemoteFileService;
  7. import com.ruoyi.system.api.domain.SysFile;
  8. import com.ruoyi.system.domain.CenterdataTAttach;
  9. import com.ruoyi.system.mapper.CenterdataTAttachMapper;
  10. import com.ruoyi.system.service.ICenterdataTAttachService;
  11. import org.apache.commons.collections4.MapUtils;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.stereotype.Service;
  14. import org.springframework.transaction.annotation.Transactional;
  15. import org.springframework.web.multipart.MultipartFile;
  16. import java.util.List;
  17. import java.util.Map;
  18. /**
  19. * 附件Service业务层处理
  20. *
  21. * @author ruoyi
  22. * @date 2022-06-11
  23. */
  24. @Service
  25. public class CenterdataTAttachServiceImpl extends BaseServiceImpl implements ICenterdataTAttachService {
  26. @Autowired
  27. private CenterdataTAttachMapper centerdataTAttachMapper;
  28. /**
  29. * 查询附件
  30. *
  31. * @param busId 附件主键
  32. * @return 附件
  33. */
  34. @Override
  35. public CenterdataTAttach selectCenterdataTAttachByBusId(String busId) {
  36. return centerdataTAttachMapper.selectCenterdataTAttachByBusId(busId);
  37. }
  38. /**
  39. * 查询附件列表
  40. *
  41. * @param centerdataTAttach 附件
  42. * @return 附件
  43. */
  44. @Override
  45. public List<CenterdataTAttach> selectCenterdataTAttachList(CenterdataTAttach centerdataTAttach) {
  46. return centerdataTAttachMapper.selectCenterdataTAttachList(centerdataTAttach);
  47. }
  48. @Override
  49. public List<CenterdataTAttach> remotelistNew(CenterdataTAttach centerdataTAttach) {
  50. return centerdataTAttachMapper.remotelistNew(centerdataTAttach);
  51. }
  52. /**
  53. * 新增附件
  54. *
  55. * @param centerdataTAttach 附件
  56. * @return 结果
  57. */
  58. @Override
  59. public int insertCenterdataTAttach(CenterdataTAttach centerdataTAttach) {
  60. /*
  61. *ImageUpload返回是全路径,数据库保存不要ip和端口号
  62. */
  63. if (centerdataTAttach.getAttachPath().startsWith("http")) {
  64. String attachPath = centerdataTAttach.getAttachPath();
  65. if (centerdataTAttach.getAttachPath().contains("Download")) {
  66. int i1 = attachPath.indexOf("group=");
  67. attachPath = attachPath.replace("&&path=", "/");
  68. attachPath = attachPath.substring(i1 + 6);
  69. centerdataTAttach.setAttachPath(attachPath);
  70. } else {
  71. int i1 = attachPath.indexOf('/');
  72. int i2 = attachPath.indexOf('/', i1 + 1);
  73. int i3 = attachPath.indexOf('/', i2 + 1);
  74. centerdataTAttach.setAttachPath(centerdataTAttach.getAttachPath().substring(i3 + 1, attachPath.length()));
  75. }
  76. }
  77. return centerdataTAttachMapper.insertCenterdataTAttach(centerdataTAttach);
  78. }
  79. /**
  80. * 修改附件
  81. *
  82. * @param centerdataTAttach 附件
  83. * @return 结果
  84. */
  85. @Override
  86. public int updateCenterdataTAttach(CenterdataTAttach centerdataTAttach) {
  87. return centerdataTAttachMapper.updateCenterdataTAttach(centerdataTAttach);
  88. }
  89. /**
  90. * 删除附件信息
  91. *
  92. * @param busId 附件主键
  93. * @return 结果
  94. */
  95. @Override
  96. public int deleteCenterdataTAttachByBusId(String busId) {
  97. return centerdataTAttachMapper.deleteCenterdataTAttachByBusId(busId);
  98. }
  99. @Transactional
  100. @Override
  101. public void updateEventAttach(Map<String, String> paramMap) {
  102. List<CenterdataTAttach> attaches = centerdataTAttachMapper.listCenterdataTAttachByBusId(MapUtils.getString(paramMap, "busId"));
  103. attaches.forEach(item -> {
  104. String url = "";
  105. if ("DH_1".equals(item.getBusSource())) {
  106. url = FilePrefixUtils.getUrlPrefix(item.getBusSource(), paramMap) + item.getAttachPath() + "?token=" + MapUtils.getString(paramMap, "token");
  107. } else {
  108. url = FilePrefixUtils.getUrlPrefix(item.getBusSource(), paramMap) + item.getAttachPath();
  109. }
  110. MultipartFile multipartFile = FilePrefixUtils.urlToMultipartFile(url, System.currentTimeMillis() + ".jpg");
  111. SysFile sysFile = SpringUtils.getBean(RemoteFileService.class).upload(multipartFile).getData();
  112. item.setFileName(item.getAttachPath());
  113. item.setAttachPath(sysFile.getUrl());
  114. item.setBusSource("APP".equals(MapUtils.getString(paramMap, "czlx")) ? "APP" : "PC");
  115. centerdataTAttachMapper.updateEventAttach(item);
  116. setSookaDataBase(item);
  117. item.setFileName(JSON.toJSONString(item));
  118. item.setCreateTime(DateUtils.getNowDate());
  119. centerdataTAttachMapper.insertEventFileLog(item);
  120. });
  121. }
  122. @Transactional
  123. @Override
  124. public void updateEventAttachSchedule(Map<String, Object> paramMap, SysFile sysFile) {
  125. CenterdataTAttach centerdataTAttach = new CenterdataTAttach();
  126. centerdataTAttach.setFileName(MapUtils.getString(paramMap, "url"));
  127. centerdataTAttach.setAttachPath(sysFile.getUrl());
  128. centerdataTAttach.setBusSource("PC");
  129. centerdataTAttach.setBusId(MapUtils.getString(paramMap, "busId"));
  130. centerdataTAttachMapper.updateEventAttach(centerdataTAttach);
  131. setSookaDataBase(centerdataTAttach);
  132. centerdataTAttach.setFileName(JSON.toJSONString(centerdataTAttach));
  133. centerdataTAttach.setCreateTime(DateUtils.getNowDate());
  134. centerdataTAttachMapper.insertEventFileLog(centerdataTAttach);
  135. }
  136. @Override
  137. public void updateEventAttach(CenterdataTAttach centerdataTAttach) {
  138. centerdataTAttachMapper.updateEventAttach(centerdataTAttach);
  139. }
  140. @Override
  141. public int insertListCenterdataTAttach(List<CenterdataTAttach> list) {
  142. return centerdataTAttachMapper.insertListCenterdataTAttach(list);
  143. }
  144. @Override
  145. public List<Map<String, Object>> selectFailUpattah() {
  146. return centerdataTAttachMapper.selectFailUpattah();
  147. }
  148. @Override
  149. public int deleteListCenterdataTAttach(String busId, List<CenterdataTAttach> list) {
  150. return centerdataTAttachMapper.deleteListCenterdataTAttach(busId, list);
  151. }
  152. @Override
  153. public List<String> selectDataAttachPathByBusId(String busId) {
  154. return centerdataTAttachMapper.selectDataAttachPathByBusId(busId);
  155. }
  156. }