feat(ems): 新增能耗统计分析功能
- 新增环比分析、同比分析接口与实现 - 支持按设备、能源类型、区域(含子区域)过滤统计 - 实现日、周、月、年维度的数据汇总与对比计算 - 扩展 Mapper 层支持带设备列表的时间区间查询 - 新增多个 VO 类用于封装分析结果数据结构 - 完善 Controller 接口接收过滤参数并调用服务层 -优化区域递归查找逻辑以支持层级结构查询 - 提供工具方法处理空值与比率计算 - 添加新的 BO 类用于传递查询与范围参数 - 更新配置文件注释但未启用新路由规则
This commit is contained in:
@@ -4,9 +4,7 @@ import java.util.List;
|
||||
import java.util.Arrays;
|
||||
|
||||
import com.klp.ems.domain.bo.EmsEnergyConsumptionQueryBo;
|
||||
import com.klp.ems.domain.vo.EnergyChainRatioVo;
|
||||
import com.klp.ems.domain.vo.SummaryDailyVo;
|
||||
import com.klp.ems.domain.vo.SummaryMonthlyVo;
|
||||
import com.klp.ems.domain.vo.*;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.constraints.*;
|
||||
@@ -23,7 +21,6 @@ import com.klp.common.core.validate.AddGroup;
|
||||
import com.klp.common.core.validate.EditGroup;
|
||||
import com.klp.common.enums.BusinessType;
|
||||
import com.klp.common.utils.poi.ExcelUtil;
|
||||
import com.klp.ems.domain.vo.EmsEnergyConsumptionVo;
|
||||
import com.klp.ems.domain.bo.EmsEnergyConsumptionBo;
|
||||
import com.klp.ems.service.IEmsEnergyConsumptionService;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
@@ -48,10 +45,10 @@ public class EmsEnergyConsumptionController extends BaseController {
|
||||
@GetMapping("/getEnergySummary")
|
||||
public R getEnergySummary(EmsEnergyConsumptionQueryBo queryBo){
|
||||
if (StringUtils.hasText(queryBo.getMonth())) {
|
||||
List<SummaryDailyVo> data = iEmsEnergyConsumptionService.getEnergySummaryDaily(queryBo.getMonth());
|
||||
List<SummaryDailyVo> data = iEmsEnergyConsumptionService.getEnergySummaryDailyFiltered(queryBo);
|
||||
return R.ok(data);
|
||||
}else if (StringUtils.hasText(queryBo.getYear())) {
|
||||
List<SummaryMonthlyVo> data = iEmsEnergyConsumptionService.getEnergySummaryMonthly(queryBo.getYear());
|
||||
List<SummaryMonthlyVo> data = iEmsEnergyConsumptionService.getEnergySummaryMonthlyFiltered(queryBo);
|
||||
return R.ok(data);
|
||||
} else {
|
||||
return R.fail("year 或 month 必须提供一个");
|
||||
@@ -62,11 +59,27 @@ public class EmsEnergyConsumptionController extends BaseController {
|
||||
* 获取能耗环比概况(没写完)
|
||||
*/
|
||||
@GetMapping("/getEnergyChainRatio")
|
||||
public R<EnergyChainRatioVo> getEnergyChainRatio() {
|
||||
EnergyChainRatioVo energyChainRatioVo = iEmsEnergyConsumptionService.getEnergyChainRatio();
|
||||
public R<EnergyChainRatioVo> getEnergyChainRatio(EmsEnergyConsumptionQueryBo queryBo) {
|
||||
EnergyChainRatioVo energyChainRatioVo = iEmsEnergyConsumptionService.getEnergyChainRatioFiltered(queryBo);
|
||||
return R.ok(energyChainRatioVo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 同比分析:year 必填
|
||||
*/
|
||||
@GetMapping("/getYearOnYear")
|
||||
public R<YearOnYearVo> getYearOnYear(EmsEnergyConsumptionQueryBo queryBo) {
|
||||
return R.ok(iEmsEnergyConsumptionService.getYearOnYear(queryBo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 环比分析:periodType=day/week/month/year 与 dateKey
|
||||
*/
|
||||
@GetMapping("/getChainAnalysis")
|
||||
public R<ChainAnalysisVo> getChainAnalysis(EmsEnergyConsumptionQueryBo queryBo) {
|
||||
return R.ok(iEmsEnergyConsumptionService.getChainAnalysis(queryBo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询能耗记录列表
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user