package com.moral.api.service;
import com.moral.api.entity.CityAqiDaily;
import com.baomidou.mybatisplus.extension.service.IService;
import com.moral.api.entity.SysArea;
import com.moral.api.pojo.dto.cityAQI.CityPollutionLevel;
import com.moral.api.pojo.dto.cityAQI.MonthlyPollutionLevel;
import com.moral.api.pojo.form.aqi.*;
import com.moral.api.pojo.vo.cityAQI.CityAreaRangeVO;
import com.moral.api.pojo.vo.cityAQI.PieChartOfPollutionLevelVO;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
*
* 城市aqi日数据表 服务类
*
*
* @author moral
* @since 2021-11-01
*/
public interface CityAqiDailyService extends IService {
/**
* @Description: 根据地区码和时间获取数据
* @Param: [regionCode, startDate, endDate]
* @return: java.util.List
* @Author: 陈凯裕
* @Date: 2022/1/17
*/
List getCityAqiDailyByRegionCodeAndTime(Integer regionCode, Date startDate, Date endDate);
/**
* @Description: 查询污染等级的饼状图,包括天数,占比
* @Param: [regionCode]
* @return: com.moral.api.pojo.dto.dataDisplay.PollutionLevelProportionDTO
* @Author: 陈凯裕
* @Date: 2021/11/9
*/
PieChartOfPollutionLevelVO queryPieChartOfPollutionLevels(ChartOfPollutionLevelForm form);
/**
* @Description: 查询污染等级的柱状图数据,包括天数和占比
* @Param: [form]
* @return: java.util.List
* @Author: 陈凯裕
* @Date: 2021/11/22
*/
List queryBarChartOfPollutionLevels(ChartOfPollutionLevelForm form);
/**
* @Description: 查询一年的数据,并分月份保存
* @Param: [map]
* @return: java.util.Map
* @Author: lizijie
* @Date: 2021/11/23 14:42
**/
Map> oneYearsData(Map map);
/**
* @Description: 查询一个城市所有县的优良天气数
* @Param: [AreaPollutionLevelForm]
* @return: java.util.List
* @Author: 陈凯裕
* @Date: 2021/12/30
*/
List queryAreaPollutionLevel(AreaPollutionLevelForm form);
/**
* @Description: 查询28市优良天气数
* @Param: [form]
* @return: java.util.List
* @Author: 陈凯裕
* @Date: 2021/12/31
*/
List querySpecialCitiesPollutionLevel(SpecialCitiesPollutionLevelForm form);
/**
* @Description: 查询一个省内所有市的优良天数
* @Param: [from]
* @return: java.util.List
* @Author: 陈凯裕
* @Date: 2022/1/7
*/
List queryProvinceCitiesPollutionLevel(ProvinceCitiesPollutionLevelForm form);
/**
* @Description: 根据地区和开始结束时间计算优良天气数
* @Param: [area, startDate, endDate]
* @return: com.moral.api.pojo.dto.cityAQI.CityPollutionLevel
* @Author: 陈凯裕
* @Date: 2022/1/17
*/
CityPollutionLevel calculateDaysByTimeAndSysArea(SysArea area, Date startDate, Date endDate);
/**
* @Description: 查询空气质量简报
* @Param: [regionCode, time]
* @return: java.lang.String
* @Author: 陈凯裕
* @Date: 2022/3/11
*/
List airQualityBulletin(String regionCode,Date time);
/**
* @Description: 查询对应城市下所有县的综合指数排名(附件7数据)
* @Param: [regionCode, time]
* @return: java.util.List
* @Author: 陈凯裕
* @Date: 2022/3/17
*/
List cityAreaRange(Integer regionCode, Date time);
}