ImageServiceImpl.java 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. package com.caimei.service.data.impl;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.caimei.mapper.cmMapper.AuthMapper;
  4. import com.caimei.mapper.cmMapper.ImageMapper;
  5. import com.caimei.model.ResponseJson;
  6. import com.caimei.model.po.FilePo;
  7. import com.caimei.model.po.ImagePo;
  8. import com.caimei.model.vo.ImageFormVo;
  9. import com.caimei.model.vo.ImageListVo;
  10. import com.caimei.model.vo.WxImageListVo;
  11. import com.caimei.service.data.ImageService;
  12. import com.caimei.service.auth.UploadService;
  13. import com.github.pagehelper.PageHelper;
  14. import com.github.pagehelper.PageInfo;
  15. import lombok.extern.slf4j.Slf4j;
  16. import org.apache.commons.lang3.StringUtils;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.stereotype.Service;
  19. import javax.annotation.Resource;
  20. import java.util.Date;
  21. import java.util.List;
  22. /**
  23. * Description
  24. *
  25. * @author : Aslee
  26. * @date : 2021/7/9
  27. */
  28. @Slf4j
  29. @Service
  30. public class ImageServiceImpl implements ImageService {
  31. @Resource
  32. private ImageMapper imageMapper;
  33. private UploadService uploadService;
  34. @Resource
  35. private AuthMapper authMapper;
  36. @Autowired
  37. public void setUploadService(UploadService uploadService) {
  38. this.uploadService = uploadService;
  39. }
  40. @Override
  41. public ResponseJson<PageInfo<ImageListVo>> getImageList(Integer listType, Integer authUserId, String imageTitle, Integer auditStatus, Integer status, Integer pageNum, Integer pageSize) {
  42. listType = null == listType ? 1 : listType;
  43. PageHelper.startPage(pageNum, pageSize);
  44. List<ImageListVo> imageList = imageMapper.getImageList(listType, authUserId, imageTitle, auditStatus, status);
  45. PageInfo<ImageListVo> pageData = new PageInfo<>(imageList);
  46. return ResponseJson.success(pageData);
  47. }
  48. @Override
  49. public ResponseJson saveImage(Integer imageId, Integer authUserId, String imageTitle, JSONArray imageArr) throws Exception {
  50. if (null == imageId && null == authUserId) {
  51. return ResponseJson.error("参数异常,请输入供应商用户id");
  52. }
  53. if (StringUtils.isEmpty(imageTitle)) {
  54. return ResponseJson.error("参数异常,请输入图片标题");
  55. }
  56. if (null == imageArr || imageArr.size() <= 0) {
  57. return ResponseJson.error("参数异常,请上传图片");
  58. }
  59. boolean insertFlag = null == imageId;
  60. ImageFormVo dbImage = null;
  61. if (!insertFlag) {
  62. dbImage = imageMapper.getImageForm(imageId);
  63. }
  64. /*
  65. 组装图片数据
  66. */
  67. ImagePo image = new ImagePo();
  68. image.setTitle(imageTitle);
  69. // 供应商保存,直接上线;机构保存,需要供应商审核通过后才上线
  70. if (null != dbImage && 1 != dbImage.getAuditStatus()) {
  71. // 被驳回的数据,编辑后变为待审核状态
  72. image.setStatus(2);
  73. image.setAuditStatus(2);
  74. } else {
  75. image.setStatus(1);
  76. image.setAuditStatus(1);
  77. }
  78. Integer adminUserId = authMapper.getAdminUserId();
  79. image.setAuditBy(adminUserId);
  80. image.setAuditTime(new Date());
  81. image.setCheckFlag(0);
  82. String imageZipUrl = uploadService.saveImageZip(imageArr);
  83. System.out.println("【图片上传】>>>>>>>>>>>>>>>>图片压缩包上传成功:"+imageZipUrl);
  84. image.setZipUrl(imageZipUrl);
  85. if (insertFlag) {
  86. image.setAuthUserId(authUserId);
  87. image.setCreateTime(new Date());
  88. // 插入图片
  89. imageMapper.insertImage(image);
  90. } else {
  91. image.setId(imageId);
  92. // 更新图片
  93. imageMapper.updateImageByImageId(image);
  94. // 删除原来的图片详情
  95. imageMapper.deleteImageDetail(imageId);
  96. }
  97. // 保存图片详情
  98. for (Object s : imageArr) {
  99. imageMapper.insertImageDetail(image.getId(), s.toString());
  100. }
  101. return ResponseJson.success("保存图片成功");
  102. }
  103. @Override
  104. public ResponseJson updateImageStatus(Integer imageId, Integer status) {
  105. if (null == imageId) {
  106. return ResponseJson.error("请输入图片id");
  107. }
  108. if (null == status) {
  109. return ResponseJson.error("请输入要更新的状态值");
  110. }
  111. imageMapper.updateImageStatusByImageId(imageId, status);
  112. if (0 == status) {
  113. return ResponseJson.success("下线图片成功");
  114. } else {
  115. return ResponseJson.success("上线图片成功");
  116. }
  117. }
  118. @Override
  119. public ResponseJson deleteImage(Integer imageId) {
  120. if (null == imageId) {
  121. return ResponseJson.error("参数异常,请输入图片id");
  122. }
  123. // 删除图片
  124. imageMapper.deleteImageByImageId(imageId);
  125. // 删除图片详情
  126. imageMapper.deleteImageDetail(imageId);
  127. return ResponseJson.success("删除图片成功");
  128. }
  129. @Override
  130. public ResponseJson auditImage(Integer imageId, Integer auditStatus, String invalidReason, Integer auditBy) {
  131. if (null == imageId) {
  132. return ResponseJson.error("请输入图片id");
  133. }
  134. if (null == auditStatus) {
  135. return ResponseJson.error("请输入审核结果");
  136. }
  137. if (0 == auditStatus && StringUtils.isEmpty(invalidReason)) {
  138. return ResponseJson.error("请输入审核不通过的原因");
  139. }
  140. if (null == auditBy) {
  141. return ResponseJson.error("请输入审核人用户id");
  142. }
  143. Date auditTime = new Date();
  144. // 授权状态更新
  145. Integer status = null;
  146. if (0 == auditStatus) {
  147. // 审核不通过,下线图片
  148. status = 0;
  149. } else {
  150. // 审核通过,上线图片
  151. status = 1;
  152. }
  153. imageMapper.updateImageAuditStatus(imageId, status, auditStatus, invalidReason, auditBy, auditTime);
  154. return ResponseJson.success("审核图片成功");
  155. }
  156. @Override
  157. public ResponseJson<ImageFormVo> getImageFormData(Integer imageId) {
  158. if (null == imageId) {
  159. return ResponseJson.error("参数异常,请输入图片id", null);
  160. }
  161. ImageFormVo image = imageMapper.getImageForm(imageId);
  162. if (null == image) {
  163. return ResponseJson.error("图片不存在", null);
  164. }
  165. List<String> imageList = imageMapper.getImageListByImageId(imageId);
  166. image.setImageList(imageList);
  167. return ResponseJson.success(image);
  168. }
  169. @Override
  170. public ResponseJson<PageInfo<WxImageListVo>> getWxImageList(Integer authUserId, String imageTitle, Integer pageNum, Integer pageSize) {
  171. if (null == authUserId) {
  172. return ResponseJson.error("参数异常,请输入供应商用户id", null);
  173. }
  174. PageHelper.startPage(pageNum, pageSize);
  175. List<WxImageListVo> wxImageList = imageMapper.getWxImageList(authUserId, imageTitle);
  176. wxImageList.forEach(image->{
  177. List<String> imageList = imageMapper.getImageListByImageId(image.getImageId());
  178. image.setImageList(imageList);
  179. });
  180. PageInfo<WxImageListVo> pageData = new PageInfo<>(wxImageList);
  181. return ResponseJson.success(pageData);
  182. }
  183. @Override
  184. public ResponseJson checkImage(Integer imageId) {
  185. imageMapper.checkImage(imageId);
  186. return ResponseJson.success();
  187. }
  188. }