private async Task InsertDetail(int id) { var input = new JuHeTodayOnHistoryDetailInputDto { E_Id = id }; var apiResult = await juHeApiRepository.GetAsync <JuHeTodayOnHistoryDetailInputDto, JuHeTodayOnHistoryDetailOutputDto>(input); if (apiResult.Success) { var info = apiResult.Result.First(); todayOnHistoryRepository.InsertDetail(new SqlSugar.Entities.TodayOnHistoryDetail(id, info.Content)); } }
/// <summary> /// /// </summary> /// <param name="city"></param> /// <returns></returns> public async Task InsertWeather(string city) { var input = new JuHeWeatherInputDto { City = city }; var apiResult = await juHeApiRepository.GetAsync <JuHeWeatherInputDto, JuHeWeatherApiResultOutputDto>(input); if (apiResult.Success) { var realtime = apiResult.Result.Realtime; weatherRepository.Insert(new SqlSugar.Entities.Weather(city, realtime.Temperature, realtime.Humidity, realtime.Direct, realtime.Power, realtime.Aqi, realtime.Info, JsonConvert.SerializeObject(apiResult.Result.Future))); } }
/// <summary> /// /// </summary> /// <param name="type"></param> /// <returns></returns> public async Task InsertNews(string channelId, int type, int pageIndex = 1, int pageSize = 20) { #region JuHe //for (int i = 0; i <= (int)NewsTypeEnum.caijing; i++) //{ //var currentType = (NewsTypeEnum)i; //var type = NewsTypeEnum.guonei; var input = new JuHeTopNewsInputDto { Type = type.ToString() }; var apiResult = await juHeApiRepository. GetAsync <JuHeTopNewsInputDto, JuHeTopNewsApiResultOutputDto>(input); if (apiResult.Success && apiResult.Result.List.Any()) { var existsNews = newsRepository.GetNews(x => x.Date.Date.Equals(DateTime.Now.Date)); var existsUniqueKeys = existsNews.Select(x => x.UniqueKey); apiResult.Result.List.RemoveAll(x => existsUniqueKeys.Contains(x.UniqueKey)); newsRepository.InsertNews(apiResult.Result.List.Select(x => new SqlSugar.Entities.News(x.Title, x.UniqueKey, x.Category, x.Url, x.Date, JsonConvert.SerializeObject(x.ImageUrls), x.AuthorName, (int)type, "")).ToList()); } //} #endregion #region ShowApi ////var channelId = ShowApiNewsChannel.DomesticNew; //var input = new ShowApiNewsInputDto(channelId, page: pageIndex, maxResult: pageSize); //var apiResult = await showApiRepository.GetAsync<ShowApiNewsInputDto // , ShowApiOutputDtoBase<ShowApiNewsOutputDto>>(input, false); //if (apiResult.Success) //{ // var existsList = newsRepository.GetNews(x => x.Date.Date.Equals(DateTime.Now.Date) && x.ChannelId == channelId); // var existsUniqueKeys = existsList.Select(x => x.UniqueKey).ToList(); // if (existsUniqueKeys.Any()) // apiResult.Showapi_Res_Body.PageBean.ContentList.RemoveAll(x => existsUniqueKeys.Contains(x.Id)); // newsRepository.InsertNews(apiResult.Showapi_Res_Body.PageBean.ContentList // .Select(x => new SqlSugar.Entities.News(x.Title, x.Id, x.ChannelName, x.Link, x.PubDate, // JsonConvert.SerializeObject(x.ImageUrls), x.Source, 0, channelId, x.Desc)).ToList()); //} #endregion }
public async Task InsertWeather(string city) { var input = new JuHeWeatherInputDto { City = city }; var apiResult = await juHeApiRepository.GetAsync <JuHeWeatherInputDto, JuHeWeatherApiResultOutputDto>(input); if (apiResult.Success) { var exists = weatherRepository.Query(city); if (exists == null) { var realtime = apiResult.Result.Realtime; weatherRepository.Insert(new SqlSugar.Entities.Weather(city, realtime.Temperature, realtime.Humidity, realtime.Direct, realtime.Power, realtime.Aqi, realtime.Info, JsonConvert.SerializeObject(apiResult.Result.Future))); } else { var realtime = apiResult.Result.Realtime; exists.AddDate = DateTime.Now; exists.Temperature = realtime.Temperature; exists.Humidity = realtime.Humidity; exists.Direct = realtime.Direct; exists.Power = realtime.Power; exists.Aqi = realtime.Aqi; exists.Info = realtime.Info; exists.Future = JsonConvert.SerializeObject(apiResult.Result.Future); weatherRepository.Update(exists); } } }