public static DateTime GetDateTime(DateInfo info, DateTime currentTime, DateTime startTime) { DateTime newTime = info.relativeYear ? currentTime.AddYears(info.yearNumber) : startTime.AddYears(info.yearNumber); newTime = info.relativeMonth ? newTime.AddMonths(info.monthNumber) : new DateTime(newTime.Year, info.monthNumber, newTime.Day); newTime = info.relativeDay ? newTime.AddDays(info.dayNumber) : new DateTime(newTime.Year, newTime.Month, info.dayNumber); if (newTime < currentTime) { newTime.AddYears(1); } return(newTime); }
/// <summary> /// Visits the date. /// </summary> /// <param name="date">The date to visit.</param> public virtual void VisitDate(DateInfo date) { this.contextStack.Push(date); if (date.Fields != null) { foreach (Field field in date.Fields) { VisitField(field); } } this.contextStack.Pop(); }
/// <summary> /// To /// </summary> /// <param name="str"></param> /// <param name="style"></param> /// <param name="formatProvider"></param> /// <param name="defaultVal"></param> /// <returns></returns> public static DateInfo To(string str, DateTimeStyles style = DateTimeStyles.None, IFormatProvider formatProvider = null, DateInfo defaultVal = default) { if (formatProvider is null) { formatProvider = DateTimeFormatInfo.CurrentInfo; } return(DateTime.TryParse(str, formatProvider, style, out var dateTime) ? new DateInfo(dateTime) : defaultVal); }
private void setNewCases() { chartPoDatumima.Titles.Add("Number of new cases"); for (DateTime i = this.datumOd; i <= this.datumDo; i = i.AddDays(1)) { string datum = i.ToString("dd/MM/yyyy"); DateInfo di = DataProvider.DateForOneDay(drzava, datum); chartPoDatumima.Series["SeriesDates"].Points.AddXY(di.Date, di.NewCases); } }
private void setNewDeaths() { chartPreminuli.Titles.Add("Number of deceased"); for (DateTime i = datumOd; i <= datumDo; i = i.AddDays(1)) { string datum = i.ToString("dd/MM/yyyy"); DateInfo di = DataProvider.DateForOneDay(drzava, datum); chartPreminuli.Series["SeriesDates"].Points.AddXY(di.Date, di.NewDeaths); } }
public void SimpleDatePropertysTests() { var date = new DateInfo(); date.Month = 13; date.Course++; Assert.AreEqual("Январь", ((DateInfo.Months)date.Month).ToString()); Assert.AreEqual(1, date.Month); Assert.AreEqual(2021, date.Year); Assert.AreEqual(1, date.Course); }
private void setNewRecovered() { chartOporavljeni.Titles.Add("Number of recovered"); for (DateTime i = datumOd; i <= datumDo; i = i.AddDays(1)) { string datum = i.ToString("dd/MM/yyyy"); DateInfo di = DataProvider.DateForOneDay(drzava, datum); chartOporavljeni.Series["SeriesDates"].Points.AddXY(di.Date, di.NewRecovered); } }
public static bool DoesDayInMonth(int year, int month, int day, out DateInfo dateInfo) { try { dateInfo = DateTime.DaysInMonth(year, month) >= day ? new DateInfo(year, month, day) : null; return(dateInfo != null); } catch { dateInfo = null; return(false); } }
public ActionResult Stats(DateInfo bounds) { if (Request["StartDate"] == null || Request["EndDate"] == null) { RedirectToAction("Filter").ExecuteResult(this.ControllerContext); return(Content("")); //The redirect is asynchronous //Need to exit the function and not call the view } AdditionIterable Records = AdditionIterable.fromBounds(bounds); //Don't worry, we'll dispose of it in the cshtml return(View(Records)); }
public RelativeDateInfo(DateTimeOffset date, DateTimeOffset relativeToDate) { Date = date; RelativeToDate = relativeToDate; var dateInfo = new DateInfo(date); var relativeToDateInfo = new DateInfo(relativeToDate); RelativeYearNo = relativeToDateInfo.YearNo - dateInfo.YearNo; RelativeQuarterNo = relativeToDateInfo.QuarterNo - dateInfo.QuarterNo; RelativeMonthNo = relativeToDateInfo.MonthNo - dateInfo.MonthNo; RelativeWeekNo = relativeToDateInfo.WeekNo - dateInfo.WeekNo; RelativeDayNo = relativeToDateInfo.DayNo - dateInfo.DayNo; }
public virtual void VisitDate(DateInfo date) { this.contextStack.Push(date); List <Field> fields = date.Fields; if (fields != null) { foreach (Field field in fields) { field.Accept(this); } } this.contextStack.Pop(); }
/// <summary> /// To /// </summary> /// <param name="text"></param> /// <param name="style"></param> /// <param name="formatProvider"></param> /// <param name="defaultVal"></param> /// <returns></returns> public static DateInfo To( string text, DateTimeStyles style = DateTimeStyles.None, IFormatProvider formatProvider = null, DateInfo defaultVal = default) { if (formatProvider is null) { formatProvider = DateTimeFormatInfo.CurrentInfo; } return(DateInfo.TryParse(text, formatProvider, style, out var result) ? result : defaultVal); }
private void btnSave_Click(object sender, EventArgs e) { using (StreamWriter sw = File.AppendText(@"D:\PraksaCovid19\Repository\praksacovid19\" + zemlja.Country + ".csv")) { sw.WriteLine("Date,New cases,New deaths,New recovered"); for (DateTime i = dtpDatumOd.Value; i <= dtpDatumDo.Value; i = i.AddDays(1)) { string datum = i.ToString("dd/MM/yyyy"); DateInfo di = DataProvider.DateForOneDay(zemlja.Country, datum); sw.WriteLine(datum + "," + di.NewCases + "," + di.NewDeaths + "," + di.NewRecovered); } MessageBox.Show("Data saved successfully"); } }
//Игровые стадии в таком порядке: Еда на месяц => Активность в свободное время => Событие => по кругу public MainForm() { KeyPreview = true; game = new Game(); player = new Player(); world = new World(); dateInfo = new DateInfo(); plot = new Plot(player, world, dateInfo); music = new WindowsMediaPlayer(); InitializeComponent(); DrawMainMenu(); SetKeyDownActions(); }
public void TestWeekOfMonth() { DateInfo mydate = new DateInfo(new DateTime(2009, 8, 11)); Assert.IsTrue(mydate.WeekOfMonth == Week.Third); mydate = new DateInfo(new DateTime(2009, 8, 3)); Assert.IsTrue(mydate.WeekOfMonth == Week.Second); mydate = new DateInfo(new DateTime(2009, 8, 18)); Assert.IsTrue(mydate.WeekOfMonth == Week.Fourth); mydate = new DateInfo(new DateTime(2009, 8, 31)); Assert.IsTrue(mydate.WeekOfMonth == Week.Sixth); }
/** * Parse date part and return index to next token (for time) * <ul> * <li>MMMYY - ie MAR07</li> * <li>MMMYYYY - ie MAR2007</li> * </ul> */ private int ParseDateMMMYY(string sdate, ref DateInfo info, List <DateToken> tokens) { info.Month = ToMonthOrDay((string)tokens[0]); switch (tokens[1].Type) { case DateToken.TType.NUMERIC: info.Year = ToYear((int)tokens[1]); return(2); case DateToken.TType.WHITESPACE: case DateToken.TType.DASH: return(ParseDateMMMDDYYYY(sdate, ref info, tokens)); default: throw new ArgumentException("failed to parse date, invalid date format: " + sdate); } }
/// <summary> /// Is /// </summary> /// <param name="text"></param> /// <param name="style"></param> /// <param name="formatProvider"></param> /// <param name="matchedCallback"></param> /// <returns></returns> public static bool Is( string text, DateTimeStyles style = DateTimeStyles.None, IFormatProvider formatProvider = null, Action <DateInfo> matchedCallback = null) { if (string.IsNullOrWhiteSpace(text)) { return(false); } if (formatProvider is null) { formatProvider = DateTimeFormatInfo.CurrentInfo; } return(DateInfo.TryParse(text, formatProvider, style, out var dateInfo) .IfTrueThenInvoke(matchedCallback, dateInfo)); }
public static List <DateInfo> DataInfoForAdmin(string country) { ISession session = SessionManager.GetSession(); List <DateInfo> list = new List <DateInfo>(); var data = session.Execute("select * from DateInfo where \"country\"='" + country + "'"); foreach (var d in data) { DateInfo di = new DateInfo(); di.Country = d["country"] != null ? d["country"].ToString() : string.Empty; di.Date = d["date"] != null ? d["date"].ToString() : string.Empty; di.NewCases = d["newcases"] != null ? d["newcases"].ToString() : string.Empty; di.NewDeaths = d["newdeaths"] != null ? d["newdeaths"].ToString() : string.Empty; di.NewRecovered = d["newrecovered"] != null ? d["newrecovered"].ToString() : string.Empty; list.Add(di); } return(list); }
private void monthCalendar1_PreviewMouseRightButtonUp(object sender, MouseButtonEventArgs e) { FrameworkElement element = (FrameworkElement)e.OriginalSource; if (element.DataContext is DateInfo) { DateInfo dateInfo = (DateInfo)element.DataContext; entriesViewer.CalendarControl.SelectedDate = dateInfo.Date; } else if (element.DataContext is DateTime) { DateTime dateTime = (DateTime)element.DataContext; entriesViewer.CalendarControl.SelectedDate = dateTime; } TrainingDayDTO day = SelectedTrainingDay; if (!isFilled || UserContext.Current.LoginStatus != LoginStatus.Logged || /* IsSelectedDateFuture ||*/ (day == null && ReadOnly /*we browse workout for another users so if there is no entry then we should skip*/)) { e.Handled = true; return; } MnuDeleteDayVisbility = !ReadOnly && day != null ? Visibility.Visible : Visibility.Collapsed; //mnuDeleteDay.SetVisible(!ReadOnly && day != null); MnuOpenTrainingDayVisbility = day != null ? Visibility.Visible : Visibility.Collapsed; //mnuOpenTrainingDay.SetVisible(day != null); MnuNewTrainingDayVisbility = day == null && !ReadOnly ? Visibility.Visible : Visibility.Collapsed; //mnuNewTrainingDay.SetVisible(day == null && !ReadOnly); MnuEditCopyEnabled = CanCopy; //mnuEditCopy.IsEnabled = CanCopy; MnuEditCutEnabled = CanCut; //mnuEditCut.IsEnabled = CanCut; MnuEditPasteEnabled = CanPaste; //mnuEditPaste.IsEnabled = CanPaste; MnuEditCutVisbility = MnuEditPasteVisbility = MnuEditCopyVisbility = !ReadOnly ? Visibility.Visible : Visibility.Collapsed; //mnuEditCopy.SetVisible(!ReadOnly); //mnuEditCut.SetVisible(!ReadOnly); //mnuEditPaste.SetVisible(!ReadOnly); //menuSeparator.SetVisible(!ReadOnly); }
// Implementation private ZDateTime ParseDateTime(string sdate, List <DateToken> tokens, ZTimeZone default_zone) { var len = tokens.Count; if (len < 1) { throw new ArgumentException("failed to parse date, as unknown form: " + sdate); } // special-case, may be a timestamp var first = tokens[0]; if (len == 1 && first.Type == DateToken.TType.NUMERIC) { long stamp = (long)first; // determine whether YYYYMMDD date or whether timestamp if (stamp > 19000000 && stamp < 90000000) { return(new ZDateTime((int)(stamp / 10000), (int)(stamp / 100) % 100, (int)stamp % 100, 0, 0, 0, 0, default_zone)); } else { return(new ZDateTime(stamp, default_zone)); } } // otherwise straight date-time else { DateInfo idate = new DateInfo(); int Itime = ParseDate(sdate, ref idate, tokens); ParseTime(sdate, ref idate, tokens, Itime); if (idate.Zone == null) { idate.Zone = default_zone; } return(CreateDateTime(ref idate)); } }
public static void DeleteData(string c, string date) { ISession session = SessionManager.GetSession(); // RowSet data = session.Execute("DELETE FROM DateInfo WHERE country='"+c+"' and date='"+date+"'"); DateInfo di = DataProvider.DateForOneDay(c, date); CountryInfo dataForCountry = DataProvider.getCountryInfo(c); int confirmed = Convert.ToInt32(dataForCountry.Confirmed) - Convert.ToInt32(di.NewCases); int active = Convert.ToInt32(dataForCountry.Active) - Convert.ToInt32(di.NewCases); int death = Convert.ToInt32(dataForCountry.Deaths) - Convert.ToInt32(di.NewDeaths); int rec = Convert.ToInt32(dataForCountry.Recovered) - Convert.ToInt32(di.NewRecovered); RowSet data = session.Execute("DELETE FROM DateInfo WHERE country='" + c + "' and date='" + date + "'"); RowSet dataUpdate = session.Execute("UPDATE CountryInfo SET Confirmed='" + confirmed + "', Deaths='" + death + "', Recovered='" + rec + "',Active='" + active + "' WHERE country='" + c + "'"); if (data != null && dataUpdate != null) { MessageBox.Show("Successfully"); } }
public void UpdateMaxDate(DateTime date) { using (var db = new LiteDatabase(Config.UtilsDb)) { var coll = db.GetCollection <DateInfo>(Config.UtilsCol); var dateBd = coll.FindOne(Query.All()); if (dateBd == null) { var dateInfo = new DateInfo() { Date = date }; coll.Insert(dateInfo); return; } dateBd.Date = date.Max(dateBd.Date); coll.Update(dateBd); } }
public Label GetDateInfoLabel() { var label = new Label(); var date = new DateInfo(); label.Location = new Point(40, 40); label.Size = new Size(ClientSize.Width / 14, ClientSize.Height / 10); label.BackColor = Color.Beige; label.Text = date.GetDateAndCourse(); label.Font = new Font(label.Font.FontFamily, ClientSize.Width / FontSizeSeparator); label.TextAlign = (ContentAlignment)HorizontalAlignment.Center; SizeChanged += (sender, args) => { label.Size = new Size(ClientSize.Width / 14, ClientSize.Height / 10); label.Font = new Font(label.Font.FontFamily, ClientSize.Width / FontSizeSeparator); label.TextAlign = (ContentAlignment)HorizontalAlignment.Center; }; return(label); }
/** * Parse date part and return index to next token (for time) * <ul> * <li>MMMYY - ie MAR07</li> * <li>MMMYYYY - ie MAR2007</li> * <li>dd-MMM-YY - ie 23-Dec-07</li> * <li>dd-MMM-YYYY - ie 23-Dec-2007</li> * <li>YYYY-MM-dd - ie 2007-11-03</li> * <li>MM/dd/YY - ie 12/01/07</li> * <li>MM/dd/YYYY - ie 12/01/2007</li> * <li>dd/MM/YY - ie 01/12/07 (british)</li> * <li>dd/MM/YYYY - ie 01/12/2007 (british)</li> * </ul> */ private int ParseDate(string sdate, ref DateInfo info, List <DateToken> tokens) { switch (tokens[0].Type) { case DateToken.TType.ALPHA: int mod = ToMonthOrDay((string)tokens[0]); if (mod > 0) { return(ParseDateMMMYY(sdate, ref info, tokens)); } else { return(ParseDateHTTP(sdate, ref info, tokens)); } case DateToken.TType.NUMERIC: return(ParseDateNN(sdate, ref info, tokens)); default: throw new ArgumentException("failed to parse date, invalid date format: " + sdate); } }
public static DateInfo DateForOneDay(string country, string date) { ISession session = SessionManager.GetSession(); DateInfo di = new DateInfo(); var d = session.Execute("select * from DateInfo where \"country\"='" + country + "' and \"date\"='" + date + "'").FirstOrDefault(); if (d != null) { di.Country = d["country"] != null ? d["country"].ToString() : string.Empty; di.Date = d["date"] != null ? d["date"].ToString() : string.Empty; di.NewCases = d["newcases"] != null ? d["newcases"].ToString() : "0"; di.NewDeaths = d["newdeaths"] != null ? d["newdeaths"].ToString() : "0"; di.NewRecovered = d["newrecovered"] != null ? d["newrecovered"].ToString() : "0"; } else { di = null; } return(di); }
/** * Parse date part and return index to next token (for time) * <ul> * <li>DAY, dd MMM YYYY - ie Fri, 25 Jul 2008 10:38:41 GMT</li> * </ul> */ private int ParseDateHTTP(string sdate, ref DateInfo info, List <DateToken> tokens) { int Inow = 0; DateToken T2 = tokens[Inow = SkipSeparator(tokens, Inow + 1)]; DateToken T3 = tokens[Inow = SkipSeparator(tokens, Inow + 1)]; DateToken T4 = tokens[Inow = SkipSeparator(tokens, Inow + 1)]; // dd-MMM-yy case if (T3.Type == DateToken.TType.ALPHA) { info.Month = ToMonthOrDay((string)T3); info.DayOfMonth = Bound(sdate, ToNumeric(sdate, T2), 1, 31); info.Year = ToYear(sdate, T4); return(Inow + 1); } else { info.Month = Bound(sdate, ToNumeric(sdate, T3), 1, 12); info.DayOfMonth = Bound(sdate, ToNumeric(sdate, T2), 1, 31); info.Year = ToYear(sdate, T4); return(Inow + 1); } }
/// <summary> /// Normalizes the specified date to a <see cref="DateInfo"/>. /// </summary> /// <param name="date">The date to be normalized.</param> /// <param name="options">The options to apply before executing the REST API call.</param> /// <returns></returns> public DateInfo NormalizeDate(String date, params IStateTransitionOption[] options) { Link normalizedDateLink = GetLink(Rel.NORMALIZED_DATE); if (normalizedDateLink == null || normalizedDateLink.Template == null) { return(null); } String template = normalizedDateLink.Template; String uri = new UriTemplate(template).AddParameter("date", date).Resolve(); IRestRequest request = CreateRequest().Accept(MediaTypes.TEXT_PLAIN).Build(uri, Method.GET); IRestResponse response = Invoke(request, options); DateInfo dateValue = new DateInfo(); dateValue.Original = date; dateValue.AddNormalizedExtension(new TextValue(response.ToIRestResponse <String>().Data)); if (response.Headers != null) { dateValue.Formal = response.Headers.Where(x => x.Name == "Location").Select(x => x.Value as string).FirstOrDefault(); } return(dateValue); }
/// <summary> /// Create a new instance for <see cref="IslamicDateInfo"/><br /> /// 创建一个 <see cref="IslamicDateInfo"/> 的新实例 /// </summary> /// <param name="date"></param> public IslamicDateInfo(DateInfo date) : this(date, _islamicCalendar) { }
/// <summary> /// Determine whether the specified day is a leap day.<br /> /// 判断指定的日是否为闰日。 /// </summary> /// <param name="d"></param> /// <param name="calendar"></param> /// <returns></returns> public static bool IsLeapDay(this DateInfo d, ChineseLunisolarCalendar calendar) => ChineseDateHelper.IsLeapDay(calendar, d);
/// <summary> /// Determine whether the specified day is a leap day.<br /> /// 判断指定的日是否为闰日。 /// </summary> /// <param name="d"></param> /// <returns></returns> public static bool IsLeapDay(this DateInfo d) => ChineseDateHelper.IsLeapDay(null, d);