From be652e7453938c7537dbb73f3caff336e8325b8d Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 06 五月 2025 15:49:47 +0800
Subject: [PATCH] 政务云数据上传
---
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java | 68 ++++++++++++++++++++++++++--------
1 files changed, 52 insertions(+), 16 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 9ac5b25..41ff351 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
@@ -8,12 +8,14 @@
import com.ruoyi.integration.mongodb.service.UploadRealTimeMonitoringDataService;
import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Service;
import java.text.ParseException;
@@ -68,13 +70,16 @@
// query.addCriteria(Criteria.where("transaction_serial_number").in(values));
// }
if (mongoChargingOrderQuery.getCode() != null && !mongoChargingOrderQuery.getCode().isEmpty()) {
- query.addCriteria(Criteria.where("transaction_serial_number").regex(mongoChargingOrderQuery.getCode(), "i")); // "i" 表示不区分大小写
+ 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.getSiteIds().isEmpty()){
+ query.addCriteria(Criteria.where("siteId").in(mongoChargingOrderQuery.getSiteIds()));
}
if (mongoChargingOrderQuery.getChargingPileCode() != null && !mongoChargingOrderQuery.getChargingPileCode().isEmpty()) {
query.addCriteria(Criteria.where("charging_pile_code").is(mongoChargingOrderQuery.getChargingPileCode()));
@@ -86,21 +91,21 @@
query.addCriteria(Criteria.where("status").is(mongoChargingOrderQuery.getStatus()));
}
- if (mongoChargingOrderQuery.getStartTime() != null) {
- String[] split = mongoChargingOrderQuery.getStartTime().split(" - ");
+ if (mongoChargingOrderQuery.getCreateTime() != null) {
+ String[] split = mongoChargingOrderQuery.getCreateTime().split(" - ");
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));
+ query.addCriteria(Criteria.where("create_time").gte(start).lt(end));
}
- if (mongoChargingOrderQuery.getEndTime() != null && mongoChargingOrderQuery.getEndTime() != null) {
- String[] split = mongoChargingOrderQuery.getEndTime().split(" - ");
+ if (mongoChargingOrderQuery.getLastTime() != null && mongoChargingOrderQuery.getLastTime() != null) {
+ String[] split = mongoChargingOrderQuery.getLastTime().split(" - ");
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));
+ query.addCriteria(Criteria.where("last_time").gte(start).lt(end));
}
@@ -108,20 +113,35 @@
- // 设置分页
- Pageable pageable = PageRequest.of(mongoChargingOrderQuery.getPageCurr(), mongoChargingOrderQuery.getPageSize());
- query.with(pageable);
- List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringData = mongoTemplate.find(
- query.with(Sort.by(Sort.Direction.DESC,"create_time"))
- , UploadRealTimeMonitoringData.class);
long totalElements = mongoTemplate.count(query, UploadRealTimeMonitoringData.class);
+ // 创建带有排序的 Pageable 对象
+ Pageable pageable = PageRequest.of(
+ mongoChargingOrderQuery.getPageCurr()-1,
+ mongoChargingOrderQuery.getPageSize(),
+ Sort.by(Sort.Direction.DESC, "create_time")
+ );
+
+ // 设置分页和排序
+ query.with(pageable);
+
+ // 执行查询并获取 Page 对象
+ List<UploadRealTimeMonitoringData> page = mongoTemplate.find(query, UploadRealTimeMonitoringData.class,"upload_real_time_monitoring_data");
+
+ // 设置分页
+// Pageable pageable = PageRequest.of(mongoChargingOrderQuery.getPageSize()*(mongoChargingOrderQuery.getPageCurr()-1), mongoChargingOrderQuery.getPageSize());
+// query.with(pageable);
+// query.with(Sort.by(Sort.Direction.DESC,"create_time"));
+ List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringData = mongoTemplate.find(
+ query
+ , UploadRealTimeMonitoringData.class);
+
UploadRealTimeMonitoringPageData uploadRealTimeMonitoringPageData = new UploadRealTimeMonitoringPageData();
uploadRealTimeMonitoringPageData.setCount(totalElements);
- uploadRealTimeMonitoringPageData.setRecords(uploadRealTimeMonitoringData);
+ uploadRealTimeMonitoringPageData.setRecords(page);
return uploadRealTimeMonitoringPageData;
}
@@ -138,4 +158,20 @@
return mongoTemplate.findOne(query, UploadRealTimeMonitoringData.class);
}
+ @Override
+ public void delete(String id) {
+ UploadRealTimeMonitoringData byId = findById(id.toString());
+ mongoTemplate.remove(byId);
+ }
+
+ @Override
+ public void updateById(String id) {
+ // 创建查询条件
+ Query query = new Query(Criteria.where("_id").is(id));
+ // 创建更新对象
+ Update update = new Update().set("last_time", new Date());
+ // 执行更新操作
+ mongoTemplate.updateFirst(query, update, UploadRealTimeMonitoringData.class);
+ }
+
}
--
Gitblit v1.7.1