private void timerDo4_Tick(object sender, ElapsedEventArgs e) { t4.Enabled = false; var date = DateTime.Now; Console.WriteLine(date.ToString("yyyy/MM/dd HH:mm:ss")); LogHelper.WriteLog(typeof(FrmMainServer), "看门狗程序开始!"); if (date.Hour >= 2) { try { Console.WriteLine("开始同步PM2.5"); LogHelper.WriteLog(typeof(FrmMainServer), "开始同步PM2.5!"); HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://api.help.bj.cn/apis/weather/?id=101210107"); request.Method = "GET"; request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36"; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream myResponseStream = response.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8); string retString = myStreamReader.ReadToEnd(); var respTqpm = JsonConvert.DeserializeObject <TqPm25>(retString); Console.WriteLine(respTqpm); myStreamReader.Close(); myResponseStream.Close(); var times = date.ToString("yyyy-MM-dd"); var query = _dbContext3.Barometric.FirstOrDefault(x => x.IsDeleted != 1 && x.BarTime == times); if (query == null) { Barometric lot = new Barometric() { BarometricUuid = Guid.NewGuid(), NowShuzhi = respTqpm.pm25, IsDeleted = 0, Linjie = "75", BarTime = DateTime.Now.ToString("yyyy-MM-dd"), AddTime = DateTime.Now.ToString("yyyy-MM-dd"), AddPeople = "狗" }; _dbContext3.Barometric.Add(lot); _dbContext3.SaveChanges(); } t4.Enabled = true; } catch (Exception ex) { Console.WriteLine("同步PM2.5遇到错误!" + ex.Message); LogHelper.WriteLog(typeof(FrmMainServer), "同步PM2.5遇到错误!" + ex.Message); } finally { t4.Enabled = true; } } LogHelper.WriteLog(typeof(FrmMainServer), "看门狗程序完毕!"); }
public IActionResult GetCreate(AirPolluViewModel model) { var response = ResponseModelFactory.CreateInstance; if (string.IsNullOrEmpty(model.BarTime) || string.IsNullOrEmpty(model.NowShuzhi .Trim())) { response.SetFailed("请输入时间和当日数值"); return(Ok(response)); } using (_dbContext) { var time = Convert.ToDateTime(model.BarTime).ToString("yyyy-MM-dd"); if (_dbContext.Barometric.Any(x => x.BarTime == time && x.IsDeleted == 0)) { response.SetFailed("该时间已存在记录"); return(Ok(response)); } var entity = new Barometric() { BarometricUuid = Guid.NewGuid(), BarTime = time, NowShuzhi = model.NowShuzhi, Linjie = model.Linjie, IsDeleted = 0, AddTime = DateTime.Now.ToString("yyyy-MM-dd"), AddPeople = AuthContextService.CurrentUser.DisplayName, }; _dbContext.Barometric.Add(entity); var num = _dbContext.SaveChanges(); if (num > 0) { ToLog.AddLog("添加", "成功:添加:大气防治信息一条数据", _dbContext); response.SetSuccess(); } else { response.SetFailed("添加失败"); } return(Ok(response)); } }