zero 1 년 전
부모
커밋
5ed2007a84

+ 3 - 0
src/main/java/cn/cslg/pas/common/vo/CompareLiteratureVO.java

@@ -1,6 +1,7 @@
 package cn.cslg.pas.common.vo;
 
 import cn.cslg.pas.common.model.cronModel.SystemFile;
+import cn.cslg.pas.common.vo.NoveltyProjectVO.NoveltyCompareRecordVO;
 import cn.cslg.pas.domain.BaseEntity;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -118,4 +119,6 @@ public class CompareLiteratureVO  {
      * 有益效果
      */
     private String beneficialEffect;
+    //标注
+    private NoveltyCompareRecordVO noveltyCompareRecordVO;
 }

+ 2 - 0
src/main/java/cn/cslg/pas/common/vo/QueryInventionPointVO.java

@@ -16,4 +16,6 @@ public class QueryInventionPointVO {
     private String createName;
 
     private Date createTime;
+
+    private String similarRate;
 }

+ 14 - 6
src/main/java/cn/cslg/pas/service/business/CompareLiteratureService.java

@@ -10,6 +10,7 @@ import cn.cslg.pas.common.model.cronModel.SystemFile;
 import cn.cslg.pas.common.utils.CacheUtils;
 import cn.cslg.pas.common.utils.LoginUtils;
 import cn.cslg.pas.common.vo.CompareLiteratureVO;
+import cn.cslg.pas.common.vo.NoveltyProjectVO.NoveltyCompareRecordVO;
 import cn.cslg.pas.common.vo.PatentWithIdVO;
 import cn.cslg.pas.common.vo.WebSocketMessageVO;
 import cn.cslg.pas.domain.business.CompareLiterature;
@@ -22,6 +23,7 @@ import cn.cslg.pas.exception.XiaoShiException;
 import cn.cslg.pas.mapper.CompareLiteratureMapper;
 import cn.cslg.pas.mapper.novelty.NoveltyCompareLiteratureMapper;
 import cn.cslg.pas.service.business.es.EsPatentService;
+import cn.cslg.pas.service.business.es.EsScratchWordsService;
 import cn.cslg.pas.service.business.es.EsService;
 import cn.cslg.pas.service.common.FileManagerService;
 import cn.cslg.pas.service.common.MessageService;
@@ -71,7 +73,8 @@ public class CompareLiteratureService extends ServiceImpl<CompareLiteratureMappe
 
     @Autowired
     private ImportSinglePatentService importSinglePatentService;
-
+    @Autowired
+    private EsScratchWordsService esScratchWordsService;
     @Autowired
     private EsService esService;
     @Autowired
@@ -177,7 +180,7 @@ public class CompareLiteratureService extends ServiceImpl<CompareLiteratureMappe
     }
 
     //查询对比文献
