From 3244b550596e0330031b3f4547356927df83b0ad Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期一, 19 五月 2025 11:48:35 +0800 Subject: [PATCH] 修改bug --- 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