From 037c019df632b03b78dbabd9a60b688baaa87a95 Mon Sep 17 00:00:00 2001 From: ShiJiuZhou <15315423958@163.com> Date: Tue, 3 Mar 2026 16:35:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=83=BD=E8=80=97=E7=9B=AE?= =?UTF-8?q?=E6=A0=87=E9=85=8D=E7=BD=AE=EF=BC=8C=E8=83=BD=E8=80=97=E5=AE=9A?= =?UTF-8?q?=E9=A2=9D=E9=85=8D=E7=BD=AE=EF=BC=8C=E6=96=B0=E5=A2=9E=E8=83=BD?= =?UTF-8?q?=E6=BA=90=E7=9B=91=E6=8E=A7=EF=BC=8C=E5=B3=B0=E5=B9=B3=E8=B0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../desk/dashboard/utils/DateUtils.java | 8 + .../controller/BsEnergyMonitorController.java | 131 +++++++++++++++ .../controller/BsEnergyQuotaController.java | 52 ++---- .../controller/BsEnergyTargetController.java | 65 +++---- .../BsPeakFlatValleyController.java | 130 ++++++++++++++ .../energy/excel/BsEnergyMonitorExcel.java | 159 ++++++++++++++++++ .../energy/excel/BsPeakFlatValleyExcel.java | 158 +++++++++++++++++ .../energy/mapper/BsEnergyMonitorMapper.java | 63 +++++++ .../energy/mapper/BsPeakFlatValleyMapper.java | 63 +++++++ .../energy/mapper/EnergyMonitorMapper.xml | 42 +++++ .../energy/mapper/PeakFlatValleyMapper.xml | 42 +++++ .../energy/pojo/dto/BsEnergyMonitorDTO.java | 45 +++++ .../energy/pojo/dto/BsPeakFlatValleyDTO.java | 45 +++++ .../pojo/entity/BsEnergyMonitorEntity.java | 128 ++++++++++++++ .../pojo/entity/BsEnergyQuotaEntity.java | 21 ++- .../pojo/entity/BsEnergyTargetEntity.java | 25 ++- .../pojo/entity/BsPeakFlatValleyEntity.java | 137 +++++++++++++++ .../energy/pojo/vo/BsEnergyMonitorVO.java | 45 +++++ .../desk/energy/pojo/vo/BsEnergyQuotaVO.java | 9 - .../energy/pojo/vo/BsPeakFlatValleyVO.java | 45 +++++ .../service/IBsEnergyMonitorService.java | 61 +++++++ .../service/IBsEnergyTargetService.java | 15 ++ .../service/IBsPeakFlatValleyService.java | 61 +++++++ .../impl/BsEnergyMonitorServiceImpl.java | 63 +++++++ .../impl/BsEnergyTargetServiceImpl.java | 26 +++ .../impl/BsPeakFlatValleyServiceImpl.java | 63 +++++++ .../wrapper/BsEnergyMonitorWrapper.java | 59 +++++++ .../energy/wrapper/BsEnergyQuotaWrapper.java | 25 +-- .../wrapper/BsPeakFlatValleyWrapper.java | 59 +++++++ 29 files changed, 1720 insertions(+), 125 deletions(-) create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/controller/BsEnergyMonitorController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/controller/BsPeakFlatValleyController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/excel/BsEnergyMonitorExcel.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/excel/BsPeakFlatValleyExcel.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/mapper/BsEnergyMonitorMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/mapper/BsPeakFlatValleyMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/mapper/EnergyMonitorMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/mapper/PeakFlatValleyMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/dto/BsEnergyMonitorDTO.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/dto/BsPeakFlatValleyDTO.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyMonitorEntity.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsPeakFlatValleyEntity.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyMonitorVO.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsPeakFlatValleyVO.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/IBsEnergyMonitorService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/IBsPeakFlatValleyService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/impl/BsEnergyMonitorServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/impl/BsPeakFlatValleyServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/wrapper/BsEnergyMonitorWrapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/energy/wrapper/BsPeakFlatValleyWrapper.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/utils/DateUtils.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/utils/DateUtils.java index 3437693e..6d71730a 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/utils/DateUtils.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/utils/DateUtils.java @@ -292,4 +292,12 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils return Date.from(getPreviousDayEnd(daysAgo).atZone(ZoneId.systemDefault()).toInstant()); } + /** + * 根据月份获取季度 + * @param month 月份 + * @return 季度 + */ + public static int getQuarter(int month) { + return ((month - 1) / 3) + 1; + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/controller/BsEnergyMonitorController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/controller/BsEnergyMonitorController.java new file mode 100644 index 00000000..e85733bb --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/controller/BsEnergyMonitorController.java @@ -0,0 +1,131 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *
+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *
+ * 1. This software is for development use only under a valid license + * from BladeX. + *
+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *
+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *
+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.IsAdmin;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.desk.energy.excel.BsEnergyMonitorExcel;
+import org.springblade.desk.energy.pojo.entity.BsEnergyMonitorEntity;
+import org.springblade.desk.energy.pojo.vo.BsEnergyMonitorVO;
+import org.springblade.desk.energy.service.IBsEnergyMonitorService;
+import org.springblade.desk.energy.wrapper.BsEnergyMonitorWrapper;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 能源监控表 控制器
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/bsEnergyMonitor")
+@Tag(name = "能源监控表", description = "能源监控表接口")
+public class BsEnergyMonitorController extends BladeController {
+
+ private final IBsEnergyMonitorService bsEnergyMonitorService;
+
+ /**
+ * 能源监控表 详情
+ */
+ @GetMapping("/detail")
+ @Operation(summary = "详情", description = "传入bsEnergyMonitor")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.IsAdmin;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.desk.energy.excel.BsPeakFlatValleyExcel;
+import org.springblade.desk.energy.pojo.entity.BsPeakFlatValleyEntity;
+import org.springblade.desk.energy.pojo.vo.BsPeakFlatValleyVO;
+import org.springblade.desk.energy.service.IBsPeakFlatValleyService;
+import org.springblade.desk.energy.wrapper.BsPeakFlatValleyWrapper;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 峰平谷 控制器
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/bsPeakFlatValley")
+@Tag(name = "峰平谷", description = "峰平谷接口")
+public class BsPeakFlatValleyController extends BladeController {
+
+ private final IBsPeakFlatValleyService bsPeakFlatValleyService;
+
+ /**
+ * 峰平谷 详情
+ */
+ @GetMapping("/detail")
+ @Operation(summary = "详情", description = "传入bsPeakFlatValley")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.excel;
+
+
+import lombok.Data;
+
+import java.util.Date;
+import java.math.BigDecimal;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serializable;
+import java.io.Serial;
+
+
+/**
+ * 能源监控表 Excel实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class BsEnergyMonitorExcel implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ID
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("ID")
+ private Long id;
+ /**
+ * 月份
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("月份")
+ private Date month;
+ /**
+ * 上月用水
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用水")
+ private BigDecimal lastWater;
+ /**
+ * 上月用电
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用电")
+ private BigDecimal lastElectric;
+ /**
+ * 上月产能
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月产能")
+ private BigDecimal lastOutput;
+ /**
+ * 上月用水
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用水")
+ private BigDecimal currentWater;
+ /**
+ * 上月用电
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用电")
+ private BigDecimal currentElectric;
+ /**
+ * 上月产能
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月产能")
+ private BigDecimal currentOutput;
+ /**
+ * 上月用水目标
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用水目标")
+ private BigDecimal lastWaterTarget;
+ /**
+ * 上月用电目标
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用电目标")
+ private BigDecimal lastElectricTarget;
+ /**
+ * 是否已删除
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("是否已删除")
+ private Long isDeleted;
+ /**
+ * 本月用水目标
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("本月用水目标")
+ private BigDecimal currentWaterTarget;
+ /**
+ * 本月用电目标
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("本月用电目标")
+ private BigDecimal currentElectricTarget;
+ /**
+ * 上月用水实际完成
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用水实际完成")
+ private BigDecimal lastWaterRate;
+ /**
+ * 上月用电实际完成
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("上月用电实际完成")
+ private BigDecimal lastElectricRate;
+ /**
+ * 本月用水实际完成
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("本月用水实际完成")
+ private BigDecimal currentWaterRate;
+ /**
+ * 本月用电实际完成
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("本月用电实际完成")
+ private BigDecimal currentElectricRate;
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/excel/BsPeakFlatValleyExcel.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/excel/BsPeakFlatValleyExcel.java
new file mode 100644
index 00000000..873eb492
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/excel/BsPeakFlatValleyExcel.java
@@ -0,0 +1,158 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.excel;
+
+
+import lombok.Data;
+
+import java.util.Date;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serializable;
+import java.io.Serial;
+
+
+/**
+ * 峰平谷 Excel实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class BsPeakFlatValleyExcel implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ID
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("ID")
+ private Long id;
+ /**
+ * 月份
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("月份")
+ private Date month;
+ /**
+ * 尖时一开始时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("尖时一开始时间")
+ private String sharpOneStartTime;
+ /**
+ * 尖时一结束时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("尖时一结束时间")
+ private String sharpOneEndTime;
+ /**
+ * 峰时一开始时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("峰时一开始时间")
+ private String peakOneStartTime;
+ /**
+ * 峰时一结束时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("峰时一结束时间")
+ private String peakOneEndTime;
+ /**
+ * 平时一开始时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("平时一开始时间")
+ private String flatOneStartTime;
+ /**
+ * 平时一结束时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("平时一结束时间")
+ private String flatOneEndTime;
+ /**
+ * 谷时一开始时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("谷时一开始时间")
+ private String valleyOneStartTime;
+ /**
+ * 谷时一结束时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("谷时一结束时间")
+ private String valleyOneEndTime;
+ /**
+ * 尖时二开始时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("尖时二开始时间")
+ private String sharpTwoStartTime;
+ /**
+ * 尖时二结束时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("尖时二结束时间")
+ private String sharpTwoEndTime;
+ /**
+ * 峰时二开始时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("峰时二开始时间")
+ private String peakTwoStartTime;
+ /**
+ * 峰时二结束时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("峰时二结束时间")
+ private String peakTwoEndTime;
+ /**
+ * 平时二开始时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("平时二开始时间")
+ private String flatTwoStartTime;
+ /**
+ * 平时二结束时间
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("平时二结束时间")
+ private String flatTwoEndTime;
+ /**
+ * 是否已删除
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("是否已删除")
+ private Long isDeleted;
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/mapper/BsEnergyMonitorMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/mapper/BsEnergyMonitorMapper.java
new file mode 100644
index 00000000..38cca1a6
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/mapper/BsEnergyMonitorMapper.java
@@ -0,0 +1,63 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.mapper;
+
+import org.springblade.desk.energy.pojo.entity.BsEnergyMonitorEntity;
+import org.springblade.desk.energy.pojo.vo.BsEnergyMonitorVO;
+import org.springblade.desk.energy.excel.BsEnergyMonitorExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 能源监控表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+public interface BsEnergyMonitorMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.mapper;
+
+import org.springblade.desk.energy.pojo.entity.BsPeakFlatValleyEntity;
+import org.springblade.desk.energy.pojo.vo.BsPeakFlatValleyVO;
+import org.springblade.desk.energy.excel.BsPeakFlatValleyExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 峰平谷 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+public interface BsPeakFlatValleyMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.pojo.dto;
+
+import org.springblade.desk.energy.pojo.entity.BsEnergyMonitorEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 能源监控表 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class BsEnergyMonitorDTO extends BsEnergyMonitorEntity {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/dto/BsPeakFlatValleyDTO.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/dto/BsPeakFlatValleyDTO.java
new file mode 100644
index 00000000..1c027664
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/dto/BsPeakFlatValleyDTO.java
@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.pojo.dto;
+
+import org.springblade.desk.energy.pojo.entity.BsPeakFlatValleyEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 峰平谷 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class BsPeakFlatValleyDTO extends BsPeakFlatValleyEntity {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyMonitorEntity.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyMonitorEntity.java
new file mode 100644
index 00000000..8309665e
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyMonitorEntity.java
@@ -0,0 +1,128 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.pojo.entity;
+
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.util.Date;
+import java.math.BigDecimal;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+import java.io.Serial;
+
+/**
+ * 能源监控表 实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@TableName("BS_ENERGY_MONITOR")
+@Schema(description = "BsEnergyMonitor对象")
+@EqualsAndHashCode(callSuper = true)
+public class BsEnergyMonitorEntity extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 月份
+ */
+ @Schema(description = "月份")
+ private Date month;
+ /**
+ * 上月用水
+ */
+ @Schema(description = "上月用水")
+ private BigDecimal lastWater;
+ /**
+ * 上月用电
+ */
+ @Schema(description = "上月用电")
+ private BigDecimal lastElectric;
+ /**
+ * 上月产能
+ */
+ @Schema(description = "上月产能")
+ private BigDecimal lastOutput;
+ /**
+ * 上月用水
+ */
+ @Schema(description = "上月用水")
+ private BigDecimal currentWater;
+ /**
+ * 上月用电
+ */
+ @Schema(description = "上月用电")
+ private BigDecimal currentElectric;
+ /**
+ * 上月产能
+ */
+ @Schema(description = "上月产能")
+ private BigDecimal currentOutput;
+ /**
+ * 上月用水目标
+ */
+ @Schema(description = "上月用水目标")
+ private BigDecimal lastWaterTarget;
+ /**
+ * 上月用电目标
+ */
+ @Schema(description = "上月用电目标")
+ private BigDecimal lastElectricTarget;
+ /**
+ * 本月用水目标
+ */
+ @Schema(description = "本月用水目标")
+ private BigDecimal currentWaterTarget;
+ /**
+ * 本月用电目标
+ */
+ @Schema(description = "本月用电目标")
+ private BigDecimal currentElectricTarget;
+ /**
+ * 上月用水实际完成
+ */
+ @Schema(description = "上月用水实际完成")
+ private BigDecimal lastWaterRate;
+ /**
+ * 上月用电实际完成
+ */
+ @Schema(description = "上月用电实际完成")
+ private BigDecimal lastElectricRate;
+ /**
+ * 本月用水实际完成
+ */
+ @Schema(description = "本月用水实际完成")
+ private BigDecimal currentWaterRate;
+ /**
+ * 本月用电实际完成
+ */
+ @Schema(description = "本月用电实际完成")
+ private BigDecimal currentElectricRate;
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyQuotaEntity.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyQuotaEntity.java
index 557f8ec0..a130b1f2 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyQuotaEntity.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyQuotaEntity.java
@@ -25,14 +25,14 @@
*/
package org.springblade.desk.energy.pojo.entity;
-import lombok.Data;
-import io.swagger.v3.oas.annotations.media.Schema;
import com.baomidou.mybatisplus.annotation.TableName;
-import java.util.Date;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
-import org.springblade.core.tenant.mp.TenantEntity;
+
import java.io.Serial;
+import java.util.Date;
/**
* 能源定额 实体类
@@ -59,21 +59,26 @@ public class BsEnergyQuotaEntity extends BaseEntity {
*/
@Schema(description = "作业中心ID")
private Long workCenterId;
+ /**
+ * 作业中心名称
+ */
+ @Schema(description = "作业中心名称")
+ private String workCenterName;
/**
* 设备ID
*/
@Schema(description = "设备ID")
private Long equipmentId;
/**
- * 月份
+ * 设备名称
*/
- @Schema(description = "月份")
- private String month;
+ @Schema(description = "设备名称")
+ private String equipmentName;
/**
* 日期
*/
@Schema(description = "日期")
- private String date;
+ private Date date;
/**
* 自来水用水量
*/
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyTargetEntity.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyTargetEntity.java
index 89db10d2..8f3462c1 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyTargetEntity.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsEnergyTargetEntity.java
@@ -25,15 +25,15 @@
*/
package org.springblade.desk.energy.pojo.entity;
-import lombok.Data;
-import io.swagger.v3.oas.annotations.media.Schema;
import com.baomidou.mybatisplus.annotation.TableName;
-import java.math.BigDecimal;
-import java.util.Date;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
-import org.springblade.core.tenant.mp.TenantEntity;
+
import java.io.Serial;
+import java.math.BigDecimal;
+import java.util.Date;
/**
* 能耗目标表 实体类
@@ -59,7 +59,12 @@ public class BsEnergyTargetEntity extends BaseEntity {
* 月份
*/
@Schema(description = "月份")
- private String month;
+ private Date month;
+ /**
+ * 年
+ */
+ @Schema(description = "年")
+ private Date year;
/**
* 日期
*/
@@ -69,6 +74,10 @@ public class BsEnergyTargetEntity extends BaseEntity {
* 目标
*/
@Schema(description = "目标")
- private Long target;
-
+ private BigDecimal target;
+ /**
+ * 季度
+ */
+ @Schema(description = "季度")
+ private String quarter;
}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsPeakFlatValleyEntity.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsPeakFlatValleyEntity.java
new file mode 100644
index 00000000..05c4adf4
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/entity/BsPeakFlatValleyEntity.java
@@ -0,0 +1,137 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.pojo.entity;
+
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.util.Date;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.mp.base.BaseEntity;
+import org.springblade.core.tenant.mp.TenantEntity;
+import java.io.Serial;
+
+/**
+ * 峰平谷 实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@TableName("BS_PEAK_FLAT_VALLEY")
+@Schema(description = "BsPeakFlatValley对象")
+@EqualsAndHashCode(callSuper = true)
+public class BsPeakFlatValleyEntity extends BaseEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 月份
+ */
+ @Schema(description = "月份")
+ private Date month;
+ /**
+ * 尖时一开始时间
+ */
+ @Schema(description = "尖时一开始时间")
+ private String sharpOneStartTime;
+ /**
+ * 尖时一结束时间
+ */
+ @Schema(description = "尖时一结束时间")
+ private String sharpOneEndTime;
+ /**
+ * 峰时一开始时间
+ */
+ @Schema(description = "峰时一开始时间")
+ private String peakOneStartTime;
+ /**
+ * 峰时一结束时间
+ */
+ @Schema(description = "峰时一结束时间")
+ private String peakOneEndTime;
+ /**
+ * 平时一开始时间
+ */
+ @Schema(description = "平时一开始时间")
+ private String flatOneStartTime;
+ /**
+ * 平时一结束时间
+ */
+ @Schema(description = "平时一结束时间")
+ private String flatOneEndTime;
+ /**
+ * 谷时一开始时间
+ */
+ @Schema(description = "谷时一开始时间")
+ private String valleyOneStartTime;
+ /**
+ * 谷时一结束时间
+ */
+ @Schema(description = "谷时一结束时间")
+ private String valleyOneEndTime;
+ /**
+ * 尖时二开始时间
+ */
+ @Schema(description = "尖时二开始时间")
+ private String sharpTwoStartTime;
+ /**
+ * 尖时二结束时间
+ */
+ @Schema(description = "尖时二结束时间")
+ private String sharpTwoEndTime;
+ /**
+ * 峰时二开始时间
+ */
+ @Schema(description = "峰时二开始时间")
+ private String peakTwoStartTime;
+ /**
+ * 峰时二结束时间
+ */
+ @Schema(description = "峰时二结束时间")
+ private String peakTwoEndTime;
+ /**
+ * 平时二开始时间
+ */
+ @Schema(description = "平时二开始时间")
+ private String flatTwoStartTime;
+ /**
+ * 平时二结束时间
+ */
+ @Schema(description = "平时二结束时间")
+ private String flatTwoEndTime;
+ /**
+ * 谷时二开始时间
+ */
+ @Schema(description = "谷时二开始时间")
+ private String valleyTwoStartTime;
+ /**
+ * 谷时二结束时间
+ */
+ @Schema(description = "谷时二结束时间")
+ private String valleyTwoEndTime;
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyMonitorVO.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyMonitorVO.java
new file mode 100644
index 00000000..a2515293
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyMonitorVO.java
@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.pojo.vo;
+
+import org.springblade.desk.energy.pojo.entity.BsEnergyMonitorEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 能源监控表 视图实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class BsEnergyMonitorVO extends BsEnergyMonitorEntity {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyQuotaVO.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyQuotaVO.java
index 33179aeb..2b3a81ce 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyQuotaVO.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsEnergyQuotaVO.java
@@ -42,13 +42,4 @@ public class BsEnergyQuotaVO extends BsEnergyQuotaEntity {
@Serial
private static final long serialVersionUID = 1L;
- /**
- * 作业中心名称
- */
- private String workCenterName;
-
- /**
- * 设备名称
- */
- private String equipmentName;
}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsPeakFlatValleyVO.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsPeakFlatValleyVO.java
new file mode 100644
index 00000000..4cfeab8d
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/pojo/vo/BsPeakFlatValleyVO.java
@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.pojo.vo;
+
+import org.springblade.desk.energy.pojo.entity.BsPeakFlatValleyEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 峰平谷 视图实体类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class BsPeakFlatValleyVO extends BsPeakFlatValleyEntity {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/IBsEnergyMonitorService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/IBsEnergyMonitorService.java
new file mode 100644
index 00000000..3f8b27e1
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/IBsEnergyMonitorService.java
@@ -0,0 +1,61 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.desk.energy.pojo.entity.BsEnergyMonitorEntity;
+import org.springblade.desk.energy.pojo.vo.BsEnergyMonitorVO;
+import org.springblade.desk.energy.excel.BsEnergyMonitorExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 能源监控表 服务类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+public interface IBsEnergyMonitorService extends BaseService
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.desk.energy.pojo.entity.BsPeakFlatValleyEntity;
+import org.springblade.desk.energy.pojo.vo.BsPeakFlatValleyVO;
+import org.springblade.desk.energy.excel.BsPeakFlatValleyExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 峰平谷 服务类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+public interface IBsPeakFlatValleyService extends BaseService
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.service.impl;
+
+import org.springblade.desk.energy.pojo.entity.BsEnergyMonitorEntity;
+import org.springblade.desk.energy.pojo.vo.BsEnergyMonitorVO;
+import org.springblade.desk.energy.excel.BsEnergyMonitorExcel;
+import org.springblade.desk.energy.mapper.BsEnergyMonitorMapper;
+import org.springblade.desk.energy.service.IBsEnergyMonitorService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 能源监控表 服务实现类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Service
+public class BsEnergyMonitorServiceImpl extends BaseServiceImpl
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.service.impl;
+
+import org.springblade.desk.energy.pojo.entity.BsPeakFlatValleyEntity;
+import org.springblade.desk.energy.pojo.vo.BsPeakFlatValleyVO;
+import org.springblade.desk.energy.excel.BsPeakFlatValleyExcel;
+import org.springblade.desk.energy.mapper.BsPeakFlatValleyMapper;
+import org.springblade.desk.energy.service.IBsPeakFlatValleyService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 峰平谷 服务实现类
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+@Service
+public class BsPeakFlatValleyServiceImpl extends BaseServiceImpl
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.desk.energy.pojo.entity.BsEnergyMonitorEntity;
+import org.springblade.desk.energy.pojo.vo.BsEnergyMonitorVO;
+import java.util.Objects;
+
+/**
+ * 能源监控表 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+public class BsEnergyMonitorWrapper extends BaseEntityWrapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.energy.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.desk.energy.pojo.entity.BsPeakFlatValleyEntity;
+import org.springblade.desk.energy.pojo.vo.BsPeakFlatValleyVO;
+import java.util.Objects;
+
+/**
+ * 峰平谷 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2026-03-03
+ */
+public class BsPeakFlatValleyWrapper extends BaseEntityWrapper