From 4f1394e0dd1eddff6a97fc51359a9194716726c3 Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期六, 26 十月 2024 17:37:13 +0800
Subject: [PATCH] merge

---
 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
index fb442ff..9ac5b25 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
@@ -1,7 +1,9 @@
 package com.ruoyi.integration.mongodb.service.impl;
 
+import cn.hutool.db.sql.Direction;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
+import com.ruoyi.integration.api.model.UploadRealTimeMonitoringPageData;
 import com.ruoyi.integration.iotda.constant.IotConstant;
 import com.ruoyi.integration.mongodb.service.UploadRealTimeMonitoringDataService;
 import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
@@ -14,6 +16,9 @@
 import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
 
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
 
 @Service
@@ -51,13 +56,13 @@
             query.addCriteria(Criteria.where("transaction_serial_number").is(code));
         }
         List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringData = mongoTemplate.find(
-                query.with(Sort.by("create_time"))
+                query.with(Sort.by(Sort.Order.desc("create_time")))
                 , UploadRealTimeMonitoringData.class);
         return uploadRealTimeMonitoringData;
     }
 
     @Override
-    public List<UploadRealTimeMonitoringData> getDataAll(MongoChargingOrderQuery mongoChargingOrderQuery) {
+    public UploadRealTimeMonitoringPageData getDataAll(MongoChargingOrderQuery mongoChargingOrderQuery) throws ParseException {
         Query query = new Query();
 //        if (!values.isEmpty()){
 //            query.addCriteria(Criteria.where("transaction_serial_number").in(values));
@@ -83,13 +88,19 @@
 
         if (mongoChargingOrderQuery.getStartTime() != null) {
             String[] split = mongoChargingOrderQuery.getStartTime().split(" - ");
-            query.addCriteria(Criteria.where("startTime").gte(split[0]).lt(split[1]));
+
+            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            Date start = dateFormat.parse(split[0]);
+            Date end = dateFormat.parse(split[1]);
+            query.addCriteria(Criteria.where("startTime").gte(start).lt(end));
         }
 
         if (mongoChargingOrderQuery.getEndTime() != null && mongoChargingOrderQuery.getEndTime() != null) {
             String[] split = mongoChargingOrderQuery.getEndTime().split(" - ");
-
-            query.addCriteria(Criteria.where("lastTime").gte(split[0]).lt(split[1]));
+            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            Date start = dateFormat.parse(split[0]);
+            Date end = dateFormat.parse(split[1]);
+            query.addCriteria(Criteria.where("lastTime").gte(start).lt(end));
         }
 
 
@@ -98,13 +109,20 @@
 
 
         // 设置分页
-        Pageable pageable = PageRequest.of(page, size);
+        Pageable pageable = PageRequest.of(mongoChargingOrderQuery.getPageCurr(), mongoChargingOrderQuery.getPageSize());
         query.with(pageable);
 
         List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringData = mongoTemplate.find(
-                query.with(Sort.by("create_time"))
+                query.with(Sort.by(Sort.Direction.DESC,"create_time"))
                 , UploadRealTimeMonitoringData.class);
-        return uploadRealTimeMonitoringData;
+
+
+        long totalElements = mongoTemplate.count(query, UploadRealTimeMonitoringData.class);
+
+        UploadRealTimeMonitoringPageData uploadRealTimeMonitoringPageData = new UploadRealTimeMonitoringPageData();
+        uploadRealTimeMonitoringPageData.setCount(totalElements);
+        uploadRealTimeMonitoringPageData.setRecords(uploadRealTimeMonitoringData);
+        return uploadRealTimeMonitoringPageData;
     }
 
     @Override

--
Gitblit v1.7.1