Procházet zdrojové kódy

日报生成修改

wangli před 4 roky
rodič
revize
1bd0d621fb

+ 3 - 1
sms_water/src/main/java/com/huaxu/service/impl/MonitorDataServiceImpl.java

@@ -20,6 +20,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Sort;
 import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.data.mongodb.core.aggregation.Aggregation;
+import org.springframework.data.mongodb.core.aggregation.AggregationOptions;
 import org.springframework.data.mongodb.core.aggregation.AggregationResults;
 import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
@@ -129,6 +130,7 @@ public class MonitorDataServiceImpl implements MonitorDataService , Initializing
         criteria.and("month").is(dateTime.getMonthValue());
         criteria.and("day").is(dateTime.getDayOfMonth());
         criteria.and("hour").is(dateTime.getHour());
+        AggregationOptions aggregationOptions = AggregationOptions.builder().allowDiskUse(true).build();
         Aggregation agg = Aggregation.newAggregation(
                 Aggregation.match(criteria),    //查询条件
                 Aggregation.unwind("dataValues"),//将文档中的某一个数组类型字段拆分成多条,每条包含数组中的一个值
@@ -142,7 +144,7 @@ public class MonitorDataServiceImpl implements MonitorDataService , Initializing
                         .last("$dataValues.dataValue").as("latestValue")
                         .last("$collectDate").as("collectDate")
                         .count().as("countNum")
-        );
+        ).withOptions(aggregationOptions);
         AggregationResults<DayReportEntity> durationData =
                 mongoTemplate.aggregate(agg, "SMS_MONITOR_DATA", DayReportEntity.class);
         //获取查询结果