CrtDramaProjectController.java 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package com.backendsys.modules.crt.controller;
  2. import cn.hutool.core.util.ObjectUtil;
  3. import com.backendsys.exception.CustException;
  4. import com.backendsys.modules.common.config.security.enums.SecurityEnum;
  5. import com.backendsys.modules.common.config.security.utils.SecurityUtil;
  6. import com.backendsys.modules.common.utils.Result;
  7. import com.backendsys.modules.crt.entity.CrtDramaProject;
  8. import com.backendsys.modules.crt.service.CrtDramaProjectService;
  9. import io.swagger.v3.oas.annotations.Operation;
  10. import io.swagger.v3.oas.annotations.tags.Tag;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.security.access.prepost.PreAuthorize;
  13. import org.springframework.validation.annotation.Validated;
  14. import org.springframework.web.bind.annotation.*;
  15. @Validated
  16. @RestController
  17. @Tag(name = "短剧创作-项目管理")
  18. public class CrtDramaProjectController {
  19. @Autowired
  20. private SecurityUtil securityUtil;
  21. @Autowired
  22. private CrtDramaProjectService crtDramaProjectService;
  23. @Operation(summary = "获取短剧创作-项目列表 (全权限)")
  24. @PreAuthorize("@sr.hasPermission('36.1.1')")
  25. @GetMapping("/api/crt/drama/getDramaProjectAllList")
  26. public Result getDramaProjectAllList(@Validated CrtDramaProject crtDramaProject) {
  27. return Result.success().put("data", crtDramaProjectService.selectCrtDramaProjectList(crtDramaProject));
  28. }
  29. @Operation(summary = "获取短剧创作-项目列表 (我的)")
  30. @PreAuthorize("@sr.hasPermissions(T(java.util.Arrays).asList('36.1.1', '36.1.2'), T(com.backendsys.modules.common.enums.MatchType).OR)")
  31. @GetMapping("/api/crt/drama/getDramaProjectList")
  32. public Result getDramaProjectList(@Validated CrtDramaProject crtDramaProject) {
  33. crtDramaProject.setUser_id(SecurityUtil.getUserId());
  34. return Result.success().put("data", crtDramaProjectService.selectCrtDramaProjectList(crtDramaProject));
  35. }
  36. @Operation(summary = "获取短剧创作-创建项目")
  37. @PreAuthorize("@sr.hasPermission('36.1.2')")
  38. @PostMapping("/api/crt/drama/createDramaProject")
  39. public Result createDramaProject(@Validated(CrtDramaProject.Create.class) @RequestBody CrtDramaProject crtDramaProject) {
  40. crtDramaProject.setUser_id(SecurityUtil.getUserId());
  41. return Result.success().put("data", crtDramaProjectService.createCrtDramaProject(crtDramaProject));
  42. }
  43. @Operation(summary = "获取短剧创作-编辑项目")
  44. @PutMapping("/api/crt/drama/updateDramaProject")
  45. public Result updateDramaProject(@Validated(CrtDramaProject.Update.class) @RequestBody CrtDramaProject crtDramaProject) {
  46. return Result.success().put("data", crtDramaProjectService.updateCrtDramaProject(crtDramaProject));
  47. }
  48. }