‘linchangsheng’ il y a 1 mois
Parent
commit
2beecf55df

+ 17 - 8
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/logic/workorder/OrderBaseLogic.java

@@ -130,20 +130,29 @@ public class OrderBaseLogic {
                 QueryBuilders.boolQuery().should(QueryBuilders.termsQuery("id", orderBaseIds))
                         .should(QueryBuilders.termsQuery("order_status", OrderBaseStatusEnum.DQD.getKey()))
         );
+
+
+
+
+
         //待接单
+        // A 或 B 的条件
+        BoolQueryBuilder orConditionAB = QueryBuilders.boolQuery()
+                .should(QueryBuilders.matchQuery("is_import_excel", false))
+                .should(QueryBuilders.matchQuery("order_status",  OrderBaseStatusEnum.DJD.getKey()));
+
+        // C 或 D 的条件
+        BoolQueryBuilder orConditionCD = QueryBuilders.boolQuery()
+                .should(QueryBuilders.matchQuery("is_import_excel", true))
+                .should(QueryBuilders.matchQuery("is_meet", false));
+
         NativeSearchQuery searchQueryDJD = new NativeSearchQueryBuilder()
                 .withQuery(boolQueryOrder)
                 .withPageable(PageRequest.of(1, 1))
                 .addAggregation(this.getAggs(AggregationBuilders.filter("DJD", QueryBuilders.boolQuery()
                         .must(
-                                QueryBuilders.boolQuery().should(QueryBuilders.termsQuery("is_import_excel", false))
-                                        .should(QueryBuilders.termsQuery("order_status", OrderBaseStatusEnum.DJD.getKey()))
-                        )
-                        .should(
-                                QueryBuilders.boolQuery().should(QueryBuilders.termsQuery("is_import_excel", true))
-                                        .should(QueryBuilders.termsQuery("is_meet", false))
-                        )
-                        )))
+                                boolQuery.should(orConditionAB).should(orConditionCD)
+                        ))))
                 .build();
         SearchHits response = elasticsearchRestTemplate.search(searchQueryDJD, OrderBaseEs.class);