|
@@ -27,7 +27,12 @@ import cn.cslg.pas.service.business.ReportTempleService;
|
|
|
import cn.cslg.pas.service.business.es.*;
|
|
|
import cn.cslg.pas.service.common.FileManagerService;
|
|
|
import cn.cslg.pas.service.common.TranslateService;
|
|
|
+import cn.cslg.pas.service.query.FormatQueryService;
|
|
|
+import co.elastic.clients.elasticsearch.ElasticsearchClient;
|
|
|
import co.elastic.clients.elasticsearch._types.query_dsl.Query;
|
|
|
+import co.elastic.clients.elasticsearch.core.SearchRequest;
|
|
|
+import co.elastic.clients.elasticsearch.core.SearchResponse;
|
|
|
+import co.elastic.clients.elasticsearch.core.search.Hit;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import org.apache.http.entity.ContentType;
|
|
|
import org.junit.jupiter.api.Test;
|
|
@@ -593,4 +598,82 @@ public class EventServiceTests {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private FormatQueryService formatQueryService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ElasticsearchClient client;
|
|
|
+ @Test
|
|
|
+ public void test107() throws Exception {
|
|
|
+ String s = "IFN=3~4"; //条件
|
|
|
+ SearchRequest.Builder builder = new SearchRequest.Builder();
|
|
|
+ //设置查询索引
|
|
|
+ builder.index("patent");
|
|
|
+ //2、根据条件生成树结构
|
|
|
+ treeNode tree = expressManager.getInstance().Parse(s, false);
|
|
|
+ Query query = formatQueryService.EsQueryToQuery((operateNode) tree, "patent", 331);
|
|
|
+ builder.query(query);
|
|
|
+ SearchResponse<Patent> response = client.search(builder.build(), Patent.class);
|
|
|
+ final List<Hit<Patent>> hits = response.hits().hits();
|
|
|
+ for (Hit<Patent> hit : hits) {
|
|
|
+ System.out.println(1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Test
|
|
|
+ public void test108() {
|
|
|
+ int size = 4;
|
|
|
+ int num = 2;
|
|
|
+ String s = "CN202311743859.7,CN202311695772.7,CN202311695122.2,CN202380013186.1,CN202321985312.3,CN202321795870.3,CN202321466063.7,CN202321458147.6,CN202321047372.0,CN202321021503.8";
|
|
|
+ String[] valueStrs = s.split("[,,]|(\\r\\n)+|\\r+|\\n+");
|
|
|
+ StringBuilder builder = new StringBuilder();
|
|
|
+ builder.append("NO").append("=").append("(");
|
|
|
+ for (int i = (num-1)*size; i < (num*size); i++) {
|
|
|
+ final String valueStr = valueStrs[i];
|
|
|
+ System.out.println(valueStr);
|
|
|
+ if (i != valueStrs.length - 1) {
|
|
|
+ builder.append(valueStr).append(",");
|
|
|
+ } else {
|
|
|
+ builder.append(valueStr);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ final String s2 = builder.append(")").toString();
|
|
|
+ System.out.println(s2);
|
|
|
+ System.out.println("---------------------");
|
|
|
+ StringBuilder stringBuilder = new StringBuilder();
|
|
|
+ for (int i = 0; i < valueStrs.length; i++) {
|
|
|
+ final String value = valueStrs[i];
|
|
|
+ if (i != valueStrs.length - 1) {
|
|
|
+ stringBuilder.append(value).append("|");
|
|
|
+ } else {
|
|
|
+ stringBuilder.append(value);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ final String s1 = stringBuilder.toString();
|
|
|
+ System.out.println(s1);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Test
|
|
|
+ public void test109() {
|
|
|
+// String s = condition.substring(condition.indexOf("=") + 1);
|
|
|
+// String s1 = s.replaceAll("[()]", "");
|
|
|
+
|
|
|
+ int size = 4;
|
|
|
+ int num = 2;
|
|
|
+ String s = "CN202311743859.7,CN202311695772.7,CN202311695122.2,CN202380013186.1,CN202321985312.3,CN202321795870.3,CN202321466063.7,CN202321458147.6,CN202321047372.0,CN202321021503.8";
|
|
|
+ String[] valueStrs = s.split("[,,]|(\\r\\n)+|\\r+|\\n+");
|
|
|
+ StringBuilder builder = new StringBuilder();
|
|
|
+ builder.append("NO").append("=").append("(");
|
|
|
+ for (int i = (num-1)*size; i < (num*size); i++) {
|
|
|
+ final String valueStr = valueStrs[i];
|
|
|
+ System.out.println(valueStr);
|
|
|
+ if (i != valueStrs.length - 1) {
|
|
|
+ builder.append(valueStr).append(",");
|
|
|
+ } else {
|
|
|
+ builder.append(valueStr);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ final String s2 = builder.append(")").toString();
|
|
|
+ System.out.println(s2);
|
|
|
+ }
|
|
|
}
|