ProjectShareController.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. package cn.cslg.pas.controller;
  2. import cn.cslg.pas.common.core.base.Constants;
  3. import cn.cslg.pas.common.dto.AddProjectPersonDTO;
  4. import cn.cslg.pas.common.dto.QueryProjectPersonDTO;
  5. import cn.cslg.pas.common.dto.business.AvoidDesignInsertDTO;
  6. import cn.cslg.pas.common.dto.business.GetFeatureSplitDTO;
  7. import cn.cslg.pas.common.model.cronModel.Records;
  8. import cn.cslg.pas.common.utils.Response;
  9. import cn.cslg.pas.common.vo.business.AvoidDesignWholeVO;
  10. import cn.cslg.pas.exception.ConditionException;
  11. import cn.cslg.pas.exception.UnLoginException;
  12. import cn.cslg.pas.exception.XiaoShiException;
  13. import cn.cslg.pas.service.business.AssoProjectPersonService;
  14. import cn.cslg.pas.service.business.AvoidDesignService;
  15. import cn.cslg.pas.service.business.AvoidDesignWholeService;
  16. import cn.cslg.pas.service.business.ProjectService;
  17. import io.swagger.v3.oas.annotations.Operation;
  18. import lombok.extern.slf4j.Slf4j;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.web.bind.annotation.PostMapping;
  21. import org.springframework.web.bind.annotation.RequestBody;
  22. import org.springframework.web.bind.annotation.RequestMapping;
  23. import org.springframework.web.bind.annotation.RestController;
  24. import java.util.ArrayList;
  25. import java.util.List;
  26. import java.util.Map;
  27. /**
  28. * 项目分享管理
  29. *
  30. * @Author xiexiang
  31. * @Date 2023/12/5
  32. */
  33. @Slf4j
  34. @RequestMapping(Constants.API_XiaoSHI + "/patentShare")
  35. @RestController
  36. public class ProjectShareController {
  37. @Autowired
  38. private AssoProjectPersonService assoProjectPersonService;
  39. @Autowired
  40. private ProjectService projectService;
  41. @Operation(summary = "新增项目分享")
  42. @PostMapping("/addProjectShare")
  43. public Response addProjectShare(@RequestBody AddProjectPersonDTO addProjectPersonDTO) throws Exception {
  44. if (addProjectPersonDTO == null) {
  45. return Response.error("入参为null");
  46. }
  47. Records records =new Records();
  48. try {
  49. List<Integer> ids = assoProjectPersonService.addProjectShare(addProjectPersonDTO);
  50. records.setData(ids);
  51. }
  52. catch (Exception e) {
  53. return Response.error(e.getMessage());
  54. }
  55. return Response.success(records);
  56. }
  57. @Operation(summary = "删除分享记录")
  58. @PostMapping("/removeProjectShare")
  59. public Response removeProjectShare(@RequestBody List<Integer> ids) throws Exception {
  60. Records records = new Records();
  61. try {
  62. List<Integer> reIds = assoProjectPersonService.removeProjectShare(ids);
  63. records.setData(reIds);
  64. } catch (Exception e) {
  65. return Response.error(e.getMessage());
  66. }
  67. return Response.success(records);
  68. }
  69. @Operation(summary = "查询分享记录")
  70. @PostMapping("/queryProjectShare")
  71. public Response queryProjectShare(@RequestBody QueryProjectPersonDTO queryProjectPersonDTO) throws Exception {
  72. Records records = new Records();
  73. try {
  74. records = assoProjectPersonService.queryProjectShare(queryProjectPersonDTO);
  75. } catch (Exception e) {
  76. return Response.error(e.getMessage());
  77. }
  78. return Response.success(records);
  79. }
  80. @Operation(summary = "查询人员在项目里的角色")
  81. @PostMapping("/getProjectPermissions")
  82. public Response getProjectPermissions(@RequestBody List<Integer> projectIds) throws Exception {
  83. Records records = new Records();
  84. try {
  85. Map<Integer,List<String>> map= projectService.getProjectPermissions(projectIds);
  86. records.setData(map);
  87. } catch (Exception e) {
  88. return Response.error(e.getMessage());
  89. }
  90. return Response.success(records);
  91. }
  92. }