鞍钢鲅鱼圈能源管控系统后端代码
liriming
4 天以前 c79bc0566e67eabd4715d854a2306e2451983e7b
新增135机组指标趋势线接口
已修改1个文件
已添加5个文件
200 ■■■■■ 文件已修改
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PlantController.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/dao/PlantChartConfDao.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/entity/PlantChartConfEntity.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/PlantChartConfService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/impl/PlantChartConfServiceImpl.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/vo/PlantChartDataVO.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/PlantController.java
@@ -1,19 +1,19 @@
package com.iailab.module.ansteel.api.controller.admin;
import com.iailab.framework.common.pojo.CommonResult;
import com.iailab.module.ansteel.plant.service.PlantChartConfService;
import com.iailab.module.ansteel.plant.service.PlantConfService;
import com.iailab.module.ansteel.plant.service.PlantIndexConfService;
import com.iailab.module.ansteel.plant.vo.PlantChartDataVO;
import com.iailab.module.ansteel.plant.vo.PlantDataVO;
import com.iailab.module.ansteel.plant.vo.PlantIndexDataVO;
import io.swagger.v3.oas.annotations.Operation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
import static com.iailab.framework.common.pojo.CommonResult.success;
@@ -33,6 +33,9 @@
    @Autowired
     private PlantIndexConfService plantIndexConfService;
    @Autowired
    private PlantChartConfService plantChartConfService;
    @GetMapping("/data")
    @Operation(summary = "135机组数据")
    public CommonResult<List<PlantDataVO>> getPlantData(@RequestParam("businessType") String businessType) {
@@ -46,4 +49,11 @@
        List<PlantIndexDataVO> result = plantIndexConfService.getPlantIndexData(businessType);
        return success(result);
    }
    @PostMapping("/chart-data")
    @Operation(summary = "135机组指标趋势数据")
    public CommonResult<PlantChartDataVO> getPlantChartData(@RequestBody Map tMap) {
        PlantChartDataVO result = plantChartConfService.getPlantChartData(tMap);
        return success(result);
    }
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/dao/PlantChartConfDao.java
对比新文件
@@ -0,0 +1,14 @@
package com.iailab.module.ansteel.plant.dao;
import com.iailab.framework.common.dao.BaseDao;
import com.iailab.module.ansteel.plant.entity.PlantChartConfEntity;
import org.apache.ibatis.annotations.Mapper;
/**
 * @description:
 * @author: lirm
 * @date: 2025/6/20 13:59
 **/
@Mapper
public interface PlantChartConfDao extends BaseDao<PlantChartConfEntity> {
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/entity/PlantChartConfEntity.java
对比新文件
@@ -0,0 +1,42 @@
package com.iailab.module.ansteel.plant.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
/**
 * @description:
 * @author: lirm
 * @date: 2025/6/20 13:59
 **/
@Data
@TableName("t_plant_chart_conf")
public class PlantChartConfEntity implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    @TableId(type = IdType.ASSIGN_UUID)
    private String id;
    private String indType;
    private String indCode;
    private String indName;
    private String indAvg;
    private String indTheory;
    private String indOptimal;
    private String indReal;
    private String indPower;
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/PlantChartConfService.java
对比新文件
@@ -0,0 +1,15 @@
package com.iailab.module.ansteel.plant.service;
import com.iailab.module.ansteel.plant.vo.PlantChartDataVO;
import java.util.Map;
/**
 * @description:
 * @author: lirm
 * @date: 2025/6/20 13:59
 **/
public interface PlantChartConfService {
    PlantChartDataVO getPlantChartData(Map tMap);
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/service/impl/PlantChartConfServiceImpl.java
对比新文件
@@ -0,0 +1,74 @@
package com.iailab.module.ansteel.plant.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.iailab.module.ansteel.plant.dao.PlantChartConfDao;
import com.iailab.module.ansteel.plant.entity.PlantChartConfEntity;
import com.iailab.module.ansteel.plant.service.PlantChartConfService;
import com.iailab.module.ansteel.plant.vo.PlantChartDataVO;
import com.iailab.module.data.api.point.DataPointApi;
import com.iailab.module.data.api.point.dto.ApiPointsValueQueryDTO;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
 * @description:
 * @author: lirm
 * @date: 2025/6/20 13:59
 **/
@Slf4j
@Service
public class PlantChartConfServiceImpl implements PlantChartConfService {
    private Logger logger = LoggerFactory.getLogger(getClass());
    @Resource
    private PlantChartConfDao plantChartConfDao;
    @Resource
    private DataPointApi dataPointApi;
    @Override
    public PlantChartDataVO getPlantChartData(Map tMap) {
        PlantChartDataVO result = new PlantChartDataVO();
        if(ObjectUtils.isEmpty(tMap.get("indType")) || ObjectUtils.isEmpty(tMap.get("indCode"))){
            logger.info("输入参数为空");
            return result;
        }
        QueryWrapper<PlantChartConfEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("ind_type",tMap.get("indType"));
        queryWrapper.eq("indCode",tMap.get("indCode"));
        List<PlantChartConfEntity> plantChartConfList = plantChartConfDao.selectList(queryWrapper);
        if (CollectionUtils.isEmpty(plantChartConfList)) {
            log.info("plantChartConfList is null");
            return result;
        }
        PlantChartConfEntity plantChartConfEntity = plantChartConfList.get(0);
        // 筛选DATAPOINT一次性查询出全部
        List<String> pointNos = Stream.of(plantChartConfEntity.getIndAvg(),plantChartConfEntity.getIndTheory(),plantChartConfEntity.getIndOptimal(),plantChartConfEntity.getIndReal()).collect(Collectors.toList());
        if (!CollectionUtils.isEmpty(pointNos)) {
            ApiPointsValueQueryDTO queryDTO = new ApiPointsValueQueryDTO();
            queryDTO.setPointNos(pointNos);
            Map<String, List<Map<String, Object>>>  pointsHisValues = dataPointApi.queryPointsHistoryValue(queryDTO);
            if (CollectionUtils.isEmpty(pointsHisValues)) {
                log.info("pointsHisValues is null");
                return result;
            }
            result.setIndCode(plantChartConfEntity.getIndCode());
            result.setIndName(plantChartConfEntity.getIndName());
            result.setIndAvgHisList(pointsHisValues.get(plantChartConfEntity.getIndAvg()));
            result.setIndTheoryHisList(pointsHisValues.get(plantChartConfEntity.getIndTheory()));
            result.setIndOptimalHisList(pointsHisValues.get(plantChartConfEntity.getIndOptimal()));
            result.setIndRealHisList(pointsHisValues.get(plantChartConfEntity.getIndReal()));
            result.setIndPowerHisList(pointsHisValues.get(plantChartConfEntity.getIndPower()));
        }
        return result;
    }
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/plant/vo/PlantChartDataVO.java
对比新文件
@@ -0,0 +1,37 @@
package com.iailab.module.ansteel.plant.vo;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
 * @description:
 * @author: lirm
 * @date: 2025/6/23
 **/
@Data
public class PlantChartDataVO implements Serializable {
    private static final long serialVersionUID = 1L;
    private String id;
    private String indCode;
    private String indName;
    private String indType;
    private List<Map<String, Object>> indAvgHisList;
    private List<Map<String, Object>> indTheoryHisList;
    private List<Map<String, Object>> indOptimalHisList;
    private List<Map<String, Object>> indRealHisList;
    private List<Map<String, Object>> indPowerHisList;
}