From 3faca3fc0bb178afd9cf17222bee14e1c8722f6b Mon Sep 17 00:00:00 2001 From: swb <jpy123456> Date: Thu, 04 Jul 2024 17:02:26 +0800 Subject: [PATCH] fix:尘负荷排名补充提交 --- screen-job/src/main/java/com/moral/api/service/impl/CityWeatherForecastServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 47 insertions(+), 6 deletions(-) diff --git a/screen-job/src/main/java/com/moral/api/service/impl/CityWeatherForecastServiceImpl.java b/screen-job/src/main/java/com/moral/api/service/impl/CityWeatherForecastServiceImpl.java index aa43f1a..4f0699f 100644 --- a/screen-job/src/main/java/com/moral/api/service/impl/CityWeatherForecastServiceImpl.java +++ b/screen-job/src/main/java/com/moral/api/service/impl/CityWeatherForecastServiceImpl.java @@ -1,5 +1,6 @@ package com.moral.api.service.impl; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.moral.api.entity.CityConfigWeatherForecast; @@ -12,9 +13,15 @@ import com.moral.util.DateUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.*; +import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; @@ -34,36 +41,70 @@ private CityConfigWeatherForecastService cityConfigWeatherForecastService; @Autowired - private RestTemplate restTemplate; - - @Autowired private CityWeatherForecastMapper cityWeatherForecastMapper; + + //���������������������������������������������������������������������������������72������������������ @Override public void insertCityWeatherForecast() { + RestTemplate restTemplate = new RestTemplate( + new HttpComponentsClientHttpRequestFactory()); // ������HttpClient���������GZIP + restTemplate.getMessageConverters().set(1, + new StringHttpMessageConverter(StandardCharsets.UTF_8)); Date nextDay = DateUtils.addDays(new Date(), 1); String nextTime = DateUtils.dateToDateString(nextDay, DateUtils.yyyy_MM_dd_EN); //������������������ QueryWrapper<CityConfigWeatherForecast> wrapper = new QueryWrapper<>(); wrapper.select("city_code", "location_id").eq("is_delete", Constants.NOT_DELETE); List<CityConfigWeatherForecast> list = cityConfigWeatherForecastService.list(wrapper); - CityWeatherForecast cityWeatherForecast = new CityWeatherForecast(); + + List<CityWeatherForecast> cityWeatherForecasts = new ArrayList<>(); + for (CityConfigWeatherForecast cityConfigWeatherForecast : list) { Integer cityCode = cityConfigWeatherForecast.getCityCode(); Integer locationId = cityConfigWeatherForecast.getLocationId(); - Map<String, Object> data = restTemplate.getForObject("https://api.qweather.com/v7/weather/72h?key=da05c6c4852d4f7aa3364a9236ee9e26&gzip=n&location={1}", Map.class, locationId); + //Map<String, Object> data = restTemplate.getForObject("https://api.qweather.com/v7/weather/72h?key=da05c6c4852d4f7aa3364a9236ee9e26&gzip=n&location={1}", Map.class, locationId); + Map<String, Object> data = restTemplate.getForObject("https://api.qweather.com/v7/weather/72h?key=5c27e3442bee4a0891eae34afca125f3&gzip=n&location={1}", Map.class, locationId); + //Map<String, Object> data = restTemplate.getForObject(url,Map.class); List<Map<String, Object>> hourly = (List<Map<String, Object>>) data.get("hourly"); for (Map<String, Object> hourlyMap : hourly) { String fxTime = hourlyMap.get("fxTime").toString(); String dayTime = fxTime.split("T")[0]; if (dayTime.equals(nextTime)) { String hourTime = fxTime.substring(0, 17).replaceAll("T", " "); + CityWeatherForecast cityWeatherForecast = new CityWeatherForecast(); cityWeatherForecast.setCityCode(cityCode); cityWeatherForecast.setTime(DateUtils.getDate(hourTime, DateUtils.yyyy_MM_dd_HH_EN)); cityWeatherForecast.setValue(JSONObject.toJSONString(hourlyMap)); - cityWeatherForecastMapper.insert(cityWeatherForecast); + cityWeatherForecasts.add(cityWeatherForecast); } } } + cityWeatherForecastMapper.insertCityWeatherForecast(cityWeatherForecasts); } + + public static void main(String[] args) { + RestTemplate restTemplate = new RestTemplate( + new HttpComponentsClientHttpRequestFactory()); // ������HttpClient���������GZIP + restTemplate.getMessageConverters().set(1, + new StringHttpMessageConverter(StandardCharsets.UTF_8)); + /* String url = "https://devapi.qweather.com/v7/weather/24h?location=101010100&key=2430ab9e636c4950a686fbd84e3ccb3a"; //��������������������������� + + Map<String, Object> data = restTemplate.getForObject(url,Map.class);*/ + /*RestTemplate restTemplate = new RestTemplate();*/ + Map<String, Object> data = restTemplate.getForObject("https://api.qweather.com/v7/weather/72h?key=5c27e3442bee4a0891eae34afca125f3&gzip=n&location={1}", Map.class, 101010100); + + List<Map<String, Object>> hourly = (List<Map<String, Object>>) data.get("hourly"); + int i = 0; + + + + + //String url = "https://devapi.qweather.com/v7/weather/24h?location=101010100&key=2430ab9e636c4950a686fbd84e3ccb3a"; //��������������������������� + // String response = restTemplate.getForObject(url,String.class); + + + + } + } -- Gitblit v1.8.0