cjl
2024-03-29 d672457aaf5c7a2b7429b4eef82d574009b01351
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
package com.moral.api.service;
 
import com.moral.api.entity.HistoryHourly;
import com.moral.api.entity.HistoryMinutely;
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);
 
 
 
    /**
     * @Description: 根据一个mac查询时间段内的分钟数据
     * @Param: [mac, startDate, endDate]
     * @return: java.util.Map<java.lang.String,com.moral.api.entity.HistoryDaily>
     * @Author: 陈凯裕
     * @Date: 2021/9/26
     */
    List<HistoryMinutely> getHistoryMinutely(String mac, Date startDate, Date endDate);
 
}