public void Execute(IJobExecutionContext context) { Log.Info("SetKeywordsCostJob запущен!"); Console.WriteLine("SetKeywordsCostJob was started! " + DateTime.Now); IQueryable <Client> clients = _clientRep.GetAll(); DateTime StartDate = new DateTime(); DateTime FinishDate = new DateTime(); JobsInfo JobsInfoQuery = _jobsinfoRep.GetLastActionDateForJob(Constants.SetKeywordsCostJob); if (JobsInfoQuery != null) { StartDate = JobsInfoQuery.lastactiondate.AddDays(-1); //AddDays(-1) для учета часовых поясов FinishDate = DateTime.Now.ToUniversalTime().AddDays(2); //AddDays(1) для учета часовых поясов } else { if (_visitsRep.GetAll().Count() > 0) { StartDate = DateTime.Parse("2013-04-28"); FinishDate = DateTime.Now.ToUniversalTime().AddDays(2);//AddDays(1) для учета часовых поясов } } foreach (Client item in clients) { Console.WriteLine("SetKeywordsCostJob Клиент " + item.Name + " Время старта: " + DateTime.Now); Execute_KeywordsCost_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); Console.WriteLine("SetKeywordsCostJob Клиент " + item.Name + " Время финиша: " + DateTime.Now); } _jobsinfoRep.Add(new JobsInfo() { jobId = Constants.SetKeywordsCostJob, lastactiondate = DateTime.Now.AddDays(-1).ToUniversalTime(), status = true }); _jobsinfoRep.Save(); Console.WriteLine("SetKeywordsCostJob is finished! " + DateTime.Now); }
public void Execute(IJobExecutionContext context) { try { // Log.Info("GetGoogleAnalyticsDataJob запущен!"); Console.WriteLine("GetGoogleAnalyticsDataJob is started....." + DateTime.Now.ToString()); IQueryable <Client> clients = _clientRep.GetAll(); DateTime StartDate = new DateTime(); DateTime FinishDate = new DateTime(); JobsInfo JobsInfoQuery = _jobsinfoRep.GetLastActionDateForJob(Constants.GetGoogleAnalyticsDataJob); if (JobsInfoQuery != null) { StartDate = /*DateTime.Parse("2013-04-01");*/ JobsInfoQuery.lastactiondate.AddDays(-1); //AddDays(-1) для учета часовых поясов FinishDate = DateTime.Now.ToUniversalTime().AddDays(2); //AddDays(1) для учета часовых поясов } else { if (_visitsRep.GetAll().Count() > 0) { StartDate = DateTime.Parse("2012-05-01"); FinishDate = DateTime.Now.ToUniversalTime().AddDays(2);//AddDays(1) для учета часовых поясов } } foreach (Client item in clients) { Console.WriteLine("GetGoogleAnalyticsDataJob Клиент " + item.Name + " Время старта: " + DateTime.Now); if (item.Id != 6) { if (!(String.IsNullOrEmpty(item.LoginGoogleAnalitics)) && (!String.IsNullOrEmpty(item.PasswordGoogleAnalitics)) && (!String.IsNullOrEmpty(item.ids.ToString())) && (item.ids != 0)) { Execute_NonPaidSearchTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); Execute_PaidSearchTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); Execute_ReferralTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); Execute_DirectTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); } } else { if (StartDate >= DateTime.Parse("2013-05-25")) //для клиента 6 выполняем после 25-го числа { if (!(String.IsNullOrEmpty(item.LoginGoogleAnalitics)) && (!String.IsNullOrEmpty(item.PasswordGoogleAnalitics)) && (!String.IsNullOrEmpty(item.ids.ToString())) && (item.ids != 0)) { Execute_NonPaidSearchTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); Execute_PaidSearchTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); Execute_ReferralTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); Execute_DirectTraffic_Query(StartDate, FinishDate, item.LoginGoogleAnalitics, item.PasswordGoogleAnalitics, item.ids.ToString(), item.Id); } } } Console.WriteLine("GetGoogleAnalyticsDataJob Клиент " + item.Name + " Время финиша: " + DateTime.Now); } _jobsinfoRep.Add(new JobsInfo() { jobId = Constants.GetGoogleAnalyticsDataJob, lastactiondate = DateTime.Now.AddDays(-1).ToUniversalTime(), status = true }); _jobsinfoRep.Save(); // Log.Info("GetGoogleAnalyticsDataJob успешно выполнен!"); Console.WriteLine("GetGoogleAnalyticsDataJob is finished....." + DateTime.Now.ToString()); } catch (Exception ex) { while (ex.InnerException != null) { ex = ex.InnerException; } //Log.Error(String.Format(@"Message: {0}, Source: {1}, TargetSite: {2}, Trace: {3} ", ex.Message, ex.Source, ex.TargetSite, ex.StackTrace)); // Console.WriteLine("GetGoogleAnalyticsDataJob is running with error....." + DateTime.Now.ToString()); // Console.WriteLine(String.Format(@"Message: {0}, Source: {1}, TargetSite: {2}, Trace: {3} ", ex.Message, ex.Source, ex.TargetSite, ex.StackTrace)); throw ex; } }