From 15deef40aeb83d485fa1df9b5482b0deccfbdbc1 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 28 十月 2024 13:38:15 +0800
Subject: [PATCH] 修改

---
 ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java |   49 +++++++++++++++++++++++++++++++++++++------------
 1 files changed, 37 insertions(+), 12 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..c23a6a6 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));
@@ -66,10 +71,10 @@
             query.addCriteria(Criteria.where("transaction_serial_number").regex(mongoChargingOrderQuery.getCode(), "i")); // "i" 表示不区分大小写
         }
         if (mongoChargingOrderQuery.getOrderType() !=null){
-            query.addCriteria(Criteria.where("order_type").is(mongoChargingOrderQuery.getOrderType()));
+            query.addCriteria(Criteria.where("orderType").is(mongoChargingOrderQuery.getOrderType()));
         }
         if (mongoChargingOrderQuery.getSiteId() != null){
-            query.addCriteria(Criteria.where("site_id").is(mongoChargingOrderQuery.getSiteId()));
+            query.addCriteria(Criteria.where("siteId").is(mongoChargingOrderQuery.getSiteId()));
         }
         if (mongoChargingOrderQuery.getChargingPileCode() != null && !mongoChargingOrderQuery.getChargingPileCode().isEmpty()) {
             query.addCriteria(Criteria.where("charging_pile_code").is(mongoChargingOrderQuery.getChargingPileCode()));
@@ -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));
         }
 
 
@@ -97,14 +108,22 @@
 
 
 
-        // 设置分页
-        Pageable pageable = PageRequest.of(page, size);
-        query.with(pageable);
 
+
+
+        long totalElements = mongoTemplate.count(query, UploadRealTimeMonitoringData.class);
+        // 设置分页
+        Pageable pageable = PageRequest.of(mongoChargingOrderQuery.getPageCurr(), mongoChargingOrderQuery.getPageSize());
+        query.with(pageable);
+        query.with(Sort.by(Sort.Direction.DESC,"create_time"));
         List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringData = mongoTemplate.find(
-                query.with(Sort.by("create_time"))
+                query
                 , UploadRealTimeMonitoringData.class);
-        return uploadRealTimeMonitoringData;
+
+        UploadRealTimeMonitoringPageData uploadRealTimeMonitoringPageData = new UploadRealTimeMonitoringPageData();
+        uploadRealTimeMonitoringPageData.setCount(totalElements);
+        uploadRealTimeMonitoringPageData.setRecords(uploadRealTimeMonitoringData);
+        return uploadRealTimeMonitoringPageData;
     }
 
     @Override
@@ -120,4 +139,10 @@
         return mongoTemplate.findOne(query, UploadRealTimeMonitoringData.class);
     }
 
+    @Override
+    public void delete(String id) {
+        UploadRealTimeMonitoringData byId = findById(id.toString());
+        mongoTemplate.remove(byId);
+    }
+
 }

--
Gitblit v1.7.1