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/PingServiceImpl.java | 35 ++++++++++++++++++++++++++++++++++- 1 files changed, 34 insertions(+), 1 deletions(-) diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/PingServiceImpl.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/PingServiceImpl.java index ec43741..a9bad84 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/PingServiceImpl.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/PingServiceImpl.java @@ -1,12 +1,20 @@ package com.ruoyi.integration.mongodb.service.impl; +import com.mongodb.client.result.DeleteResult; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.integration.iotda.constant.IotConstant; -import com.ruoyi.integration.mongodb.model.Ping; +import com.ruoyi.integration.api.model.Ping; import com.ruoyi.integration.mongodb.service.PingService; import org.springframework.beans.factory.annotation.Autowired; 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.stereotype.Service; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.Date; import java.util.List; @Service @@ -29,4 +37,29 @@ public List<Ping> findAll() { return mongoTemplate.findAll(Ping.class); } + + @Override + public void delPing() { + mongoTemplate.remove(new Query().addCriteria(Criteria.where("create_time").lt(LocalDateTime.now().minusDays(1))), Ping.class); + } + + @Override + public void save(Ping ping) { + Query query = new Query(); + if (StringUtils.isNotEmpty(ping.getCharging_pile_code())) { + query.addCriteria(Criteria.where("charging_pile_code").is(ping.getCharging_pile_code())); + } + if (StringUtils.isNotEmpty(ping.getCharging_gun_code())){ + query.addCriteria(Criteria.where("charging_gun_code").is(ping.getCharging_gun_code())); + } + List<Ping> pings = mongoTemplate.find(query, Ping.class); + if(pings.size() > 0){ + Ping ping1 = pings.get(0); + ping1.setLast_time(new Date()); + ping1.setCharging_gun_status(ping.getCharging_gun_status()); + mongoTemplate.save(ping1); + }else{ + mongoTemplate.save(ping); + } + } } -- Gitblit v1.7.1