From 988bbb6fe92380ba992a146ed94df2d8973a4edb Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 10 七月 2025 16:48:47 +0800
Subject: [PATCH] 储能对接

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/EnergyRefreshService.java |   82 +++++++++++++++--------------------------
 1 files changed, 30 insertions(+), 52 deletions(-)

diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/EnergyRefreshService.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/EnergyRefreshService.java
index 9a90ec5..d7aa1f6 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/EnergyRefreshService.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/EnergyRefreshService.java
@@ -1,72 +1,50 @@
 package com.ruoyi.other.util;
 
+import com.alibaba.fastjson2.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.other.api.domain.TSystemConfiguration;
+import com.ruoyi.other.mapper.TSystemConfigurationMapper;
+import com.ruoyi.other.vo.ScreenStorageConfigVO;
+import lombok.Getter;
+import lombok.Setter;
 import lombok.Value;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.time.LocalDate;
 import java.time.LocalTime;
+import java.util.List;
 import java.util.Random;
 
+
+/**
+ * 定时任务:储能放电情况 光伏发电情况
+ */
 @Service
 public class EnergyRefreshService {
     private final Random random = new Random();
-    private BigDecimal currentValue;
-    
+    @Resource
+    private TSystemConfigurationMapper systemConfigurationMapper;
 
-    private final BigDecimal targetLow = new BigDecimal("85");
 
-    private final BigDecimal targetHigh = new BigDecimal("87");
-    
-
-    private final int maxIncrement = 10;
-    
-    private boolean isRunning = true; // 控制任务是否继续执行
-
-    public EnergyRefreshService() {
-        this.currentValue = BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP);
-    }
-
-    // 定时任务方法
-    @Scheduled(cron = "${0 */15 * * * ?}")//15分钟执行一次
-    public synchronized void refreshValue() {
-        // 检查是否已停止或达到目标范围
-        if (!isRunning || isWithinTargetRange(currentValue)) {
-            isRunning = false;
-            return;
-        }
-        
-        // 检查当前时间是否在允许的时间段内
-        LocalTime now = LocalTime.now();
-        boolean isInMorning = now.isAfter(LocalTime.of(10, 0)) && now.isBefore(LocalTime.of(12, 0));
-        boolean isInAfternoon = now.isAfter(LocalTime.of(15, 0)) && now.isBefore(LocalTime.of(21, 0));
-        
-        if (!isInMorning && !isInAfternoon) {
-            return;
-        }
-        
-        // 生成随机增量并更新值
-        int increment = random.nextInt(maxIncrement + 1);
-        currentValue = currentValue.add(BigDecimal.valueOf(increment))
-                                   .setScale(2, RoundingMode.HALF_UP);
-        
-        System.out.printf("定时刷新:当前时间 %s,当前值:%.2f%n", now, currentValue);
-    }
-    
-    private boolean isWithinTargetRange(BigDecimal value) {
-        return value.compareTo(targetLow) >= 0 && value.compareTo(targetHigh) <= 0;
-    }
-    
-    // 提供获取当前值的方法
-    public BigDecimal getCurrentValue() {
-        return currentValue;
-    }
-    
-    // 重置任务
+    // 记录截至昨天的总量(每天凌晨0点)
+    @Scheduled(cron = "0 0 0 * * ?")
     public void reset() {
-        this.currentValue = BigDecimal.ZERO;
-        this.isRunning = true;
+        String electricity = KsolarUtils.getElectricity();
+
+        TSystemConfiguration sysConfig = systemConfigurationMapper.selectOne(new LambdaQueryWrapper<TSystemConfiguration>()
+                .eq(TSystemConfiguration::getType,5));
+        sysConfig.setContent(electricity.split("_")[0]);
+        systemConfigurationMapper.updateById(sysConfig);
+
+        TSystemConfiguration sysConfig1 = systemConfigurationMapper.selectOne(new LambdaQueryWrapper<TSystemConfiguration>()
+                .eq(TSystemConfiguration::getType,4));
+        sysConfig1.setContent(electricity.split("_")[1]);
+        systemConfigurationMapper.updateById(sysConfig1);
+
     }
 
 

--
Gitblit v1.7.1