kaiyu
2021-08-25 41622b7aa1d948040b0f8ea024aece42d5a518a2
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
package com.moral.api.service.impl;
 
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.moral.api.entity.HistoryHourly;
import com.moral.api.mapper.HistoryHourlyMapper;
import com.moral.api.service.HistoryHourlyService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.moral.constant.Constants;
import com.moral.util.AQIUtils;
import com.moral.util.DateUtils;
 
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
 
/**
 * <p>
 * 已校准小时表 服务实现类
 * </p>
 *
 * @author moral
 * @since 2021-07-14
 */
@Service
public class HistoryHourlyServiceImpl extends ServiceImpl<HistoryHourlyMapper, HistoryHourly> implements HistoryHourlyService {
 
    @Autowired
    private HistoryHourlyMapper historyHourlyMapper;
 
    @Override
    public Map<String, Object> getHourlyAqiByMac(String mac) {
        QueryWrapper<HistoryHourly> queryWrapper = new QueryWrapper<>();
        String time = DateUtils.dateToDateString(new Date(), DateUtils.yyyy_MM_dd_HH_EN) + ":00:00";
        queryWrapper.eq("time", time).eq("mac", mac);
        //获取小时数据
        HistoryHourly historyHourly = historyHourlyMapper.selectOne(queryWrapper);
        Map<String, Object> result = new HashMap<>();
        if (historyHourly == null) {
            result.put("AQI", Constants.NULL_VALUE);
            return result;
        }
        Map<String, Object> data = JSONObject.parseObject(historyHourly.getValue(), Map.class);
        result.put("AQI", AQIUtils.hourlyAqi(data));
        return result;
    }
}