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;
|
}
|
}
|