MedMyMaterialController.java 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. //package com.backendsys.controller.Med;
  2. //
  3. //import com.backendsys.aspect.HttpRequestAspect;
  4. //import com.backendsys.entity.Med.MedMaterialDTO;
  5. //import com.backendsys.entity.Med.MedMyMaterialDTO;
  6. //import com.backendsys.mapper.Med.MedMaterialMapper;
  7. //import com.backendsys.mapper.Med.MedMyMaterialMapper;
  8. //import com.backendsys.entity.PageDTO;
  9. //import com.backendsys.service.Med.MedMyMaterialService;
  10. //import com.backendsys.utils.response.Result;
  11. //import com.backendsys.utils.response.ResultEnum;
  12. //import org.springframework.beans.factory.annotation.Autowired;
  13. //import org.springframework.security.access.prepost.PreAuthorize;
  14. //import org.springframework.validation.annotation.Validated;
  15. //import org.springframework.web.bind.annotation.*;
  16. //
  17. //import java.util.Map;
  18. //import java.util.Set;
  19. //import java.util.HashSet;
  20. //import java.util.List;
  21. //import java.util.Arrays;
  22. //
  23. ///**
  24. // * 素材
  25. // */
  26. //@RestController
  27. //public class MedMyMaterialController {
  28. //
  29. // @Autowired
  30. // private HttpRequestAspect httpRequestAspect;
  31. //
  32. // @Autowired
  33. // private MedMyMaterialService medMyMaterialService;
  34. //
  35. // @Autowired
  36. // private MedMyMaterialMapper medMyMaterialMapper;
  37. //
  38. // @Autowired
  39. // private MedMaterialMapper medMaterialMapper;
  40. //
  41. // @PreAuthorize("@sr.hasPermission('21.1')")
  42. // @GetMapping("/api/med/material/getMyMaterial")
  43. // public Result getMyMaterial(@Validated PageDTO pageDTO, @Validated MedMyMaterialDTO medMyMaterialDTO) {
  44. //
  45. // // [查询] 自身 UserId
  46. // Long user_id = httpRequestAspect.getUserId();
  47. // medMyMaterialDTO.setUser_id(user_id);
  48. //
  49. // return Result.success(medMyMaterialService.queryMyMaterial(pageDTO.getPage_num(), pageDTO.getPage_size(), medMyMaterialDTO));
  50. // }
  51. //
  52. // @PreAuthorize("@sr.hasPermission('21.1.1')")
  53. // @GetMapping("/api/med/material/getMyMaterialDetail")
  54. // public Result getMyMaterialDetail(@Validated(MedMyMaterialDTO.Detail.class) MedMyMaterialDTO medMyMaterialDTO) {
  55. //
  56. // // 判断是否当前用户所有,不是则不可操作
  57. // Map<String, Object> myMaterial = medMyMaterialService.queryMyMaterialDetail(medMyMaterialDTO);
  58. // Long user_id = (Long) myMaterial.get("user_id");
  59. // Long self_user_id = httpRequestAspect.getUserId();
  60. // if (user_id != self_user_id) {
  61. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "该资源非用户所有,不可操作");
  62. // }
  63. //
  64. // return Result.success(myMaterial);
  65. // }
  66. //
  67. // /**
  68. // * 加入我的素材 (从素材中心)
  69. // * @param medMyMaterialDTO
  70. // * @return
  71. // */
  72. // @PreAuthorize("@sr.hasPermission('21.1.2')")
  73. // @PostMapping("/api/med/material/addToMyMaterial")
  74. // public Result addToMyMaterial(@Validated(MedMyMaterialDTO.Create.class) @RequestBody MedMyMaterialDTO medMyMaterialDTO) {
  75. //
  76. // // [查询] 自身 UserId
  77. // Long user_id = httpRequestAspect.getUserId();
  78. // medMyMaterialDTO.setUser_id(user_id);
  79. //
  80. // // 查询素材详情
  81. // Long material_id = (Long) medMyMaterialDTO.getMaterial_id();
  82. // MedMaterialDTO medMaterialDTO = new MedMaterialDTO();
  83. // medMaterialDTO.setMaterial_id(material_id);
  84. // Map<String, Object> materialDetail = medMaterialMapper.queryMaterialDetail(medMaterialDTO);
  85. // if (materialDetail == null) {
  86. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "素材不存在");
  87. // }
  88. //
  89. // // 判断要加入的素材,必须是 (启用/审核通过) 的
  90. // // 素材状态 (-1禁用, 1启用),审核状态 (-1审核拒绝, 1待审核, 2审核通过)
  91. // Integer status = (Integer) materialDetail.get("status");
  92. // Integer audit_status = (Integer) materialDetail.get("audit_status");
  93. // if (status != 1 || audit_status != 2) {
  94. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "素材未公开或未审核通过");
  95. // }
  96. //
  97. // return Result.success(medMyMaterialService.addToMyMaterial(medMyMaterialDTO, materialDetail), "创建成功");
  98. // }
  99. //
  100. // /**
  101. // * 分享我的素材 (到素材列表)
  102. // * @param medMyMaterialDTO
  103. // * @return
  104. // */
  105. // @PreAuthorize("@sr.hasPermission('21.1.3')")
  106. // @PostMapping("/api/med/material/shareToMaterial")
  107. // public Result shareToMaterial(@Validated(MedMyMaterialDTO.Detail.class) @RequestBody MedMyMaterialDTO medMyMaterialDTO) {
  108. //
  109. // // [查询] 自身 UserId
  110. // Long user_id = httpRequestAspect.getUserId();
  111. // medMyMaterialDTO.setUser_id(user_id);
  112. //
  113. // // 查询素材详情
  114. // Map<String, Object> myMaterialDetail = medMyMaterialMapper.queryMyMaterialDetail(medMyMaterialDTO);
  115. // if (myMaterialDetail == null) {
  116. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "素材不存在");
  117. // }
  118. //
  119. // // // 判断要加入的素材,必须是 (启用/审核通过) 的
  120. // // // 素材状态 (-1禁用, 1启用),审核状态 (-1审核拒绝, 1待审核, 2审核通过)
  121. // // Integer status = (Integer) materialDetail.get("status");
  122. // // Integer audit_status = (Integer) materialDetail.get("audit_status");
  123. // // if (status != 1 || audit_status != 2) {
  124. // // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "素材未公开或未审核通过");
  125. // // }
  126. //
  127. // return Result.success(medMyMaterialService.shareToMaterial(medMyMaterialDTO, myMaterialDetail), "创建成功");
  128. // }
  129. //
  130. //
  131. //
  132. // /**
  133. // * [方法] 根据 素材类型 (material_type) 判断对应必填字段
  134. // * 当 material_type 为:
  135. // * - 4 时,content 不为空
  136. // * - 1,2,3 时,file 不为空
  137. // */
  138. // private Result checkMaterialContent(MedMyMaterialDTO medMyMaterialDTO) {
  139. // Integer material_type = medMyMaterialDTO.getMaterial_type();
  140. // if (material_type == 4) {
  141. // String content = medMyMaterialDTO.getContent();
  142. // if (content == null || content == "") return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "(material_type:4) (content) 内容不能为空");
  143. // }
  144. // Set<Integer> materialTypes = new HashSet<>(Arrays.asList(1, 2, 3));
  145. // if (materialTypes.contains(material_type)) {
  146. // String file = medMyMaterialDTO.getFile();
  147. // if (file == null || file == "") return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "(material_type:" + material_type + ") (file) 文件路径不能为空");
  148. // }
  149. // return null;
  150. // }
  151. //
  152. // /**
  153. // * 创建我的素材 (用户)
  154. // * @param medMyMaterialDTO
  155. // * @return
  156. // */
  157. // @PreAuthorize("@sr.hasPermission('21.1.4')")
  158. // @PostMapping("/api/med/material/createMyMaterial")
  159. // public Result createMyMaterial(@Validated(MedMyMaterialDTO.Create.class) @RequestBody MedMyMaterialDTO medMyMaterialDTO) {
  160. //
  161. // // 获得自身账号 user_id
  162. // Long self_user_id = httpRequestAspect.getUserId();
  163. // medMyMaterialDTO.setUser_id(self_user_id);
  164. //
  165. // // [方法] 根据 素材类型 (material_type) 判断对应必填字段
  166. // Result valid = checkMaterialContent(medMyMaterialDTO);
  167. // if (valid != null) {
  168. // return valid;
  169. // }
  170. //
  171. // return Result.success(medMyMaterialService.insertMyMaterial(medMyMaterialDTO), "创建成功");
  172. // }
  173. //
  174. // @PreAuthorize("@sr.hasPermission('21.1.5')")
  175. // @PutMapping("/api/med/material/updateMyMaterial")
  176. // public Result updateMyMaterial(@Validated(MedMaterialDTO.Update.class) @RequestBody MedMyMaterialDTO medMyMaterialDTO) {
  177. //
  178. // // [方法] 根据 素材类型 (material_type) 判断对应必填字段
  179. // Result valid = checkMaterialContent(medMyMaterialDTO);
  180. // if (valid != null) {
  181. // return valid;
  182. // }
  183. //
  184. // return Result.success(medMyMaterialService.updateMyMaterial(medMyMaterialDTO), "更新成功");
  185. // }
  186. //
  187. //
  188. //
  189. // @PreAuthorize("@sr.hasPermission('21.1.6')")
  190. // @DeleteMapping("/api/med/material/deleteMyMaterial")
  191. // public Result deleteMyMaterial(@Validated(MedMyMaterialDTO.Delete.class) @RequestBody MedMyMaterialDTO medMyMaterialDTO) {
  192. //
  193. // Map<String, Object> myMaterial = medMyMaterialService.queryMyMaterialDetail(medMyMaterialDTO);
  194. //
  195. // // 判断是否存在
  196. // if (myMaterial == null) {
  197. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "资源不存在");
  198. // }
  199. //
  200. // // 判断是否当前用户所有 (匹配 user_id),不是则不可操作
  201. // Long user_id = (Long) myMaterial.get("user_id");
  202. // Long self_user_id = httpRequestAspect.getUserId();
  203. // if (user_id != self_user_id) {
  204. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "该资源非用户所有,不可操作");
  205. // }
  206. //
  207. // return Result.success(medMyMaterialService.deleteMyMaterial(medMyMaterialDTO), "删除成功");
  208. // }
  209. //
  210. // @PreAuthorize("@sr.hasPermission('21.1.6')")
  211. // @DeleteMapping("/api/med/material/deleteMyMaterialBatch")
  212. // public Result deleteMyMaterialBatch(@Validated(MedMyMaterialDTO.Delete.class) @RequestBody MedMyMaterialDTO medMyMaterialDTO) {
  213. //
  214. // List<Map<String, Object>> myMaterials = medMyMaterialMapper.queryMyMaterialList(medMyMaterialDTO);
  215. //
  216. // // 判断是否存在
  217. // if (myMaterials.isEmpty()) {
  218. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "资源不存在");
  219. // }
  220. //
  221. // // 判断是否当前用户所有 (匹配 user_id),不是则不可操作 (批量遍历)
  222. // Long self_user_id = httpRequestAspect.getUserId();
  223. // boolean isCurrentUserAll = true;
  224. // for (Map<String, Object> myMaterial : myMaterials) {
  225. // Long user_id = (Long) myMaterial.get("user_id");
  226. // if (!self_user_id.equals(user_id)) {
  227. // isCurrentUserAll = false;
  228. // break;
  229. // }
  230. // }
  231. //
  232. // if (isCurrentUserAll) {
  233. // List<Long> my_material_ids = medMyMaterialDTO.getMy_material_ids();
  234. // return Result.success(medMyMaterialService.deleteMyMaterialBatch(my_material_ids), "删除成功");
  235. // } else {
  236. // return Result.error(ResultEnum.DATABASE_OPERATION_FAILED.getCode(), "该资源非用户所有,不可操作");
  237. // }
  238. // }
  239. //
  240. //}