FieldController.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package cn.cslg.pas.controller;
  2. import cn.cslg.pas.common.core.base.Constants;
  3. import cn.cslg.pas.common.utils.Response;
  4. import cn.cslg.pas.service.ProjectFieldService;
  5. import cn.cslg.pas.service.ProjectFieldTreeService;
  6. import io.swagger.v3.oas.annotations.Operation;
  7. import io.swagger.v3.oas.annotations.tags.Tag;
  8. import lombok.RequiredArgsConstructor;
  9. import org.springframework.context.annotation.Lazy;
  10. import org.springframework.web.bind.annotation.GetMapping;
  11. import org.springframework.web.bind.annotation.PathVariable;
  12. import org.springframework.web.bind.annotation.RequestMapping;
  13. import org.springframework.web.bind.annotation.RestController;
  14. @Tag(name = "字段")
  15. @RestController
  16. @RequestMapping(Constants.API_VERSION_V2 + "/field")
  17. @RequiredArgsConstructor(onConstructor_ = {@Lazy})
  18. public class FieldController {
  19. private final ProjectFieldService projectFieldService;
  20. private final ProjectFieldTreeService projectFieldTreeService;
  21. @GetMapping("system")
  22. @Operation(summary = "根据专题库ID获取所有字段")
  23. public String getSystemField(Integer projectId) {
  24. return Response.success(projectFieldService.getSystemField(projectId));
  25. }
  26. @GetMapping("custom")
  27. @Operation(summary = "获取专题库自定义字段列表")
  28. public String getCustom(Integer projectId) {
  29. return Response.success(projectFieldService.getCustomField(projectId));
  30. }
  31. @GetMapping("/tree/{fieldId}")
  32. @Operation(summary = "根据ID获取树形自定义字段")
  33. public String getTreeList(@PathVariable Integer fieldId) {
  34. return Response.success(projectFieldTreeService.getProjectFieldTreeNodeByFieldId(fieldId));
  35. }
  36. }