| 
					
				 | 
			
			
				@@ -270,17 +270,7 @@ public class OrderBaseEsLogic { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 新增:次日需处理(CRXC) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (param.equals("order_status") && value.equals("CRXC")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    LocalDateTime now = LocalDateTime.now(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    LocalDate today = now.toLocalDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    String today18 = DateUtil.format(today.atTime(18, 0, 0), "yyyy-MM-dd HH:mm:ss");    // 当日18:00:00 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    String nextDay759 = DateUtil.format(today.plusDays(1).atTime(7, 59, 59), "yyyy-MM-dd HH:mm:ss");  // 次日7:59:59 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    queryBuilder.must(QueryBuilders.rangeQuery("create_time")  // create_time在当日18:00-次日7:59之间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            .gte(today18) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            .lte(nextDay759)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    queryBuilder.mustNot(QueryBuilders.existsQuery("appointment_time"));  // appointment_time为空 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    queryBuilder.mustNot(QueryBuilders.termsQuery("order_status", "YWG", "GCSZX", "WDWG", "YWGO", "YQX", "FWZT", "YCGB","YZP", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            "FWQX", "FL", "YJS", "LRCD", "DSHPG", "CJ", "YPD", "DXSPD", "DZBPG", "DWDSPGP", "DXSSPGP", "DTJXSSPGP", "DZBSPGP"));  // 相同order_status排除条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    queryBuilder.must(buildCrxcQuery());  // 复用公共条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -484,22 +474,10 @@ public class OrderBaseEsLogic { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 次日需处理(18:00-次日7:59创建,appointment_time为空) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        LocalDateTime now = LocalDateTime.now(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        LocalDate today = now.toLocalDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        String today18 = DateUtil.format(today.atTime(18, 0, 0), "yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        String nextDay759 = DateUtil.format(today.plusDays(1).atTime(7, 59, 59), "yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         NativeSearchQuery crxcSearchQuery = new NativeSearchQueryBuilder() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                .withQuery(queryBuilder) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .withQuery(queryBuilder.must(buildCrxcQuery()))  // 复用公共条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 .withPageable(PageRequest.of(1, 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                .addAggregation(this.getAggs(AggregationBuilders.filter("CRXC", QueryBuilders.boolQuery() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        .must(QueryBuilders.rangeQuery("create_time") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                .gte(today18) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                .lte(nextDay759)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        .mustNot(QueryBuilders.existsQuery("appointment_time")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        .mustNot(QueryBuilders.termsQuery("order_status", "YWG", "GCSZX", "WDWG", "YWGO", "YQX", "FWZT", "YCGB","YZP", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                "FWQX", "FL", "YJS", "LRCD", "DSHPG", "CJ", "YPD", "DXSPD", "DZBPG", "DWDSPGP", "DXSSPGP", "DTJXSSPGP", "DZBSPGP")) // 与DYY相同的order_status排除条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .addAggregation(this.getAggs(AggregationBuilders.filter("CRXC", QueryBuilders.matchAllQuery())))  // 因 query 已包含条件,filter 简化为 matchAll 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 .build(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SearchHits crxcResponse = this.search(crxcSearchQuery, year); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -749,6 +727,32 @@ public class OrderBaseEsLogic { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         "FWQX", "FL", "YJS", "LRCD", "DSHPG", "CJ", "YPD", "DXSPD", "DZBPG", "DWDSPGP", "DXSSPGP", "DTJXSSPGP", "DZBSPGP")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private BoolQueryBuilder buildCrxcQuery() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        LocalDateTime now = LocalDateTime.now(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        LocalDate today = now.toLocalDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 条件 1:当日 18:00:00 到次日 7:59:59 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String today18 = DateUtil.format(today.atTime(18, 0, 0), "yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String nextDay759 = DateUtil.format(today.plusDays(1).atTime(7, 59, 59), "yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 条件 2:create_time 大于等于 8:30:00(假设为当日 8:30:00,可根据实际需求调整为次日) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String day830 = DateUtil.format(today.atTime(8, 30, 0), "yyyy-MM-dd HH:mm:ss"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return QueryBuilders.boolQuery() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 条件 1:时间范围 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .must(QueryBuilders.rangeQuery("create_time") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        .gte(today18) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        .lte(nextDay759)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 条件 2:create_time >= 8:30:00 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .must(QueryBuilders.rangeQuery("create_time") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        .gte(day830)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 条件 3:appointment_time 为空 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .mustNot(QueryBuilders.existsQuery("appointment_time")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 条件 4:order_status 排除(与 DYY 相同) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .mustNot(QueryBuilders.termsQuery("order_status", "YWG", "GCSZX", "WDWG", "YWGO", "YQX", "FWZT", "YCGB","YZP", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        "FWQX", "FL", "YJS", "LRCD", "DSHPG", "CJ", "YPD", "DXSPD", "DZBPG", "DWDSPGP", "DXSSPGP", "DTJXSSPGP", "DZBSPGP")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private SearchHits search(NativeSearchQuery searchQuery,String year) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |