PatentController.java 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. package cn.cslg.pas.controller;
  2. import cn.cslg.pas.common.core.base.Constants;
  3. import cn.cslg.pas.common.dto.GetAllPersonDTO;
  4. import cn.cslg.pas.common.dto.PatentColumnDTO;
  5. import cn.cslg.pas.common.dto.PatentDetailDTO;
  6. import cn.cslg.pas.common.dto.PatentKinDTO;
  7. import cn.cslg.pas.common.dto.business.EsCountDTO;
  8. import cn.cslg.pas.common.dto.business.SelectClaimDTO;
  9. import cn.cslg.pas.common.model.cronModel.Records;
  10. import cn.cslg.pas.common.model.request.StringRequest;
  11. import cn.cslg.pas.common.utils.Response;
  12. import cn.cslg.pas.common.vo.business.*;
  13. import cn.cslg.pas.common.vo.PatentPageMessageVO;
  14. import cn.cslg.pas.common.vo.PatentWithIdVO;
  15. import cn.cslg.pas.common.vo.StarPatentVO;
  16. import cn.cslg.pas.common.vo.business.EsAllCountVO;
  17. import cn.cslg.pas.common.vo.business.EsCountVO;
  18. import cn.cslg.pas.common.vo.business.PatentKinVO;
  19. import cn.cslg.pas.common.vo.business.PatentNoVO;
  20. import cn.cslg.pas.factorys.businessFactory.Business;
  21. import cn.cslg.pas.factorys.businessFactory.BusinessFactory;
  22. import cn.cslg.pas.service.business.MergePersonService;
  23. import cn.cslg.pas.service.business.es.EsCountService;
  24. import cn.cslg.pas.service.business.es.EsPatentService;
  25. import cn.cslg.pas.service.business.es.EsService;
  26. import cn.cslg.pas.service.common.PatentStarApiService;
  27. import io.swagger.v3.oas.annotations.Operation;
  28. import org.springframework.beans.factory.annotation.Autowired;
  29. import org.springframework.web.bind.annotation.*;
  30. import java.io.IOException;
  31. import java.util.List;
  32. @RequestMapping(Constants.API_XiaoSHI + "/patent")
  33. @RestController
  34. public class PatentController {
  35. @Autowired
  36. private BusinessFactory businessFactory;
  37. @Autowired
  38. private EsCountService esCountService;
  39. @Autowired
  40. private EsPatentService patentService;
  41. @Autowired
  42. private MergePersonService mergePersonService;
  43. @Autowired
  44. private EsService esService;
  45. @Autowired
  46. private PatentStarApiService patentStarApiService;
  47. @Operation(summary = "查询专利")
  48. @PostMapping("/queryPatent")
  49. public Response queryPatent(@RequestBody StringRequest stringRequest) throws Exception {
  50. Business business = businessFactory.getClass("patentService");
  51. Records records = (Records) business.queryMessage(stringRequest);
  52. return Response.success(records);
  53. }
  54. @Operation(summary = "查询专利详情")
  55. @PostMapping("/selectPatentDetail")
  56. public Response selectPatentDetail(@RequestBody PatentNoVO vo) throws Exception {
  57. PatentColumnDTO dto = patentService.selectPatentDetail(vo);
  58. return Response.success(dto);
  59. }
  60. @Operation(summary = "根据专利号查询同族")
  61. @PostMapping("/selectKinByPatentNo")
  62. public Response selectKinByPatentNo(@RequestBody PatentKinVO vo) throws Exception {
  63. List<PatentKinDTO> dto = patentService.selectKinByPatentNo(vo);
  64. return Response.success(dto);
  65. }
  66. @Operation(summary = "查询分页信息")
  67. @PostMapping("/getPatentPageMessage")
  68. public Response getPatentPageMessage(@RequestBody StringRequest stringRequest) throws Exception {
  69. Records records = patentService.getPatentPageMessage(stringRequest);
  70. return Response.success(records);
  71. }
  72. @Operation(summary = "专利的聚合统计")
  73. @PostMapping("/esCountAnalysis")
  74. public Response esCountAnalysis(@RequestBody EsAllCountVO countVO) throws Exception {
  75. EsCountDTO dto = esCountService.esCountAnalysis(countVO);
  76. return Response.success(dto);
  77. }
  78. @Operation(summary = "根据专利号查询内部专利")
  79. @GetMapping("/queryPatentByNo")
  80. public Response queryPatentByNo(String patentNo) throws Exception {
  81. PatentWithIdVO patentWithIdVO = esService.getIdByPatentNo(patentNo);
  82. if (patentWithIdVO == null) {
  83. return Response.success(null);
  84. }
  85. return Response.success(patentWithIdVO.getPatent());
  86. }
  87. @Operation(summary = "根据专利号查询内部专利")
  88. @GetMapping("/queryPatentByNoFromWeb")
  89. public Response queryPatentByNoFromWeb(String patentNo) throws Exception {
  90. StarPatentVO starPatentVO = patentStarApiService.getPatentByNo(patentNo);
  91. if (starPatentVO == null) {
  92. return Response.success(null);
  93. }
  94. return Response.success(starPatentVO);
  95. }
  96. @Operation(summary = "根据专利号查询内部权利要求")
  97. @GetMapping("/queryClaimByPatentNo")
  98. public Response queryClaimByPatentNo(String patentNo) throws Exception {
  99. SelectClaimDTO dto = esService.selectClaim(patentNo);
  100. return Response.success(dto);
  101. }
  102. //------------------------合并-----------------------------
  103. @Operation(summary = "专利列表上新增发明人/权利人/申请人合并")
  104. @PostMapping("/mergePerson")
  105. public Response mergePerson(@RequestBody MergePersonVO personVO) throws Exception {
  106. Integer personId = mergePersonService.mergePerson(personVO);
  107. return Response.success(personId);
  108. }
  109. @Operation(summary = "专利列表上编辑发明人/权利人/申请人合并")
  110. @PostMapping("/updateMergePerson")
  111. public Response updateMergePerson(@RequestBody MergePersonVO personVO) {
  112. Integer personId = mergePersonService.updateMergePerson(personVO);
  113. return Response.success(personId);
  114. }
  115. @Operation(summary = "发明人/权利人/申请人合并列表查询")
  116. @PostMapping("/selectMergePerson")
  117. public Response selectMergePerson(@RequestBody MergePersonQueryVO vo) {
  118. Records records = mergePersonService.selectMergePersonList(vo);
  119. return Response.success(records);
  120. }
  121. @Operation(summary = "获取所有发明人/权利人/申请人")
  122. @PostMapping("/getMergePerson")
  123. public Response getMergePerson(@RequestBody GetAllPersonVO vo) throws Exception {
  124. Records records = mergePersonService.getMergePerson(vo);
  125. return Response.success(records);
  126. }
  127. @Operation(summary = "发明人/权利人/申请人合并记录删除")
  128. @PostMapping("/delMergePerson")
  129. public Response delMergePerson(@RequestBody MergePersonIdVO vo) {
  130. Integer id = mergePersonService.delMergePerson(vo);
  131. return Response.success(id);
  132. }
  133. }