TortController.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. package cn.cslg.pas.controller;
  2. import cn.cslg.pas.common.core.base.Constants;
  3. import cn.cslg.pas.common.dto.business.*;
  4. import cn.cslg.pas.common.model.cronModel.Records;
  5. import cn.cslg.pas.common.utils.Response;
  6. import cn.cslg.pas.common.vo.business.ProductMessageVO;
  7. import cn.cslg.pas.common.vo.business.TortCompareRecordVO;
  8. import cn.cslg.pas.exception.ConditionException;
  9. import cn.cslg.pas.exception.UnLoginException;
  10. import cn.cslg.pas.exception.XiaoShiException;
  11. import cn.cslg.pas.service.business.TortCompareRecordService;
  12. import cn.cslg.pas.service.business.ProductMessageService;
  13. import cn.cslg.pas.service.business.ProjectTaskService;
  14. import io.swagger.v3.oas.annotations.Operation;
  15. import lombok.extern.slf4j.Slf4j;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.ArrayList;
  19. import java.util.List;
  20. /**
  21. * FTOTort
  22. * @Author xiexiang
  23. * @Date 2023/12/8
  24. */
  25. @Slf4j
  26. @RequestMapping(Constants.API_XiaoSHI + "/tort")
  27. @RestController
  28. public class TortController {
  29. @Autowired
  30. private ProductMessageService productMessageService;
  31. @Autowired
  32. private TortCompareRecordService tortCompareRecordService;
  33. @Autowired
  34. private ProjectTaskService projectTaskService;
  35. @Operation(summary = "编辑/保存标的产品信息")
  36. @PostMapping("/addProductMessage")
  37. public Response addProductMessage(@RequestBody ProductMessageDTO productMessageDTO){
  38. Integer id = productMessageService.addOrUpdateProductMessage(productMessageDTO);
  39. Records records = new Records();
  40. records.setData(id);
  41. return Response.success(records);
  42. }
  43. @Operation(summary = "查询标的产品信息")
  44. @GetMapping("/getProductMessage")
  45. public Response getProductMessage(Integer projectId){
  46. Records records = new Records();
  47. ProductMessageVO productMessageVO = productMessageService.getProductMessage(projectId);
  48. records.setData(productMessageVO);
  49. return Response.success(records);
  50. }
  51. @Operation(summary = "保存侵权对比结果")
  52. @PostMapping("/addTortCompareRecord")
  53. public Response addTortCompareRecord(@RequestBody TortCompareRecordDTO tortCompareRecordDTO){
  54. if (tortCompareRecordDTO != null) {
  55. List<Integer> ids = new ArrayList<>();
  56. try {
  57. ids = tortCompareRecordService.addTortCompareRecord(tortCompareRecordDTO);
  58. } catch (Exception e) {
  59. if (e instanceof XiaoShiException) {
  60. return Response.error(e.getMessage());
  61. } else if (e instanceof UnLoginException) {
  62. return Response.unLogin(e.getMessage());
  63. } else if (e instanceof ConditionException) {
  64. return Response.conditionError(e.getMessage());
  65. }
  66. }
  67. Records records = new Records();
  68. records.setData(ids);
  69. return Response.success(records);
  70. } else {
  71. return Response.error("入参为null");
  72. }
  73. }
  74. @Operation(summary = "发起人查询侵权分析对比结果(包含拆分特征)")
  75. @PostMapping("/getTortCompareRecord")
  76. public Response getTortCompareRecord(@RequestBody GetFeatureSplitDTO getFeatureSplitDTO) throws Exception {
  77. TortCompareRecordVO tortCompareRecordVO = tortCompareRecordService.getTortCompareRecord(getFeatureSplitDTO);
  78. return Response.success(tortCompareRecordVO);
  79. }
  80. @Operation(summary = "添加侵权分析协同任务")
  81. @PostMapping("/addTortTask")
  82. public Response addTortTask(@RequestBody TortTaskDTO tortTaskDTO){
  83. Integer id = projectTaskService.addTortTask(tortTaskDTO);
  84. Records records = new Records();
  85. records.setData(id);
  86. return Response.success(records);
  87. }
  88. @Operation(summary = "保存侵权分析协同任务对比结果")
  89. @PostMapping("/addTortTaskResult")
  90. public Response addTortTaskResult(@RequestBody TortTaskResultDTO tortTaskResultDTO){
  91. List<Integer> ids = tortCompareRecordService.addTortTaskResult(tortTaskResultDTO);
  92. Records records = new Records();
  93. records.setData(ids);
  94. return Response.success(records);
  95. }
  96. @Operation(summary = "查询侵权分析协同前后对比结果")
  97. @GetMapping("/getAllTortTaskResult")
  98. public Response getAllTortTaskResult(Integer taskId){
  99. TortCompareRecordVO tortCompareRecordVO = tortCompareRecordService.getAllTortTaskResult(taskId);
  100. return Response.success(tortCompareRecordVO);
  101. }
  102. @Operation(summary = "发起人保存侵权分析协同后最终的对比结果")
  103. @PostMapping("/addFinalTortResult")
  104. public Response addFinalTortResult(@RequestBody TortCompareRecordDTO tortCompareRecordDTO){
  105. List<Integer> ids = tortCompareRecordService.addFinalTortResult(tortCompareRecordDTO);
  106. Records records = new Records();
  107. records.setData(ids);
  108. return Response.success(records);
  109. }
  110. }