-    public Records queryCompareLiterature(LiteratureQueryDTO literatureQueryDTO) {
+    public Records queryCompareLiterature(LiteratureQueryDTO literatureQueryDTO) throws Exception {
         Integer projectId = literatureQueryDTO.getProjectId();
         Records records = new Records();
         //根据对比projectId 查询对比文献
@@ -204,27 +207,32 @@ public class CompareLiteratureService extends ServiceImpl<CompareLiteratureMappe
         ReportProject reportProject = reportProjectService.getOne(wrapper);
 
         compareLiteratureVOS = this.loadCompareLiterature(compareLiteratures, reportProject);
-        //装载不同的类型的对比文献
-        this.loadCompareLiteratureVOS(compareLiteratureVOS);
+        //装载查新对比文件和标注
+        this.loadCompareLiteratureVOS(compareLiteratureVOS,projectId);
 
         records.setData(compareLiteratureVOS);
 
         return records;
     }
 
-    public void loadCompareLiteratureVOS(List<CompareLiteratureVO> compareLiteratureVOS) {
+    public void loadCompareLiteratureVOS(List<CompareLiteratureVO> compareLiteratureVOS, Integer projectId) throws Exception {
         if (!CollectionUtils.isEmpty(compareLiteratureVOS)) {
             List<Integer> literatureIds = new ArrayList<>();
             compareLiteratureVOS.forEach(item -> {
                 literatureIds.add(item.getId());
             });
+            List<NoveltyCompareRecordVO> recordVOS = esScratchWordsService.queryNoveltyRecord(projectId, 1);
             List<NoveltyCompareLiterature> noveltyCompareLiteratureList = noveltyCompareLiteratureMapper.selectList(new LambdaQueryWrapper<NoveltyCompareLiterature>()
                     .in(NoveltyCompareLiterature::getCompareLitertureId, literatureIds));
             for (CompareLiteratureVO literatureVO : compareLiteratureVOS) {
-                NoveltyCompareLiterature noveltyCompareLiterature = noveltyCompareLiteratureList.stream().filter(i -> literatureVO.getId().equals(i.getCompareLitertureId())).findFirst().orElse(null);
+                NoveltyCompareLiterature noveltyCompareLiterature = noveltyCompareLiteratureList.stream().filter(i -> literatureVO.getId().equals(i.getCompareLitertureId())).findFirst().orElse(new NoveltyCompareLiterature());
                 BeanUtils.copyProperties(noveltyCompareLiterature, literatureVO);
                 literatureVO.setCompareFileId(noveltyCompareLiterature.getId());
                 literatureVO.setFileRemark(noveltyCompareLiterature.getRemark());
+                if (CollectionUtils.isEmpty(recordVOS)) {
+                    NoveltyCompareRecordVO recordVO = recordVOS.stream().filter(i -> i.getPatentNo().equals(literatureVO.getLiteratureNo())).findFirst().orElse(new NoveltyCompareRecordVO());
+                    literatureVO.setNoveltyCompareRecordVO(recordVO);
+                }
             }
         }
     }

+ 2 - 2
src/main/java/cn/cslg/pas/service/business/TechnicalCaseService.java

@@ -195,7 +195,7 @@ public class TechnicalCaseService extends ServiceImpl<TechnicalCaseMapper, Techn
         Query query = QueryBuilders.moreLikeThis(i -> i.fields("invention_point").like(likeContent)
                 .minTermFreq(1).maxQueryTerms(12));
         builder.query(query);
-//        builder.from(0).size(200);
+        builder.from(0).size(5);
         //解除最大条数限制
         builder.trackTotalHits(i -> i.enabled(true));
         SearchResponse<TechnicalCasePatent> response = client.search(builder.build(), TechnicalCasePatent.class);
@@ -208,12 +208,12 @@ public class TechnicalCaseService extends ServiceImpl<TechnicalCaseMapper, Techn
             inventionPointVO.setInventionPoint(casePatent.getInventionPoint());
             inventionPointVOS.add(inventionPointVO);
         }
-        List<Personnel> personnels = new ArrayList<>();
         if (!CollectionUtils.isEmpty(inventionPointVOS)) {
             List<Integer> projectIds = inventionPointVOS.stream().map(QueryInventionPointVO::getProjectId).collect(Collectors.toList());
             List<Project> projects = projectMapper.selectBatchIds(projectIds);
             List<String> createIds = projects.stream().map(Project::getCreateId).collect(Collectors.toList());
             //查询创建人名称
+            List<Personnel> personnels = new ArrayList<>();
             if (!CollectionUtils.isEmpty(createIds)) {
                 String res = permissionService.getPersonnelByIdsFromPCS(createIds);
                 JSONObject jsonObject = com.alibaba.fastjson.JSON.parseObject(res);

+ 11 - 15
src/main/java/cn/cslg/pas/service/business/es/EsScratchWordsService.java

@@ -90,10 +90,10 @@ public class EsScratchWordsService {
         try {
             markingLast = this.getById(id);
         } catch (Exception e) {
-            throw new XiaoShiException(ExceptionEnum.BUSINESS_ERROR,"查询错误");
+            throw new XiaoShiException(ExceptionEnum.BUSINESS_ERROR, "查询错误");
         }
         if (markingLast == null) {
-            throw new XiaoShiException(ExceptionEnum.BUSINESS_ERROR,"id不存在");
+            throw new XiaoShiException(ExceptionEnum.BUSINESS_ERROR, "id不存在");
         }
         BeanUtils.copyProperties(marking, markingLast);
         this.updateToEs(marking, id);
@@ -135,7 +135,7 @@ public class EsScratchWordsService {
         return records;
     }
 
-    public Query getSearchQuerys(StringRequest stringRequest)  {
+    public Query getSearchQuerys(StringRequest stringRequest) {
         PersonnelVO personnelVO = cacheUtils.getLoginUser(loginUtils.getId());
         String createId = personnelVO.getId();
         Integer tenantId = personnelVO.getTenantId();
@@ -242,7 +242,6 @@ public class EsScratchWordsService {
     }
 
 
-
     //保存
     public String saveToEs(Marking marking) throws Exception {
         IndexResponse indexResponse = client.index(i -> i
@@ -402,9 +401,7 @@ public class EsScratchWordsService {
     }
 
 
-
-
-    public  List<NoveltyCompareRecordVO> queryNoveltyRecord(Integer projectId,Integer markType)  throws Exception{
+    public List<NoveltyCompareRecordVO> queryNoveltyRecord(Integer projectId, Integer markType) throws Exception {
 
         List<NoveltyCompareRecordVO> vos = new ArrayList<>();
         SearchRequest.Builder builder = new SearchRequest.Builder();
@@ -412,17 +409,16 @@ public class EsScratchWordsService {
         Query q1 = QueryBuilders.term(t -> t.field("public_project_id").value(projectId));
         //不公开
         List<FieldValue> fieldValues = new ArrayList<>();
-    if(markType==null){
-        fieldValues.add(FieldValue.of(1));
-        fieldValues.add(FieldValue.of(2));
-    }
-    else {
-        fieldValues.add(FieldValue.of(markType));
-    }
+        if (markType == null) {
+            fieldValues.add(FieldValue.of(1));
+            fieldValues.add(FieldValue.of(2));
+        } else {
+            fieldValues.add(FieldValue.of(markType));
+        }
 
         Query q2 = QueryBuilders.terms(t -> t.field("mark_type").terms(new TermsQueryField.Builder().value(fieldValues).build()));
 
-        Query q3 =QueryBuilders.bool(i->i.should(q1,q2));
+        Query q3 = QueryBuilders.bool(i -> i.should(q1, q2));
         builder.query(q3);
 
         long total = 0;

+ 1 - 1
src/test/java/cn/cslg/pas/service/CompareLiteratureServiceTests.java

@@ -50,7 +50,7 @@ public class CompareLiteratureServiceTests {
     }
 
   @Test
-    public void queryCompareLiterature(){
+    public void queryCompareLiterature() throws Exception {
     LiteratureQueryDTO literatureQueryDTO =new LiteratureQueryDTO();
     literatureQueryDTO.setCurrent(0);
     literatureQueryDTO.setSize(10);