有功功率趋势

This commit is contained in:
guofeihu
2024-08-28 11:28:20 +08:00
parent 00fd701122
commit aa0982fb81
17 changed files with 541 additions and 26 deletions

View File

@@ -1,11 +1,31 @@
package com.njcn.harmonic.controller.powerstatistics;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.pq.pojo.bo.excel.TerminalBaseExcel;
import com.njcn.device.pq.utils.ExcelStyleUtil;
import com.njcn.harmonic.pojo.param.PowerStatisticsParam;
import com.njcn.harmonic.pojo.vo.PowerStatisticsTargetVO;
import com.njcn.harmonic.pojo.vo.PowerStatisticsVO;
import com.njcn.harmonic.pojo.vo.ThdDataVO;
import com.njcn.harmonic.service.activepowerrange.PowerStatisticsService;
import com.njcn.poi.util.PoiUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.njcn.web.controller.BaseController;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
* 有功功率趋势统计 前端控制器
@@ -21,5 +41,50 @@ public class PowerStatisticsController extends BaseController {
private final PowerStatisticsService powerStatisticsService;
/**
* 根据监测点ID及时间获取有功功率趋势
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@GetMapping("/getDataByLineId")
@ApiOperation("根据监测点ID及时间获取有功功率趋势")
public HttpResult<PowerStatisticsVO> getDataByLineId(@RequestBody @Validated PowerStatisticsParam powerStatisticsParam) {
String methodDescribe = getMethodDescribe("getDataByLineId");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, powerStatisticsService.getDataByLine(powerStatisticsParam), methodDescribe);
}
/**
* 根据监测点ID、有功功率趋势区间字段、时间获取该有功功率趋势下指标越限列表
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@GetMapping("/getTargetLimitById")
@ApiOperation("根据监测点ID、有功功率趋势区间字段、时间获取该有功功率趋势下指标越限列表")
public HttpResult<List<PowerStatisticsTargetVO>> getTargetLimitById(@RequestBody @Validated PowerStatisticsParam powerStatisticsParam) {
String methodDescribe = getMethodDescribe("getTargetLimitById");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, powerStatisticsService.getTargetLimitById(powerStatisticsParam), methodDescribe);
}
/**
* 点击越限列表时间查询指标的详细数据
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@GetMapping("/getTargetByTime")
@ApiOperation("点击越限列表时间查询指标的详细数据")
public HttpResult<List<ThdDataVO>> getTargetByTime(@RequestBody @Validated PowerStatisticsParam powerStatisticsParam) {
String methodDescribe = getMethodDescribe("getTargetByTime");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, powerStatisticsService.getTargetByTime(powerStatisticsParam), methodDescribe);
}
@ResponseBody
@ApiOperation("导出设备基础数据模板")
@GetMapping(value = "getExcelTemplate")
public HttpResult<String> getExcelTemplate(@RequestBody @Validated PowerStatisticsParam powerStatisticsParam,HttpServletResponse response) {
ExportParams exportParams = new ExportParams("数据", "数据");
exportParams.setStyle(ExcelStyleUtil.class);
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, TerminalBaseExcel.class, new ArrayList<TerminalBaseExcel>());
String fileName = "数据.xlsx";
PoiUtil.exportFileByWorkbook(workbook, fileName, response);
return null;
}
}