鞍钢鲅鱼圈能源管控系统后端代码
dongyukun
7 天以前 37cb1bd2fd1966f2887e8e34e5cdd1c2f8a67f9a
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PowerController.java
@@ -77,6 +77,9 @@
    @Autowired
    private PowerNetDropdownService powerNetDropdownService;
    @Autowired
    private PowerVoltageStatusService powerVoltageStatusService;
    @GetMapping("/net-factor/list")
    @Operation(summary = "功率因数-电网拓扑")
    public CommonResult<List<PowerNetFactorDTO>> getPowerNetFactorList(@RequestParam Map<String, Object> params) {
@@ -758,7 +761,7 @@
    }
    @PostMapping("/demand/history")
    @Operation(summary = "负荷移植-实测需量,有功功率 历史")
    @Operation(summary = "负荷移植-实测需量有功功率历史")
    public CommonResult<PowerHistoryDTO> getPowerDemandHistory(@RequestBody PowerDemandHisReqDTO dto) {
        log.info("请求参数: {}", JSONObject.toJSONString(dto));
@@ -827,7 +830,7 @@
    }
    @PostMapping("/demand/history-list")
    @Operation(summary = "负荷移植-实测需量,有功功率 历史(多code)")
    @Operation(summary = "负荷移植-实测需量有功功率历史(多code)")
    public CommonResult<LinkedHashMap<String, List<Object[]>>> getPowerDemandHistoryList(@RequestBody PowerDemandHisReqDTO dto) {
        log.info("请求参数: {}", JSONObject.toJSONString(dto));
        LinkedHashMap<String, List<Object[]>> result = new LinkedHashMap<>();
@@ -850,7 +853,7 @@
        }
        for (String code : dto.getCodeList()) {
            PowerDemandEntity powerDemand = powerDemandService.getByCode(dto.getCode());
            PowerDemandEntity powerDemand = powerDemandService.getByCode(code);
            if (powerDemand == null) {
                log.info("未找到code对应的数据: {}", dto.getCode());
                return success(new LinkedHashMap<>());
@@ -874,7 +877,7 @@
            query.setPointNo(pointNo);
            query.setStart(startTime);
            query.setEnd(endTime);
            log.info("开始查询实测需量/有功功率历史数据,测点: {}", pointNo);
            log.info("开始查询实测需量有功功率历史数据,测点: {}", pointNo);
            List<ApiPointValueDTO> chartData = dataPointApi.queryPointHistoryValue(query);
            List<Object[]> dataList = chartData.stream()
                    .map(pv -> new Object[]{
@@ -889,4 +892,36 @@
        return success(result);
    }
    @GetMapping("/voltage/status-list")
    @Operation(summary = "功率因数-母线电压状态")
    public CommonResult<List<PowerVoltageStatusDTO>> getPowerVoltageStatusList(@RequestParam Map<String, Object> params) {
        List<PowerVoltageStatusDTO> result = new ArrayList<>();
        List<PowerVoltageStatusEntity> list = powerVoltageStatusService.list(params);
        if (CollectionUtils.isEmpty(list)) {
            return success(result);
        }
        List<String> points = new ArrayList<>();
        for (PowerVoltageStatusEntity entity : list) {
            if (StringUtils.isBlank(entity.getPoint())) {
                continue;
            }
            points.add(entity.getPoint());
        }
        Map<String, Object> pointsRealValue = new HashMap<>();
        if (!CollectionUtils.isEmpty(points)) {
            pointsRealValue = dataPointApi.queryPointsRealValue(points);
        }
        for (PowerVoltageStatusEntity entity : list) {
            PowerVoltageStatusDTO dto = ConvertUtils.sourceToTarget(entity, PowerVoltageStatusDTO.class);
            dto.setStatus(0);
            BigDecimal value = new BigDecimal(pointsRealValue.get(entity.getPoint()).toString());
            if (value.compareTo(entity.getLimit()) > 0) {
                dto.setStatus(1);
            }
            result.add(dto);
        }
        return success(result);
    }
}