Jelajahi Sumber

4/23 工单修改

lwhhszx 1 tahun lalu
induk
melakukan
27c185bc76

+ 4 - 4
src/main/java/com/example/xiaoshiweixinback/business/config/WebSocketConfig.java

@@ -6,8 +6,8 @@ import org.springframework.web.socket.server.standard.ServerEndpointExporter;
 
 @Configuration
 public class WebSocketConfig {
-    @Bean
-    public ServerEndpointExporter serverEndpointExporter() {
-        return new ServerEndpointExporter();
-    }
+//    @Bean
+//    public ServerEndpointExporter serverEndpointExporter() {
+//        return new ServerEndpointExporter();
+//    }
 }

+ 2 - 0
src/main/java/com/example/xiaoshiweixinback/domain/es/ESCustomField.java

@@ -65,5 +65,7 @@ public class ESCustomField {
      */
     @JsonProperty("create_time")
     Date createTime;
+    @JsonProperty("if_new")
+    Integer ifNew;
 
 }

+ 2 - 1
src/main/java/com/example/xiaoshiweixinback/domain/es/Patent.java

@@ -420,5 +420,6 @@ public class Patent {
     @JsonProperty("patent_join")
     PatentJoin patentJoin;
 
-
+    @JsonProperty("if_new")
+    List<String> ifNew;
 }

+ 44 - 0
src/main/java/com/example/xiaoshiweixinback/service/importPatent/EsService.java

@@ -308,8 +308,52 @@ public class EsService {
         }
         return patentVectorWithId;
     }
+   public List<PatentWithIdVO>  getPatent() throws Exception{
+        List<PatentWithIdVO> patentWithIdVOs =new ArrayList<>();
+       SearchRequest.Builder builder = new SearchRequest.Builder();
+       //设置查询索引
+       builder.index("patent");
+       Query q1 = QueryBuilders.exists(t -> t.field("custom_field"));
+       builder.query(q1);
+       builder.from(0).size(8000);
+       SearchResponse<Patent> response = client.search(builder.build(), Patent.class);
+       List<Hit<Patent>> hits = response.hits().hits();
+       if (hits != null && hits.size() > 0) {
+           hits.forEach(item->{
+               String id = item.id();
+               Patent patent =item.source();
+               PatentWithIdVO  patentWithIdVO=new PatentWithIdVO();
+               patentWithIdVO.setId(id);
+               patentWithIdVO.setPatent(patent);
+               patentWithIdVOs.add(patentWithIdVO);
+           });
+
+
+       }
+       return patentWithIdVOs;
+
+   }
+
+
+
+    public Integer  updatePatent2(Patent patent,String id) throws Exception{
+
+            UpdateRequest<Patent, Patent> req;
+
+            req = UpdateRequest.of(
+                    b -> b.index("patent").id(id)
+                            .doc(patent)
+            );
+
+            try {
+                client.update(req, Patent.class);
+                return 1;
+            } catch (IOException e) {
+                return -1;
+            }
 
 
+    }
 }
 
 

+ 1 - 1
src/main/resources/application.yml

@@ -20,7 +20,7 @@ spring:
       max-file-size: 1000MB
       max-request-size: 1000MB
   profiles:
-    active: prodNetIn
+    active: dev
   jackson:
     default-property-inclusion: non_null
     serialization:

+ 45 - 11
src/test/java/com/example/xiaoshiweixinback/ImportProductTests.java

@@ -4,9 +4,12 @@ import com.example.xiaoshiweixinback.business.utils.DateUtil;
 import com.example.xiaoshiweixinback.business.utils.FormatUtil;
 import com.example.xiaoshiweixinback.business.utils.parseQueryToTree.expressManager;
 import com.example.xiaoshiweixinback.business.utils.parseQueryToTree.treeNode;
+import com.example.xiaoshiweixinback.domain.es.ESCustomField;
 import com.example.xiaoshiweixinback.entity.ops.ImagesInfoVO;
 import com.example.xiaoshiweixinback.entity.ops.PubNo;
+import com.example.xiaoshiweixinback.entity.vo.patent.PatentWithIdVO;
 import com.example.xiaoshiweixinback.service.common.OPSService;
