| package com.moral.api.controller; | 
|   | 
| import io.swagger.annotations.Api; | 
| import io.swagger.annotations.ApiImplicitParam; | 
| import io.swagger.annotations.ApiImplicitParams; | 
| import io.swagger.annotations.ApiOperation; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.util.ObjectUtils; | 
| import org.springframework.web.bind.annotation.CrossOrigin; | 
| import org.springframework.web.bind.annotation.GetMapping; | 
| import org.springframework.web.bind.annotation.RequestMapping; | 
| import org.springframework.web.bind.annotation.RestController; | 
|   | 
| import java.util.List; | 
| import java.util.Map; | 
|   | 
| import javax.servlet.http.HttpServletRequest; | 
|   | 
| import com.moral.api.service.CityAqiService; | 
| import com.moral.constant.ResponseCodeEnum; | 
| import com.moral.constant.ResultMessage; | 
| import com.moral.util.WebUtils; | 
|   | 
| @RestController | 
| @RequestMapping("/aqi") | 
| @CrossOrigin(origins = "*", maxAge = 3600) | 
| @Api(tags = {"aqi"}) | 
| public class AqiController { | 
|   | 
|     @Autowired | 
|     private CityAqiService cityAqiService; | 
|   | 
|     @GetMapping("compareO3") | 
|     @ApiOperation(value = "预测和实测臭氧对比", notes = "预测和实测臭氧对比") | 
|     @ApiImplicitParams(value = { | 
|             @ApiImplicitParam(name = "regionCode", value = "区号", required = true, paramType = "query", dataType = "String") | 
|     }) | 
|     public ResultMessage measuredCompareForecast(HttpServletRequest request) { | 
|         Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); | 
|         if (!params.containsKey("regionCode") || !params.containsKey("time")) { | 
|             return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); | 
|         } | 
|         List<Map<String, Object>> response = cityAqiService.measuredCompareForecastOfO3(params); | 
|         return ResultMessage.ok(response); | 
|     } | 
|   | 
|     /** | 
|     * @Description: 查询最新的6参和aqi数据 | 
|             * @Param: [regionCode] | 
|             * @return: com.moral.constant.ResultMessage | 
|             * @Author: 陈凯裕 | 
|             * @Date: 2021/11/1 | 
|             */ | 
|     @GetMapping("queryByRegionCode") | 
|     public ResultMessage queryByRegionCode(Integer regionCode){ | 
|         Map<String, Object> value = cityAqiService.queryCityAqiByRegionCode(regionCode); | 
|         return ResultMessage.ok(value); | 
|     } | 
|   | 
|     /** | 
|     * @Description: 查询最近24小时的aqi数据 | 
|             * @Param: [regionCode] | 
|             * @return: com.moral.constant.ResultMessage | 
|             * @Author: 陈凯裕 | 
|             * @Date: 2021/11/1 | 
|             */ | 
|     @GetMapping("query24HoursAQI") | 
|     public ResultMessage query24HoursAQIByRegionCode(Integer regionCode){ | 
|         Map<String, Object> datas = cityAqiService.query24HoursAqiByRegionCode(regionCode); | 
|         return ResultMessage.ok(datas); | 
|     } | 
|   | 
|     /** | 
|     * @Description: 查询当天的累计aqi以及主要污染物 | 
|             * @Param: [RegionCode] | 
|             * @return: com.moral.constant.ResultMessage | 
|             * @Author: 陈凯裕 | 
|             * @Date: 2021/11/2 | 
|             */ | 
|     @GetMapping("queryTodayAqiAndPollutant") | 
|     public ResultMessage queryTodayAqiAndPollutant(Integer regionCode){ | 
|         Map<String, Object> datas = cityAqiService.queryTodayAqiAndPollutant(regionCode); | 
|         return ResultMessage.ok(datas); | 
|     } | 
|   | 
|     @GetMapping("provincialRanking") | 
|     @ApiOperation(value = "省内排名", notes = "省内排名") | 
|     @ApiImplicitParams(value = { | 
|             @ApiImplicitParam(name = "organizationId", value = "组织id", required = true, paramType = "query", dataType = "Integer") | 
|     }) | 
|     public ResultMessage provincialRanking(Integer organizationId) { | 
|         if (ObjectUtils.isEmpty(organizationId)) { | 
|             return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); | 
|         } | 
|         Map<String, Object> response = cityAqiService.provincialRanking(organizationId); | 
|         return ResultMessage.ok(response); | 
|     } | 
| } |