package com.ozs.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ozs.common.core.domain.AjaxResult;
import com.ozs.entity.MsgAlarm;
import com.ozs.entity.vo.*;
import java.util.List;
import java.util.Map;
/**
*
* 报警信息表 服务类
*
*
* @author ozs
* @since 2023-02-22
*/
public interface MsgAlarmService extends IService {
//web数据统计 报警数据详情 导出数据集合
List list(String railwayCode, Integer currentYear, Integer currentMonth, Integer pageNum, Integer pageSize);
IPage listToPage(List list, int pageNum, int pageSize);
//web数据统计 报警月统计数据
List getCount(String railwayCode, Integer currentYear, Integer currentMonth);
//web数据统计 报警月统计数据(天)
List getDayCount(String railwayCode, Integer currentYear, Integer currentMonth);
//数据统计-灾害占比
List getAlarmTypeCount(String railwayCode, Integer currentYear, Integer currentMonth);
//数据统计-频繁出现灾害地点排名
List alarmTypeAreaCount(String railwayCode, Integer currentYear, Integer currentMonth);
//报警数据详情导出数据集合
List exportExcel(AlarmStatisticResVo alarmStatisticResVo);
//获取报警数量
Long getAlarmNum();
/**
* 通过相机编码查询未解除预警信息
*
* @param cameraCode
* @return
*/
MsgAlarm selectByCameraCode(String cameraCode);
IPage queryPage(MsgAlarmVo msgAlarmVo);
MsgAlarm getByAlarmId(String alarmId);
Map statisticsNum(MsgAlarmVo msgAlarmVo);
Integer appAlarmNum(MsgAlarmVo msgAlarmVo);
List msgAlarmList(MsgAlarmVo msgAlarmVo);
AjaxResult getDate(MsgAlarmVo msgAlarmVo);
}