1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- package com.example.xiaoshiweixinback.controller;
- import com.alibaba.fastjson2.JSONObject;
- import com.example.xiaoshiweixinback.business.common.Constants;
- import com.example.xiaoshiweixinback.business.common.Response;
- import com.example.xiaoshiweixinback.business.common.base.Records;
- import com.example.xiaoshiweixinback.business.utils.FileUtils;
- import com.example.xiaoshiweixinback.entity.dto.esPicture.EsPictureNoDTO;
- import com.example.xiaoshiweixinback.entity.dto.esPicture.EsPatentVectorDTO;
- import com.example.xiaoshiweixinback.entity.dto.patent.CollectPatentDTO;
- import com.example.xiaoshiweixinback.entity.dto.patent.ImportTaskAMVO;
- import com.example.xiaoshiweixinback.entity.vo.esPicture.EsPictureNoVo;
- import com.example.xiaoshiweixinback.service.importPatent.EsDenseVectorService;
- import com.example.xiaoshiweixinback.service.importPatent.EsPatentService;
- import com.example.xiaoshiweixinback.service.importPatent.GetPatentFromExcelService;
- import com.example.xiaoshiweixinback.service.importPatent.ImportFromWebToEsService;
- import io.swagger.v3.oas.annotations.Operation;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import java.io.File;
- import java.util.List;
- @RequestMapping(Constants.XIAOSHI_WEIXINBACK + "/patent")
- @RestController
- public class PatentController {
- @Autowired
- private ImportFromWebToEsService importFromWebToEsService;
- @Autowired
- private EsDenseVectorService esDenseVectorService;
- @Autowired
- private GetPatentFromExcelService getPatentFromExcelService;
- @Autowired
- private EsPatentService esPatentService;
- //--------------------------- 导入 --------------------------
- @Operation(summary = "导入专利")
- @GetMapping(value = "/importPatent")
- public Response queryPatent(@RequestBody ImportTaskAMVO importTaskAMVO) {
- try {
- importFromWebToEsService.ImportTask(importTaskAMVO);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return Response.success("");
- }
- @Operation(summary = "excel导入")
- @GetMapping(value = "/importPatentE")
- public Response importPatentE(String path) {
- try {
- getPatentFromExcelService.run(path);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return Response.success("");
- }
- //--------------------------- 关于图片的专利检索 --------------------------
- @Operation(summary = "根据关键词获取列表(图片用于排序)--zero")
- @PostMapping(value = "/getPatentVectors")
- public Response getPatentVectors(@RequestParam(value = "vectorDTO", required = false) String vectorDTO, @RequestParam(value = "multipartFile", required = false) MultipartFile multipartFile) throws Exception {
- File file = FileUtils.multipartFileToFile(multipartFile);
- EsPatentVectorDTO esPatentVectorDTO = new EsPatentVectorDTO();
- if (StringUtils.isNotEmpty(vectorDTO)) {
- esPatentVectorDTO = JSONObject.parseObject(vectorDTO, EsPatentVectorDTO.class);
- }
- Records records = esDenseVectorService.getPatentVectors(esPatentVectorDTO, file);
- return Response.success(records);
- }
- @Operation(summary = "根据专利号获取相关图片--zero")
- @PostMapping(value = "/getPictureByNo")
- public Response getPictureByNo(@RequestBody EsPictureNoDTO pictureNoDTO) throws Exception {
- List<EsPictureNoVo> pictureByNo = esDenseVectorService.getPictureByNo(pictureNoDTO);
- return Response.success(pictureByNo);
- }
- //--------------------------- 收藏专利相关 --------------------------
- @Operation(summary = "收藏专利--zero")
- @PostMapping(value = "/collectPatent")
- public Response collectPatent(@RequestBody CollectPatentDTO patentDTO) throws Exception {
- boolean b = esPatentService.collectPatent(patentDTO);
- return Response.success(b);
- }
- //--------------------------- 其他 --------------------------
- }
|