From acdaff48183c4c50481668e3c85e6a64a535c5aa Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 30 十月 2024 17:46:11 +0800
Subject: [PATCH] 修改
---
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java | 3 +++
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java | 36 +++++++++++++++++++++++++++++++-----
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/BaseModel.java | 4 +++-
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java | 2 +-
4 files changed, 38 insertions(+), 7 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/BaseModel.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/BaseModel.java
index fe393ff..342055e 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/BaseModel.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/BaseModel.java
@@ -1,5 +1,6 @@
package com.ruoyi.integration.api.model;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.util.Date;
@@ -10,7 +11,8 @@
*/
@Data
public class BaseModel {
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date last_time = new Date();
-
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date create_time = new Date();
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java
index 2463e5e..ed002bf 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java
@@ -6,6 +6,7 @@
import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import java.text.ParseException;
+import java.util.Date;
import java.util.List;
public interface UploadRealTimeMonitoringDataService extends BaseService<UploadRealTimeMonitoringData> {
@@ -26,4 +27,6 @@
UploadRealTimeMonitoringData getLastDataById(String transaction_serial_number);
void delete(String id);
+
+ void updateById(String id);
}
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 c23a6a6..529427e 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,7 +70,7 @@
// 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("orderType").is(mongoChargingOrderQuery.getOrderType()));
@@ -112,17 +114,31 @@
long totalElements = mongoTemplate.count(query, UploadRealTimeMonitoringData.class);
- // 设置分页
- Pageable pageable = PageRequest.of(mongoChargingOrderQuery.getPageCurr(), mongoChargingOrderQuery.getPageSize());
+
+ // 创建带有排序的 Pageable 对象
+ Pageable pageable = PageRequest.of(
+ mongoChargingOrderQuery.getPageCurr()-1,
+ mongoChargingOrderQuery.getPageSize(),
+ Sort.by(Sort.Direction.DESC, "create_time")
+ );
+
+ // 设置分页和排序
query.with(pageable);
- query.with(Sort.by(Sort.Direction.DESC,"create_time"));
+
+ // 执行查询并获取 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;
}
@@ -145,4 +161,14 @@
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);
+ }
+
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java
index 07b9fd8..4a4cb95 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java
@@ -201,7 +201,7 @@
uploadRealTimeMonitoringData.setElectrovalence_all(accountingStrategyDetail.getElectrovalence());
uploadRealTimeMonitoringData.setService_charge(accountingStrategyDetail.getServiceCharge());
if (Objects.nonNull(data)) {
- data.setLast_time(new Date());
+ uploadRealTimeMonitoringDataService.updateById(data.getId());
uploadRealTimeMonitoringData.setPeriod_electric_price(uploadRealTimeMonitoringDataMessage.getPaid_amount().subtract(data.getPaid_amount()));
uploadRealTimeMonitoringData.setPeriod_charging_degree(uploadRealTimeMonitoringDataMessage.getCharging_degree().subtract(data.getCharging_degree()));
uploadRealTimeMonitoringData.setPeriod_service_price(uploadRealTimeMonitoringDataMessage.getCharging_degree().multiply(accountingStrategyDetail.getServiceCharge()).setScale(4, RoundingMode.HALF_UP));
--
Gitblit v1.7.1