|
@@ -5,6 +5,7 @@ import cn.cslg.pas.common.config.XDns;
|
|
import cn.cslg.pas.common.dto.PatentColumnDTO;
|
|
import cn.cslg.pas.common.dto.PatentColumnDTO;
|
|
import cn.cslg.pas.common.dto.PatentStarDTO;
|
|
import cn.cslg.pas.common.dto.PatentStarDTO;
|
|
import cn.cslg.pas.common.dto.PatentStarListDTO;
|
|
import cn.cslg.pas.common.dto.PatentStarListDTO;
|
|
|
|
+import cn.cslg.pas.common.dto.business.SelectClaimDTO;
|
|
import cn.cslg.pas.common.model.cronModel.PersonnelVO;
|
|
import cn.cslg.pas.common.model.cronModel.PersonnelVO;
|
|
import cn.cslg.pas.common.model.cronModel.Records;
|
|
import cn.cslg.pas.common.model.cronModel.Records;
|
|
import cn.cslg.pas.common.model.importTaskModel.PatentApplicant;
|
|
import cn.cslg.pas.common.model.importTaskModel.PatentApplicant;
|
|
@@ -19,6 +20,7 @@ import cn.cslg.pas.domain.es.PersonAddress;
|
|
import cn.cslg.pas.domain.es.Text;
|
|
import cn.cslg.pas.domain.es.Text;
|
|
import cn.cslg.pas.service.WebLoginConfigService;
|
|
import cn.cslg.pas.service.WebLoginConfigService;
|
|
|
|
|
|
|
|
+import cn.cslg.pas.service.importPatent.ImportFromWebToEsService;
|
|
import cn.cslg.pas.service.query.FormatQueryService;
|
|
import cn.cslg.pas.service.query.FormatQueryService;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
@@ -34,7 +36,9 @@ import org.joda.time.format.DateTimeFormat;
|
|
import org.joda.time.format.DateTimeFormatter;
|
|
import org.joda.time.format.DateTimeFormatter;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+import org.springframework.context.ApplicationContext;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -53,6 +57,8 @@ import java.util.regex.Pattern;
|
|
@Service
|
|
@Service
|
|
|
|
|
|
public class PatentStarApiService {
|
|
public class PatentStarApiService {
|
|
|
|
+ private ApplicationContext applicationContext;
|
|
|
|
+ private PatentStarApiService patentStarApiService;
|
|
@Autowired
|
|
@Autowired
|
|
private RetrieveRecordService retrieveRecordService;
|
|
private RetrieveRecordService retrieveRecordService;
|
|
@Autowired
|
|
@Autowired
|
|
@@ -767,14 +773,24 @@ public class PatentStarApiService {
|
|
List<Text> abstractList = new ArrayList<>();
|
|
List<Text> abstractList = new ArrayList<>();
|
|
Text text = new Text();
|
|
Text text = new Text();
|
|
text.setTextContent(item.getAbstractStr());
|
|
text.setTextContent(item.getAbstractStr());
|
|
|
|
+ text.setIfOrigin(true);
|
|
abstractList.add(text);
|
|
abstractList.add(text);
|
|
patentColumnDTO.setAbstractStr(abstractList);
|
|
patentColumnDTO.setAbstractStr(abstractList);
|
|
//装载标题
|
|
//装载标题
|
|
List<Text> titleList = new ArrayList<>();
|
|
List<Text> titleList = new ArrayList<>();
|
|
Text title = new Text();
|
|
Text title = new Text();
|
|
title.setTextContent(item.getName());
|
|
title.setTextContent(item.getName());
|
|
|
|
+ title.setIfOrigin(true);
|
|
titleList.add(title);
|
|
titleList.add(title);
|
|
|
|
+// text.setLanguage(patent.getAppCountry());
|
|
patentColumnDTO.setTitle(titleList);
|
|
patentColumnDTO.setTitle(titleList);
|
|
|
|
+ //装载权利要求
|
|
|
|
+ List<Text> claimList = new ArrayList<>();
|
|
|
|
+ Text claim = new Text();
|
|
|
|
+ claim.setTextContent(item.getClaimStr());
|
|
|
|
+ claim.setIfOrigin(true);
|
|
|
|
+ claimList.add(claim);
|
|
|
|
+ patentColumnDTO.setClaim(claimList);
|
|
//装载专利号
|
|
//装载专利号
|
|
if (patentColumnDTO.getAppNo() != null) {
|
|
if (patentColumnDTO.getAppNo() != null) {
|
|
if (patentColumnDTO.getAppNo().trim().startsWith("CN")) {
|
|
if (patentColumnDTO.getAppNo().trim().startsWith("CN")) {
|
|
@@ -800,10 +816,21 @@ public class PatentStarApiService {
|
|
appAddress.setAddress(item.getApplicationAddress());
|
|
appAddress.setAddress(item.getApplicationAddress());
|
|
appAddress.setProvince(item.getProvinceStr());
|
|
appAddress.setProvince(item.getProvinceStr());
|
|
patentColumnDTO.setApplicantAddr(appAddress);
|
|
patentColumnDTO.setApplicantAddr(appAddress);
|
|
|
|
+ //装载ipc(主)分类号
|
|
|
|
+ PatentClassify mipcClassify = new PatentClassify();
|
|
|
|
+ mipcClassify.setLevel5(item.getMainIpc());
|
|
|
|
+ patentColumnDTO.setMipc(mipcClassify);
|
|
//装载ipc分类号
|
|
//装载ipc分类号
|
|
- PatentClassify ipcClassify = new PatentClassify();
|
|
|
|
- ipcClassify.setLevel1(item.getMainIpc());
|
|
|
|
- patentColumnDTO.setMipc(ipcClassify);
|
|
|
|
|
|
+ List<PatentClassify> classifies = new ArrayList<>();
|
|
|
|
+ String[] split = item.getIpcListStr().split(";");
|
|
|
|
+ for (String ipc : split) {
|
|
|
|
+ PatentClassify ipcClassify = new PatentClassify();
|
|
|
|
+ ipcClassify.setLevel5(ipc);
|
|
|
|
+ }
|
|
|
|
+ patentColumnDTO.setIpc(classifies);
|
|
|
|
+ //获取摘要附图
|
|
|
|
+ String pictureApi = this.getPictureApi(patentColumnDTO.getAppNo());
|
|
|
|
+ patentColumnDTO.setPictureGuid(pictureApi);
|
|
//装载公开日
|
|
//装载公开日
|
|
if (item.getPublicDate() != null && !item.getPublicDate().trim().equals("")) {
|
|
if (item.getPublicDate() != null && !item.getPublicDate().trim().equals("")) {
|
|
patentColumnDTO.setPublicDate(DateUtils.strToDate(item.getPublicDate()));
|
|
patentColumnDTO.setPublicDate(DateUtils.strToDate(item.getPublicDate()));
|
|
@@ -848,4 +875,32 @@ public class PatentStarApiService {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 根据专利号查询外部权利要求
|
|
|
|
+ * @param patentNo
|
|
|
|
+ * @return
|
|
|
|
+ * @throws IOException
|
|
|
|
+ */
|
|
|
|
+ public SelectClaimDTO selectClaim(String patentNo) throws IOException {
|
|
|
|
+ PatentStarListDTO patentStarListDTO = new PatentStarListDTO();
|
|
|
|
+ String condition = "AN=" + patentNo;
|
|
|
|
+ patentStarListDTO.setCurrentQuery(condition);
|
|
|
|
+ patentStarListDTO.setDBType("CN");
|
|
|
|
+ patentStarListDTO.setOrderBy("AD");
|
|
|
|
+ patentStarListDTO.setOrderByType("DESC");
|
|
|
|
+ patentStarListDTO.setPageNum(1);
|
|
|
|
+ patentStarListDTO.setRowCount(10);
|
|
|
|
+ Records records = this.patentStarSearchLocal(patentStarListDTO);
|
|
|
|
+ Object data = records.getData();
|
|
|
|
+ String s = JSONArray.toJSONString(data);
|
|
|
|
+ List<PatentColumnDTO> list = JSONArray.parseArray(s, PatentColumnDTO.class);
|
|
|
|
+ SelectClaimDTO dto = new SelectClaimDTO();
|
|
|
|
+ if (!CollectionUtils.isEmpty(list)) {
|
|
|
|
+ for (PatentColumnDTO columnDTO : list) {
|
|
|
|
+ dto.setClaimContent(columnDTO.getClaim());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return dto;
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|