From 378669e94558e6d4d7383604f84dabd9d2242e7c Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期五, 06 六月 2025 09:54:12 +0800 Subject: [PATCH] 调整参数 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TScreenContentServiceImpl.java | 5 ++ ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TScreenContentController.java | 13 ++++++ ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/EnergyRefreshService.java | 73 ++++++++++++++++++++++++++++++++++++ 3 files changed, 89 insertions(+), 2 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TScreenContentController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TScreenContentController.java index beb6bee..6a3f91c 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TScreenContentController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TScreenContentController.java @@ -9,9 +9,11 @@ import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.other.api.domain.TNotice; import com.ruoyi.other.api.domain.TScreenContent; +import com.ruoyi.other.api.domain.TSystemConfiguration; import com.ruoyi.other.api.dto.NoticeQueryDto; import com.ruoyi.other.service.TNoticeService; import com.ruoyi.other.service.TScreenContentService; +import com.ruoyi.other.service.TSystemConfigurationService; import com.ruoyi.other.util.EnergyRefreshService; import com.ruoyi.other.vo.*; import io.swagger.annotations.ApiOperation; @@ -20,6 +22,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.Arrays; import java.time.LocalDateTime; import java.util.HashMap; @@ -41,6 +44,8 @@ private TScreenContentService screenContentService; @Resource private EnergyRefreshService energyRefreshService; + @Resource + private TSystemConfigurationService systemConfigurationService; /** * 顶部-累计电量 @@ -70,7 +75,13 @@ vo.setGreenElectricityToday(vo.getGreenElectricityToday().add(x.getGreenElectricityToday())); }); - vo.setTodayGenerateElectricity(new BigDecimal("1821")); + TSystemConfiguration sysConfig = systemConfigurationService.getOne(new LambdaQueryWrapper<TSystemConfiguration>() + .eq(TSystemConfiguration::getType,4)); + BigDecimal refreshValueOne = new BigDecimal(sysConfig.getContent()); + vo.setTodayGenerateElectricity(refreshValueOne); + vo.setGreenElectricityToday(refreshValueOne.multiply(new BigDecimal("0.94")).setScale(2, RoundingMode.HALF_UP)); + + return AjaxResult.success(vo); } diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TScreenContentServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TScreenContentServiceImpl.java index 9fc1fe5..a3065d8 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TScreenContentServiceImpl.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TScreenContentServiceImpl.java @@ -231,7 +231,10 @@ vo.setStorageDisCharge(storageDisCharge); - vo.setPhotovoltaic(new BigDecimal("9950")); + TSystemConfiguration sysConfig1 = systemConfigurationMapper.selectOne(new LambdaQueryWrapper<TSystemConfiguration>() + .eq(TSystemConfiguration::getType,4)); + vo.setPhotovoltaic(new BigDecimal(sysConfig1.getContent())); + vo.setGreenElectricity(vo.getPhotovoltaic().multiply(new BigDecimal("0.94")).setScale(2, RoundingMode.HALF_UP)); return vo; } 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 058c274..fb0abf6 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 @@ -15,6 +15,7 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.time.LocalTime; +import java.util.List; import java.util.Random; @Service @@ -26,6 +27,7 @@ private final BigDecimal targetLow = new BigDecimal("85"); private final BigDecimal targetHigh = new BigDecimal("87"); + private final int maxIncrement = 10; @@ -108,9 +110,80 @@ public void reset() { BigDecimal currentValue = BigDecimal.ZERO.setScale(2, RoundingMode.HALF_UP); updateCurrentValue(currentValue); + + refreshValueOne = new BigDecimal("0"); + TSystemConfiguration sysConfigs = systemConfigurationMapper.selectList(new LambdaQueryWrapper<TSystemConfiguration>() + .eq(TSystemConfiguration::getType,4)).get(0); + sysConfigs.setContent("0"); + systemConfigurationMapper.updateById(sysConfigs); + //更新 this.isRunning = true; } + + public static BigDecimal refreshValueOne = new BigDecimal("0"); + /** + *光伏发电和消纳 + */ + @Scheduled(cron = "0 */1 * * * ?") // 每分钟点执行 + public void refreshValueOne() { + // 判断时间是否在6:00到8:59 + LocalTime now = LocalTime.now(); + if (now.isAfter(LocalTime.of(6, 0)) && now.isBefore(LocalTime.of(8, 59))) { + refreshValueOne = refreshValueOne.add(new BigDecimal("0.5")); + List<TSystemConfiguration> sysConfigs = systemConfigurationMapper.selectList(new LambdaQueryWrapper<TSystemConfiguration>() + .in(TSystemConfiguration::getType,4,5)); + TSystemConfiguration sysConfig = sysConfigs.stream().filter(e -> e.getType() == 4).findFirst().orElse(null); + sysConfig.setContent(refreshValueOne.toString()); + systemConfigurationMapper.updateById(sysConfig); + + + TSystemConfiguration sysConfig1 = sysConfigs.stream().filter(e -> e.getType() == 5).findFirst().orElse(null); + String string = new BigDecimal(sysConfig1.getContent()).add(new BigDecimal("0.5")).toString(); + sysConfig1.setContent(string); + systemConfigurationMapper.updateById(sysConfig1); + // 在6:00到8:59之间,不执行 + return; + } + // 9:00-16:59每分钟增加随机3 到 3.5 + if (now.isAfter(LocalTime.of(9, 0)) && now.isBefore(LocalTime.of(16, 59))) { + refreshValueOne = refreshValueOne.add(new BigDecimal(3 + (3.5 - 3) * random.nextDouble()) + .setScale(2, RoundingMode.HALF_UP)); + List<TSystemConfiguration> sysConfigs = systemConfigurationMapper.selectList(new LambdaQueryWrapper<TSystemConfiguration>() + .in(TSystemConfiguration::getType,4,5)); + + TSystemConfiguration sysConfig = sysConfigs.stream().filter(e -> e.getType() == 4).findFirst().orElse(null); + sysConfig.setContent(refreshValueOne.toString()); + systemConfigurationMapper.updateById(sysConfig); + + + TSystemConfiguration sysConfig1 = sysConfigs.stream().filter(e -> e.getType() == 5).findFirst().orElse(null); + String string = new BigDecimal(sysConfig1.getContent()).add(new BigDecimal(3 + (3.5 - 3) * random.nextDouble())).toString(); + sysConfig1.setContent(string); + systemConfigurationMapper.updateById(sysConfig1); + return; + } + //17:00-18:59 每分钟增加0.5 + if (now.isAfter(LocalTime.of(17, 0)) && now.isBefore(LocalTime.of(18, 59))) { + refreshValueOne = refreshValueOne.add(new BigDecimal("0.5")); + List<TSystemConfiguration> sysConfigs = systemConfigurationMapper.selectList(new LambdaQueryWrapper<TSystemConfiguration>() + .in(TSystemConfiguration::getType,4,5)); + + TSystemConfiguration sysConfig = sysConfigs.stream().filter(e -> e.getType() == 4).findFirst().orElse(null); + sysConfig.setContent(refreshValueOne.toString()); + systemConfigurationMapper.updateById(sysConfig); + + + TSystemConfiguration sysConfig1 = sysConfigs.stream().filter(e -> e.getType() == 5).findFirst().orElse(null); + String string = new BigDecimal(sysConfig1.getContent()).add(new BigDecimal("0.5")).toString(); + sysConfig1.setContent(string); + systemConfigurationMapper.updateById(sysConfig1); + } + } + + + + } \ No newline at end of file -- Gitblit v1.7.1