+import com.example.xiaoshiweixinback.service.importPatent.EsService;
 import com.example.xiaoshiweixinback.service.importPatent.excel.GetPatentFromSzService;
 import com.example.xiaoshiweixinback.service.importPatent.excel.ImportProductService;
 import org.joda.time.format.FormatUtils;
@@ -15,8 +18,10 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.context.annotation.Lazy;
 
+import java.util.Comparator;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 
 @SpringBootTest
@@ -30,29 +35,58 @@ class ImportProductTests {
     private GetPatentFromSzService getPatentFromSzService;
     @Autowired
     private OPSService opsService;
+    @Autowired
+    private EsService esService;
+
     @Test
     void contextLoads() {
-
+        try {
+            List<PatentWithIdVO> patentWithIdVOS = esService.getPatent();
+            System.out.println(patentWithIdVOS.size());
+            while (patentWithIdVOS.size() > 0) {
+                PatentWithIdVO patentWithIdVO = patentWithIdVOS.get(0);
+                PatentWithIdVO patentWithIdVO1 = patentWithIdVOS.stream().filter(item -> item.getPatent().getESCustomField().getProjectId().equals(patentWithIdVO.getPatent().getESCustomField().getProjectId())
+                        && item.getPatent().getESCustomField().getField().equals(patentWithIdVO.getPatent().getESCustomField().getField())
+                        && item.getPatent().getPatentJoin().getParent().equals(patentWithIdVO.getPatent().getPatentJoin().getParent()))
+                        .sorted(Comparator.comparing((PatentWithIdVO tem) -> tem.getPatent().getESCustomField().getCreateTime()).reversed()).findFirst().orElse(null);
+                List<PatentWithIdVO> patentWithIdVOs = patentWithIdVOS.stream().filter(item -> item.getPatent().getESCustomField().getProjectId().equals(patentWithIdVO.getPatent().getESCustomField().getProjectId())
+                        && item.getPatent().getESCustomField().getField().equals(patentWithIdVO.getPatent().getESCustomField().getField())
+                        && item.getPatent().getPatentJoin().getParent().equals(patentWithIdVO.getPatent().getPatentJoin().getParent()))
+                        .sorted(Comparator.comparing((PatentWithIdVO tem) -> tem.getPatent().getESCustomField().getCreateTime()).reversed()).collect(Collectors.toList());
+                if(patentWithIdVOs.size()>1) {
+                    System.out.println(patentWithIdVOs);
+                }
+                if(patentWithIdVO1!=null){
+                patentWithIdVOS.removeIf((item -> item.getPatent().getESCustomField().getProjectId().equals(patentWithIdVO.getPatent().getESCustomField().getProjectId())
+                        && item.getPatent().getESCustomField().getField().equals(patentWithIdVO.getPatent().getESCustomField().getField())
+                        && item.getPatent().getPatentJoin().getParent().equals(patentWithIdVO.getPatent().getPatentJoin().getParent())));
+                 patentWithIdVO1.getPatent().getESCustomField().setIfNew(1);
+                     esService.updatePatent2(patentWithIdVO1.getPatent(),patentWithIdVO1.getId());
+                }
+                System.out.println(patentWithIdVO1);
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
     }
 
     @Test
     public void test1() {
-        PubNo pubNo =new PubNo();
+        PubNo pubNo = new PubNo();
         pubNo.setCountry("US");
         pubNo.setNumber("D942334");
         pubNo.setKind("S");
 
 
 //        USD942334S
-try {
-    List<ImagesInfoVO>  imagesInfoVOS =opsService.getImageInfos("USD942334S");
-    ImagesInfoVO infoVO = imagesInfoVOS.stream().filter(item -> item.getImageType().equals("Drawing")).findFirst().orElse(null);
- opsService.getImages(infoVO,"USD942334S");
+        try {
+            List<ImagesInfoVO> imagesInfoVOS = opsService.getImageInfos("USD942334S");
+            ImagesInfoVO infoVO = imagesInfoVOS.stream().filter(item -> item.getImageType().equals("Drawing")).findFirst().orElse(null);
+            opsService.getImages(infoVO, "USD942334S");
 
-    System.out.println(imagesInfoVOS);
-}
-    catch (Exception e){
-    e.printStackTrace();
-    }
+            System.out.println(imagesInfoVOS);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
     }
 }