package com.moral.api.service; 
 | 
  
 | 
import com.moral.api.entity.HistoryHourly; 
 | 
import com.moral.api.vo.HistoryHourlyVo; 
 | 
  
 | 
import java.util.Date; 
 | 
import java.util.List; 
 | 
import java.util.Map; 
 | 
  
 | 
/** 
 | 
 * <p> 
 | 
 * 已校准小时表 服务类 
 | 
 * </p> 
 | 
 * 
 | 
 * @author moral 
 | 
 * @since 2021-07-14 
 | 
 */ 
 | 
public interface HistoryHourlyService { 
 | 
  
 | 
    //根据mac获取小时AQI 
 | 
    Map<String, Object> getHourlyAqiByMac(String mac); 
 | 
  
 | 
    /** 
 | 
     * @Description: 通过组织id和因子编码获取上一个小时数据 
 | 
     * @Param: [map] 
 | 
     * @return: java.util.Map<java.lang.String, java.lang.Object> 
 | 
     * @Author: lizijie 
 | 
     * @Date: 2021/12/7 10:07 
 | 
     **/ 
 | 
    Map<String, Object> getLastHourDataByOrgIdAndSensorCode(Map map); 
 | 
  
 | 
    /** 
 | 
     * @Description: 通过组织id和因子编码获取最近12小时数据层 
 | 
     * @Param: [map] 
 | 
     * @return: java.util.Map<java.lang.String, java.lang.Object> 
 | 
     * @Author: lizijie 
 | 
     * @Date: 2021/12/10 14:57 
 | 
     **/ 
 | 
    Map<String, Object> getLastTwelveHourDataByOrgIdAndSensorCode(Map map); 
 | 
  
 | 
    /** 
 | 
     * @Description: 通过组织id、因子编码和时间获取小时数据 
 | 
     * @Param: [map] 
 | 
     * @return: java.util.Map<java.lang.String, java.lang.Object> 
 | 
     * @Author: lizijie 
 | 
     * @Date: 2021/12/15 15:16 
 | 
     **/ 
 | 
    Map<String, Object> getThermodynamicDiagramDataByOrgIdSensorCodeTime(Map<String, Object> map); 
 | 
  
 | 
    /** 
 | 
     * @Description: 通过组织id、因子编码和时间获取小时数据第二版 
 | 
     * @Param: [map] 
 | 
     * @return: java.util.Map<java.lang.String, java.lang.Object> 
 | 
     * @Author: lizijie 
 | 
     * @Date: 2022/01/19 16:29 
 | 
     **/ 
 | 
    Map<String, Object> getThermodynamicDiagramDataByOrgIdSensorCodeTimeV2(Map<String, Object> map); 
 | 
  
 | 
    /** 
 | 
     * @Description: 通过组织id、因子编码和时间段获取小时数据 
 | 
     * @Param: [map] 
 | 
     * @return: java.util.Map<java.lang.String, java.lang.Object> 
 | 
     * @Author: lizijie 
 | 
     * @Date: 2021/12/16 15:16 
 | 
     **/ 
 | 
    List<Map<String, Object>> getThermodynamicDiagramDataByOrgIdSensorCodeTimeslot(Map<String, Object> map); 
 | 
  
 | 
    /** 
 | 
     * @Description: 通过组织id、因子编码和时间段获取小时数据 
 | 
     * @Param: [map] 
 | 
     * @return: java.util.Map<java.lang.String, java.lang.Object> 
 | 
     * @Author: lizijie 
 | 
     * @Date: 2022/01/20 15:16 
 | 
     **/ 
 | 
    List<Map<String, Object>> getThermodynamicDiagramDataByOrgIdSensorCodeTimeslotV2(Map<String, Object> map); 
 | 
  
 | 
    /** 
 | 
     * @Description: 获取某一天小时完整数据 
 | 
     * @Param: [map] 
 | 
     * @return: java.util.List<java.util.Map < java.lang.String, java.lang.Object>> 
 | 
     * @Author: lizijie 
 | 
     * @Date: 2021/12/28 10:04 
 | 
     **/ 
 | 
    List<Map<String, Object>> getHourCompleteDataByMacSensorCodeDate(Map<String, Object> map); 
 | 
  
 | 
    /** 
 | 
     * @Description: 根据mac和时间获取小时值 
 | 
     * @Param: [mac, startDate, endDate] 
 | 
     * @return: java.util.List<com.moral.api.entity.HistoryHourly> 
 | 
     * @Author: 陈凯裕 
 | 
     * @Date: 2021/9/28 
 | 
     */ 
 | 
    List<HistoryHourly> getValueByMacAndTime(String mac, Date startDate, Date endDate); 
 | 
  
 | 
    /** 
 | 
     * @Description: 根据mac和时间获取小时值 
 | 
     * @Param: [mac, startDate, endDate] 
 | 
     * @return: java.util.List<com.moral.api.entity.HistoryHourly> 
 | 
     * @Author: 陈凯裕 
 | 
     * @Date: 2021/9/28 
 | 
     */ 
 | 
    List<HistoryHourly> getValueByMacAndTime(List<String> mac, Date startDate, Date endDate); 
 | 
  
 | 
    /** 
 | 
     * @param macs List<String> 
 | 
     * @param time String 例:2021-12-23 
 | 
     * @description: 通过设备和时间获取小时数据 
 | 
     */ 
 | 
    List<HistoryHourly> getValueByMacs(List<String> macs, String time); 
 | 
  
 | 
    /** 
 | 
     * @param macs List<String> 
 | 
     * @param time String 例:2021-12-23 
 | 
     * @description: 通过设备和时间获取小时数据 
 | 
     */ 
 | 
    List<HistoryHourly> getHourlyDataByMacs(List<String> macs, String time); 
 | 
  
 | 
    /** 
 | 
     * @param list       数据 
 | 
     * @param sensorCode 因子code 
 | 
     * @param type       要计算的类型,最大值:max,最小值:min,平均值:sum,平均值:avg, 
 | 
     * @description 根据类型计算值 
 | 
     */ 
 | 
    Double calculatedValue(List<HistoryHourly> list, String sensorCode, String type, Double lower, Double upper); 
 | 
  
 | 
  
 | 
    boolean historyHourly(HistoryHourlyVo historyHourlyVo); 
 | 
} 
 |