package com.njcn.supervision.service.device;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.supervision.pojo.param.device.OnlineParam;
import com.njcn.supervision.pojo.po.device.LineWarning;
import com.njcn.supervision.pojo.vo.device.LineLimitDetailVo;
import com.njcn.supervision.pojo.vo.device.OnlineVo;

import java.util.List;

/**
 * <p>
 * 监测点每日稳态指标超标天数统计表 服务类
 * </p>
 *
 * @author xy
 * @since 2024-06-17
 */
public interface ILineWarningService extends IService<LineWarning> {

    /**
     * 每天定时计算各监测点各个指标超标情况
     */
    void addLineWarning();

    /**
     * 每日统计当前月各监测点各指标累计超标天数
     */
    void addHeBeiNorthLineWarning(String startTime, String endTime);

    /**
     * 获取在线监测的数据列表
     * @param param
     * @return
     */
    Page<OnlineVo> getLineWarningList(OnlineParam param);

    /**
     * 发起预告警单
     * @param param
     * @return
     */
    void startReport(OnlineParam.ReportParam param);

    /**
     * 按监测点id，指标id查看越限详情，具体展示每日超标的
     * @param param
     * @return
     */
    List<LineLimitDetailVo> getOverLimitDetail(OnlineParam.DetailParam param);

}
