private GetWeekOfYear ( System.DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek ) : int | ||
time | System.DateTime | |
rule | CalendarWeekRule | |
firstDayOfWeek | DayOfWeek | |
return | int |
public WorkMonth(int year, int month, GermanSpecialDays specialDays, IEnumerable<ShortCut> shortCuts, float hoursPerDay) { this.year = year; this.month = month; this.hoursPerDay = hoursPerDay; this.Weeks = new ObservableCollection<WorkWeek>(); this.Days = new ObservableCollection<WorkDay>(); this.ShortCutStatistic = new ObservableCollection<KeyValuePair<string, ShortCutStatistic>>(); // TODO which date should i take? this.ReloadShortcutStatistic(shortCuts); var cal = new GregorianCalendar(); WorkWeek lastWeek = null; for (int day = 1; day <= cal.GetDaysInMonth(year, month); day++) { var dt = new DateTime(year, month, day); WorkDay wd = new WorkDay(year, month, day, specialDays); this.Days.Add(wd); var weekOfYear = cal.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Monday); if (lastWeek == null || lastWeek.WeekOfYear != weekOfYear) { lastWeek = new WorkWeek(this, weekOfYear); lastWeek.PropertyChanged += new PropertyChangedEventHandler(this.WeekPropertyChanged); this.Weeks.Add(lastWeek); } lastWeek.AddDay(wd); } }
public static SqlInt32 FN_GER_GetWeekOfYear(SqlDateTime _date) { System.Globalization.GregorianCalendar gc = new System.Globalization.GregorianCalendar(); return(_date.IsNull ? SqlInt32.Null : gc.GetWeekOfYear(_date.Value, System.Globalization.CalendarWeekRule.FirstFullWeek, DayOfWeek.Monday)); }
public static SqlInt32 FN_GER_GetWeekOfYear(SqlDateTime _date) { System.Globalization.GregorianCalendar gc = new System.Globalization.GregorianCalendar(); return _date.IsNull ? SqlInt32.Null : gc.GetWeekOfYear(_date.Value, System.Globalization.CalendarWeekRule.FirstFullWeek, DayOfWeek.Monday); }
/// <summary> /// Numeroes the semaine gregorien. /// </summary> /// <param name="MaDate">The ma date.</param> /// <returns>Valeur entière du numéro de la semaine (calendrier Grégorien).</returns> public int NumeroSemaineGregorien(DateTime MaDate) { System.Globalization.GregorianCalendar calendrier = new System.Globalization.GregorianCalendar(); int currentWeek = calendrier.GetWeekOfYear(new DateTime(MaDate.Year, MaDate.Month, MaDate.Day), System.Globalization.CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); return(currentWeek); }
public void PosTest3() { System.Globalization.Calendar kC = new KoreanCalendar(); System.Globalization.Calendar gC = new GregorianCalendar(); DateTime dateTime = gC.ToDateTime(2008, 2, 29, 0, 0, 0, 0); int expectedValue = gC.GetWeekOfYear(dateTime, new CultureInfo("en-US").DateTimeFormat.CalendarWeekRule, new CultureInfo("en-US").DateTimeFormat.FirstDayOfWeek); int actualValue; actualValue = kC.GetWeekOfYear(kC.ToDateTime(dateTime.Year + 2333, dateTime.Month, dateTime.Day, 0, 0, 0, 0), new CultureInfo("ko-KR").DateTimeFormat.CalendarWeekRule, new CultureInfo("ko-KR").DateTimeFormat.FirstDayOfWeek); Assert.Equal(expectedValue, actualValue); }
private void BindData() { int planID = Request.QueryString["planID"] != null ? Int32.Parse(Request.QueryString["planID"].ToString()) : 0; if (planID == 0) { return; } else { this.past_plan_content.InnerHtml = ""; this.current_plan_content.InnerHtml = ""; ActiveRecord.Model.Plan plan = new ActiveRecord.Model.Plan(); plan = ActiveRecord.Model.Plan.Find(planID); this.current_plan_content.InnerHtml = plan.PlanContent; int pastperiod = int.Parse(plan.PlanPeriod) - 1; int pastyear = int.Parse(plan.PlanYear); if (pastperiod < 0) { pastyear = pastyear - 1; if (plan.PlanPeriodType == "年计划") { pastperiod = 12; } else if (plan.PlanPeriodType == "季计划") { pastperiod = 4; } else if (plan.PlanPeriodType == "月计划") { pastperiod = 12; } else if (plan.PlanPeriodType == "周计划") { DateTime end = new DateTime(pastyear, 12, 31); //该年最后一天 System.Globalization.GregorianCalendar gc = new GregorianCalendar(); pastperiod = gc.GetWeekOfYear(end, CalendarWeekRule.FirstDay, DayOfWeek.Monday); //该年星期数 } } ActiveRecord.Model.Plan conclusion = plan.Find(plan.PlanObjectType, plan.PlanPeriodType, pastyear.ToString(), pastperiod.ToString(), plan.PlanCreator); if (conclusion != null) { this.past_plan_content.InnerHtml = conclusion.PlanConclusion; } } }
public void PosTest4() { System.Globalization.Calendar kC = new KoreanCalendar(); System.Globalization.Calendar gC = new GregorianCalendar(); Int64 ticks = _generator.GetInt64(-55) % DateTime.MaxValue.Ticks + 1; DateTime dateTime = new DateTime(ticks); dateTime = gC.ToDateTime(dateTime.Year, dateTime.Month, dateTime.Day, 0, 0, 0, 0); int expectedValue = gC.GetWeekOfYear(dateTime, new CultureInfo("en-US").DateTimeFormat.CalendarWeekRule, new CultureInfo("en-US").DateTimeFormat.FirstDayOfWeek); int actualValue; actualValue = kC.GetWeekOfYear(kC.ToDateTime(dateTime.Year + 2333, dateTime.Month, dateTime.Day, 0, 0, 0, 0), new CultureInfo("ko-KR").DateTimeFormat.CalendarWeekRule, new CultureInfo("ko-KR").DateTimeFormat.FirstDayOfWeek); Assert.Equal(expectedValue, actualValue); }
/// <summary> /// 获取指定日期,在为一年中为第几周 /// </summary> /// <param name="dt">指定时间</param> /// <reutrn>返回第几周</reutrn> public static int GetWeekOfYear(DateTime dt) { GregorianCalendar gc = new GregorianCalendar(); int weekOfYear = gc.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Monday); var weekNum = weekOfYear + dt.Year * 100; var dayOfWeek = DateTime.Now.DayOfWeek; if (dayOfWeek == DayOfWeek.Sunday) { weekNum += 1; } return weekNum; }
private bool TimeFilter(object obj) { Cases item = obj as Cases; if (item == null) { return(false); } if (TimeAll.IsChecked == true) { return(true); } if (Time1Day.IsChecked == true) { return(DaysSince(item.StartTime) < 1); } if (Time7Day.IsChecked == true) { return(DaysSince(item.StartTime) < 7); } if (Time30Day.IsChecked == true) { return(DaysSince(item.StartTime) < 30); } if (TimeThisDay.IsChecked == true) { return(item.StartTime.Year == DateTime.Now.Year && item.StartTime.Month == DateTime.Now.Month && item.StartTime.Day == DateTime.Now.Day); } if (TimeThisWeek.IsChecked == true) { System.Globalization.Calendar cal = new System.Globalization.GregorianCalendar(); return(cal.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstDay, DayOfWeek.Monday) == cal.GetWeekOfYear(item.StartTime, CalendarWeekRule.FirstDay, DayOfWeek.Monday)); } if (TimeThisMonth.IsChecked == true) { return(item.StartTime.Year == DateTime.Now.Year && item.StartTime.Month == DateTime.Now.Month); } return(false); }
/// <summary> /// 计算第几周 /// </summary> /// <param name="dt"></param> /// <returns></returns> public static int Week(DateTime dt) { System.Globalization.GregorianCalendar gc = new System.Globalization.GregorianCalendar(); //System.Globalization.ChineseLunisolarCalendar cg = new System.Globalization.ChineseLunisolarCalendar(); return(gc.GetWeekOfYear(dt, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Monday)); //int weekOfYear = 0; //if (DateTime.Now.DayOfYear % 7 > 0) //{ // weekOfYear = (DateTime.Now.DayOfYear - (DateTime.Now.DayOfYear % 7)) / 7 + 1; //} //else //{ // weekOfYear = DateTime.Now.DayOfYear / 7; //} //return weekOfYear; }
private void addDriverButton_Click(object sender, EventArgs e) { MySQL MySQLHandle = new MySQL(GlobalVar.sqlhost, GlobalVar.sqlport, GlobalVar.sqldatabase, GlobalVar.sqlusername, ""); MySqlConnection sqlReader = MySQLHandle.Connect(); string stringdrivername = driverName.Text; DateTimePicker picker = (DateTimePicker)this.Parent.Parent.Parent.Parent.Controls["logDate"]; GregorianCalendar gc = new GregorianCalendar(); int weekno = gc.GetWeekOfYear(picker.Value, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday); string stringdate = "" + picker.Value.Year + weekno; string insertstring="INSERT INTO `th_ryan_invoices` (`id`, `billed_hours`, `billed_miles`, `cost`, `review`, `driver`,`date`) VALUES (NULL, '', '', '', '', '"+stringdrivername+"','"+stringdate+"');"; FlowLayoutPanel tabcontrol = (FlowLayoutPanel)this.Parent.Parent.Controls[0]; WeeklyLog newDriver = new WeeklyLog(stringdrivername,picker.Value); tabcontrol.Controls.Add(newDriver); FlowLayoutPanel newlayout = new FlowLayoutPanel(); tabcontrol.Controls.SetChildIndex(newDriver, tabcontrol.Controls.Count - 2); tabcontrol = newlayout; MySQLHandle.Insert(insertstring, sqlReader); MySQLHandle.Disconnect(); driverName.Text = ""; }
public static int GetWeek(this DateTime d) { var gc = new System.Globalization.GregorianCalendar(); var first_day = new DateTime(d.Year, 1, 1); System.Globalization.CalendarWeekRule rule; switch (first_day.DayOfWeek) { case DayOfWeek.Monday: { rule = CalendarWeekRule.FirstDay; break; } default: { rule = CalendarWeekRule.FirstFullWeek; break; } } return(gc.GetWeekOfYear(d, rule, DayOfWeek.Monday)); }
public int GetWeekOfYear() { System.Globalization.GregorianCalendar gc = new System.Globalization.GregorianCalendar(); return(gc.GetWeekOfYear(DateTime.Now, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Monday)); }
private int GetWeekOfYear(DateTime date) { GregorianCalendar gCal = new GregorianCalendar(); return gCal.GetWeekOfYear(date, TriggerCalendarWeekRule, TriggerCalendarFirstDayOfWeek); }
private bool TimeFilter(object obj) { Cases item = obj as Cases; if (item == null) return false; if (TimeAll.IsChecked == true) return true; if (Time1Day.IsChecked == true) return (DaysSince(item.StartTime) < 1); if (Time7Day.IsChecked == true) return (DaysSince(item.StartTime) < 7); if (Time30Day.IsChecked == true) return (DaysSince(item.StartTime) < 30); if (TimeThisDay.IsChecked == true) return item.StartTime.Year == DateTime.Now.Year && item.StartTime.Month == DateTime.Now.Month && item.StartTime.Day == DateTime.Now.Day; if (TimeThisWeek.IsChecked == true) { System.Globalization.Calendar cal = new System.Globalization.GregorianCalendar(); return cal.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstDay, DayOfWeek.Monday) == cal.GetWeekOfYear(item.StartTime, CalendarWeekRule.FirstDay, DayOfWeek.Monday); } if (TimeThisMonth.IsChecked == true) return item.StartTime.Year == DateTime.Now.Year && item.StartTime.Month == DateTime.Now.Month; return false; }
public int GetWeekNumberInYear(DateTime dateToCheck) { System.Globalization.Calendar cal = new GregorianCalendar(); int weekNumber = cal.GetWeekOfYear(dateToCheck, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Saturday); return weekNumber; }
private void populateTYRyan() { THRyanFlowPanel.Controls.Clear(); GregorianCalendar gc = new GregorianCalendar(); int weekno = gc.GetWeekOfYear(logDate.Value, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday); MySQL MySQLHandle = new MySQL(GlobalVar.sqlhost, GlobalVar.sqlport, GlobalVar.sqldatabase, GlobalVar.sqlusername, ""); MySqlConnection sqlReader = MySQLHandle.Connect(); string stringdate = logDate.Value.Year.ToString() + weekno.ToString(); MySqlDataReader dataReader = MySQLHandle.Select("SELECT * FROM `th_ryan_invoices` WHERE date = " + stringdate + ";", sqlReader); Console.WriteLine(weekno.ToString()); for (int rowCounter = 0; dataReader.Read(); rowCounter++) { string id = dataReader.GetString(0); string billedHours = dataReader.GetString(1); string billedMiles = dataReader.GetString(2); string cost = dataReader.GetString(3); string review = dataReader.GetString(4); string driver = dataReader.GetString(5); //MySQLHandle.Insert("INSERT INTO `rrs`.`th_ryan_invoies` (`id`, `billed_hours`, `billed_miles`, `cost`, `review`, `driver`) VALUES (NULL, '', '', '', '', '');", sqlReader); addDriverToTHRyan(driver,logDate.Value); } dataReader.Close(); addTHRyanDriver1 = new addTHRyanDriver(); THRyanFlowPanel.Controls.Add(addTHRyanDriver1); }
/// <summary> /// 获取某一日期是该年中的第几周 /// </summary> /// <param name="dt">日期</param> /// <returns>该日期在该年中的周数</returns> public static int GetWeekOfYear(DateTime dt) { var gc = new GregorianCalendar(); return gc.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Monday); }
private void OnCreateXPS(object sender, RoutedEventArgs e) { var c = new GregorianCalendar(); int weekNumber = c.GetWeekOfYear(_menus[0].Day, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); var dlg = new SaveFileDialog { FileName = $"menuplan{weekNumber}", DefaultExt = "xps", Filter = "XPS Documents|*.xps|All Files|*.*", AddExtension = true }; if (dlg.ShowDialog() == true) { var doc = new XpsDocument(dlg.FileName, FileAccess.Write, CompressionOption.Fast); XpsDocumentWriter writer = XpsDocument.CreateXpsDocumentWriter(doc); writer.WritingCompleted += delegate { doc.Close(); }; writer.WriteAsync(_fixedDocument); } }
private int GetWeek(DateTime date, System.DayOfWeek firstDayOfWeek, bool iso) { GregorianCalendar cal = new GregorianCalendar(); CalendarWeekRule weekRule = CalendarWeekRule.FirstFullWeek; if (iso) { firstDayOfWeek = System.DayOfWeek.Monday; weekRule = CalendarWeekRule.FirstFourDayWeek; } return cal.GetWeekOfYear(date, weekRule, firstDayOfWeek); }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { var d = value as DateInfo; if (d == null) return ""; GregorianCalendar gc = new GregorianCalendar(); ChineseAlmanac ca = new ChineseAlmanac(); var jieqi = d.OB.Ljq; var sanfu = ca.GetSanFuInfo(d.DateTime); var shujiu = ca.GetShuJiuInfo(d.DateTime); string holiday = ""; string chineseHoliday = ""; if (HolidayHelper.Instance.HolidayInfo?.ChineseHolidays != null) holiday = ca.GetChineseHoliday(d.DateTime, HolidayHelper.Instance.HolidayInfo.ChineseHolidays); if (HolidayHelper.Instance.HolidayInfo?.Holidays != null) chineseHoliday = ca.GetHoliday(d.DateTime, HolidayHelper.Instance.HolidayInfo.Holidays); var result = $"第{d.DateTime.DayOfYear}天 第{gc.GetWeekOfYear(d.DateTime, CalendarWeekRule.FirstDay, DayOfWeek.Monday)}周"; var info = ""; if (jieqi != "") info += jieqi; if (sanfu != "") info += info == "" ? sanfu : " " + sanfu; if (shujiu != "") info += info == "" ? shujiu : " " + shujiu; if (holiday != "") info += info == "" ? holiday : " " + holiday; if (chineseHoliday != "") info += info == "" ? chineseHoliday : " " + chineseHoliday; result += $"{(info == "" ? "" : $" ({info})")}";
public static int GetCurrentWeekNumber(DateTime date, DayOfWeek dayOfWeek, CalendarWeekRule weekRule) { System.Globalization.GregorianCalendar calendar = new GregorianCalendar(GregorianCalendarTypes.Localized); return calendar.GetWeekOfYear(date, weekRule, dayOfWeek); }
public static void CompareEpisodesWithDates(List<WeeklyData> AllWeeks, IList<Episode> episodes) { GregorianCalendar cal = new GregorianCalendar(); foreach(WeeklyData week in AllWeeks) { foreach(Episode episode in episodes) { int episodeWeekNumber = cal.GetWeekOfYear(episode.AirDate, CalendarWeekRule.FirstDay, DayOfWeek.Monday); if (week.Year == episode.AirDate.Year && week.WeekNumber == episodeWeekNumber) { week.hasProgramming = true; } } } }
public static List<WeeklyData> getAllWeeksInRange(DateTime startdate, DateTime enddate) { List<WeeklyData> ret = new List<WeeklyData>(); GregorianCalendar cal = new GregorianCalendar(); for (DateTime datecounter = startdate; datecounter <= enddate; datecounter = datecounter.AddDays(7)) { WeeklyData programweek = new WeeklyData(); programweek.StartDate = datecounter; programweek.EndDate = datecounter.AddDays(7); programweek.Year = datecounter.Year; programweek.WeekNumber = cal.GetWeekOfYear(datecounter, CalendarWeekRule.FirstDay, DayOfWeek.Monday); programweek.Quarter = getQuarter(datecounter.Month); ret.Add(programweek); } return ret; }
protected void ddlWeek_SelectedIndexChanged(object sender, EventArgs e) { GregorianCalendar gc = new GregorianCalendar(); int currentYear = DateTime.Now.Year; int weekOfYear = int.Parse(ddlWeek.SelectedValue); int nextWeek = weekOfYear + 1; int pastWeek = weekOfYear - 1;// gc.GetWeekOfYear(DateTime.Now.AddDays(-7), CalendarWeekRule.FirstDay, DayOfWeek.Monday); int pastYear = DateTime.Now.AddDays(-7).Year; if (pastWeek < 1) { pastYear = currentYear - 1; pastWeek = gc.GetWeekOfYear(new DateTime(pastYear, 12, 31), CalendarWeekRule.FirstDay, DayOfWeek.Monday); } else { pastYear = currentYear; } DateTime weekStartDate = DateTime.Now; DateTime weekEndDate = DateTime.Now; GetWeek(currentYear, weekOfYear, out weekStartDate, out weekEndDate); this.lblTime.Text = "周["+weekStartDate.ToShortDateString()+" - " + weekEndDate.ToShortDateString()+"]"; txtBeginDate.Text = weekStartDate.ToShortDateString(); txtEndDate.Text = weekEndDate.ToShortDateString(); GetWeek(pastYear, pastWeek, out weekStartDate, out weekEndDate); txtPastBeginDate.Text = weekStartDate.ToShortDateString(); txtPastEndDate.Text = weekEndDate.ToShortDateString(); this.lblPastPlanYear.Text = pastYear.ToString(); lblPastPlanPeriod.Text = pastWeek.ToString(); this.lblPastPlanPeroidType.Text = "周"; this.lblCurrentPlanYear.Text = currentYear.ToString(); this.lblCurrentPlanPeroid.Text = weekOfYear.ToString(); this.lblCurrentPlanPeroidType.Text = "周"; this.lblConclusion.Text = pastYear.ToString() + "年" + pastWeek.ToString() + "周总结"; ActiveRecord.Model.Plan plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblCurrentPlanYear.Text, lblCurrentPlanPeroid.Text, Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//本月计划 { this.FCKeditor3.Value = plan.PlanContent; } else { this.FCKeditor3.Value = ""; } //上月总结 plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblPastPlanYear.Text, int.Parse(lblPastPlanPeriod.Text).ToString(), Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//上月总结 { this.FCKeditor2.Value = plan.PlanConclusion; this.past_plan_content.InnerHtml = plan.PlanContent;//上月计划 } else { this.FCKeditor2.Value = ""; this.past_plan_content.InnerHtml = ""; } }
/// <summary> /// 返回年度第几个星期 /// </summary> /// <param name="date">时间</param> /// <param name="week">一周的开始日期</param> /// <returns></returns> public static int WeekOfYear(DateTime date, DayOfWeek week) { System.Globalization.GregorianCalendar gc = new System.Globalization.GregorianCalendar(); return(gc.GetWeekOfYear(date, System.Globalization.CalendarWeekRule.FirstDay, week)); }
private static int GCWeekOfYear(DateTime date, CalendarWeekRule rule, DayOfWeek firstDayOfWeek = (DayOfWeek)(-1)) { if (firstDayOfWeek == (DayOfWeek)(-1)) { firstDayOfWeek = CultureInfo.CurrentCulture.DateTimeFormat.FirstDayOfWeek; } GregorianCalendar gc = new GregorianCalendar(GregorianCalendarTypes.Localized); return gc.GetWeekOfYear(date, rule, firstDayOfWeek); }
public void NegTest4() { System.Globalization.Calendar myCalendar = new GregorianCalendar(GregorianCalendarTypes.USEnglish); DateTime time = DateTime.Now; CalendarWeekRule rule = (CalendarWeekRule)(-1 * _generator.GetInt32(-55) - 1); DayOfWeek firstDayOfWeek = (DayOfWeek)(_generator.GetInt32(-55) % 7); Assert.Throws<ArgumentOutOfRangeException>(() => { myCalendar.GetWeekOfYear(time, rule, firstDayOfWeek); }); }
/// <summary> /// 获取某一年有多少周 /// </summary> /// <param name="year">年份</param> /// <returns>该年周数</returns> public static int GetWeekAmount(int year) { var end = new DateTime(year, 12, 31); //该年最后一天 var gc = new GregorianCalendar(); return gc.GetWeekOfYear(end, CalendarWeekRule.FirstDay, DayOfWeek.Monday); //该年星期数 }
protected void ddlPlanPeriodType_SelectedIndexChanged(object sender, EventArgs e) { string planPeroidType = ddlPlanPeriodType.SelectedValue; string planObjectType = ddlPlanObjectType.SelectedValue; DateTime beginDate = DateTime.Now; DateTime endDate = DateTime.Now; DateTime pastDate = DateTime.Now; ActiveRecord.Model.Plan plan = null; int currentYear = DateTime.Now.Year;//当前年份 int pastYear = currentYear - 1;//上一年份 int nextYear = currentYear + 1;//下一年份 switch (planPeroidType) { case "周计划": DisableDropdownList(); this.ddlWeek.Visible = true; GregorianCalendar gc = new GregorianCalendar(); int weekOfYear=gc.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstDay, DayOfWeek.Monday); int nextWeek = gc.GetWeekOfYear(DateTime.Now.AddDays(7), CalendarWeekRule.FirstDay, DayOfWeek.Monday); //weekOfYear + 1; int pastWeek = gc.GetWeekOfYear(DateTime.Now.AddDays(-7), CalendarWeekRule.FirstDay, DayOfWeek.Monday); pastYear = DateTime.Now.AddDays(-7).Year; this.ddlWeek.Items.Clear(); this.ddlWeek.Items.Add(new ListItem(weekOfYear.ToString(), weekOfYear.ToString())); if (weekOfYear<nextWeek) { this.ddlWeek.Items.Add(new ListItem(nextWeek.ToString(), nextWeek.ToString())); } DateTime weekStartDate = DateTime.Now; DateTime weekEndDate = DateTime.Now; GetWeek(DateTime.Now.Year, weekOfYear, out weekStartDate, out weekEndDate); this.lblTime.Text = "周[" + weekStartDate.ToShortDateString() + " - " + weekEndDate.ToShortDateString() + "]"; txtBeginDate.Text = weekStartDate.ToShortDateString(); txtEndDate.Text = weekEndDate.ToShortDateString(); #region 上周起始日期 GetWeek(pastYear, pastWeek, out weekStartDate, out weekEndDate); txtPastBeginDate.Text = weekStartDate.ToShortDateString(); txtPastEndDate.Text = weekEndDate.ToShortDateString(); #endregion // this.lblTime.Text = "周"; this.lblPastPlanYear.Text = pastYear.ToString(); lblPastPlanPeriod.Text = pastWeek.ToString(); this.lblPastPlanPeroidType.Text = "周"; this.lblCurrentPlanYear.Text = currentYear.ToString(); this.lblCurrentPlanPeroid.Text = weekOfYear.ToString(); this.lblCurrentPlanPeroidType.Text = "周"; this.lblConclusion.Text = pastYear.ToString() + "年" + pastWeek.ToString() + "周总结"; plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblCurrentPlanYear.Text, lblCurrentPlanPeroid.Text, Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//本月计划 { this.FCKeditor3.Value = plan.PlanContent; } else { this.FCKeditor3.Value = ""; } //上月总结 plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblPastPlanYear.Text, int.Parse(lblPastPlanPeriod.Text).ToString(), Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//上月总结 { this.FCKeditor2.Value = plan.PlanConclusion; this.past_plan_content.InnerHtml = plan.PlanContent;//上月计划 } else { this.FCKeditor2.Value = ""; this.past_plan_content.InnerHtml = ""; } break; case "月计划": DisableDropdownList(); this.ddlMonth.Visible = true; beginDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); endDate = new DateTime(beginDate.AddMonths(1).Year, beginDate.AddMonths(1).Month, 1); pastDate = new DateTime(beginDate.AddDays(-1).Year, beginDate.AddDays(-1).Month, 1); txtBeginDate.Text = beginDate.ToShortDateString(); txtEndDate.Text = endDate.AddDays(-1).ToShortDateString(); txtPastBeginDate.Text = pastDate.ToShortDateString(); txtPastEndDate.Text = pastDate.AddMonths(1).AddDays(-1).ToShortDateString(); this.lblTime.Text = "月" + "[" + beginDate.ToShortDateString() + " - " + endDate.AddDays(-1).ToShortDateString() + "]"; this.ddlMonth.Items.Clear(); this.ddlMonth.Items.Add(new ListItem(DateTime.Now.Month.ToString(), DateTime.Now.Month.ToString())); if (DateTime.Now.Month.ToString() != "12") { this.ddlMonth.Items.Add(new ListItem(DateTime.Now.AddMonths(1).Month.ToString(), DateTime.Now.AddMonths(1).Month.ToString())); } this.lblPastPlanYear.Text = pastDate.Year.ToString(); lblPastPlanPeriod.Text = pastDate.Month.ToString(); this.lblPastPlanPeroidType.Text = "月"; this.lblCurrentPlanYear.Text = beginDate.Year.ToString(); this.lblCurrentPlanPeroid.Text = beginDate.Month.ToString(); this.lblCurrentPlanPeroidType.Text = "月"; this.lblConclusion.Text = pastDate.Year.ToString() + "年" + pastDate.Month.ToString() + "月总结"; plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblCurrentPlanYear.Text, lblCurrentPlanPeroid.Text, Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//本月计划 { this.FCKeditor3.Value = plan.PlanContent; } else { this.FCKeditor3.Value = ""; } //上月总结 plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblPastPlanYear.Text, int.Parse(lblPastPlanPeriod.Text).ToString(), Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//上月总结 { this.FCKeditor2.Value = plan.PlanConclusion; this.past_plan_content.InnerHtml = plan.PlanContent;//上月计划 } else { this.FCKeditor2.Value = ""; this.past_plan_content.InnerHtml = ""; } break; case "季计划": DisableDropdownList(); this.ddlSeason.Visible = true; //当前季度 int currentSeason = GetSeason(currentYear, DateTime.Now); int nextSeason = currentSeason + 1; //季度日期区间 this.lblTime.Text = "季" + GetSeasonPeriod(currentSeason) ; //上季度 pastYear = DateTime.Now.AddMonths(-3).Year; int pastSeason = GetSeason(currentYear, DateTime.Now.AddMonths(-3)); //下季度 this.ddlSeason.Items.Clear(); this.ddlSeason.Items.Add(new ListItem (currentSeason.ToString(), currentSeason.ToString())); if (nextSeason < 5) { this.ddlSeason.Items.Add(new ListItem (nextSeason.ToString(), nextSeason.ToString())); } this.lblPastPlanYear.Text = pastYear.ToString(); lblPastPlanPeriod.Text = pastSeason.ToString(); //this.lblPastPlanPeriod.Visible = false; this.lblPastPlanPeroidType.Text = "季度"; this.lblCurrentPlanYear.Text = currentYear.ToString(); this.lblCurrentPlanPeroid.Text = currentSeason.ToString(); //this.lblCurrentPlanPeroid.Visible = false; this.lblCurrentPlanPeroidType.Text = "季度"; this.lblConclusion.Text = pastYear.ToString() + "年" + pastSeason.ToString() + "季度总结"; plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblCurrentPlanYear.Text, lblCurrentPlanPeroid.Text, Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//本月计划 { this.FCKeditor3.Value = plan.PlanContent; } else { this.FCKeditor3.Value = ""; } //上月总结 plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblPastPlanYear.Text, int.Parse(lblPastPlanPeriod.Text).ToString(), Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//上月总结 { this.FCKeditor2.Value = plan.PlanConclusion; this.past_plan_content.InnerHtml = plan.PlanContent;//上月计划 } else { this.FCKeditor2.Value = ""; this.past_plan_content.InnerHtml = ""; } break; case "年计划": DisableDropdownList(); this.ddlYear.Visible = true; this.txtYear.Visible = false; this.lblYear.Visible = false; beginDate = new DateTime(DateTime.Now.Year, 1, 1); endDate = new DateTime(beginDate.AddYears(1).Year, 1, 1); pastDate = new DateTime(beginDate.AddYears(-1).Year, 1, 1); txtBeginDate.Text = beginDate.ToShortDateString(); txtEndDate.Text = endDate.AddDays(-1).ToShortDateString(); txtPastBeginDate.Text = pastDate.ToShortDateString(); txtPastEndDate.Text = beginDate.AddDays(-1).ToShortDateString(); this.lblTime.Text = "年" + "[" + beginDate.ToShortDateString() + " - " + endDate.AddDays(-1).ToShortDateString() + "]"; this.ddlYear.Items.Clear(); this.ddlYear.Items.Add(new ListItem(DateTime.Now.Year.ToString(), DateTime.Now.Year.ToString())); this.ddlYear.Items.Add(new ListItem(DateTime.Now.AddYears(1).Year.ToString(), DateTime.Now.AddYears(1).Year.ToString())); this.lblPastPlanYear.Text = pastDate.Year.ToString(); lblPastPlanPeriod.Text = "12"; this.lblPastPlanPeriod.Visible = false; this.lblPastPlanPeroidType.Text = "全年"; this.lblCurrentPlanYear.Text = beginDate.Year.ToString(); this.lblCurrentPlanPeroid.Text = "12"; this.lblCurrentPlanPeroid.Visible = false; this.lblCurrentPlanPeroidType.Text = "全年"; this.lblConclusion.Text = pastDate.Year.ToString() + "年全年总结"; plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblCurrentPlanYear.Text, lblCurrentPlanPeroid.Text, Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//本月计划 { this.FCKeditor3.Value = plan.PlanContent; } else { this.FCKeditor3.Value = ""; } //上月总结 plan = new ActiveRecord.Model.Plan().Find(ddlPlanObjectType.SelectedValue, ddlPlanPeriodType.SelectedValue, lblPastPlanYear.Text, int.Parse(lblPastPlanPeriod.Text).ToString(), Server.UrlDecode(Request.Cookies["UserName"].Value)); if (plan != null)//上月总结 { this.FCKeditor2.Value = plan.PlanConclusion; this.past_plan_content.InnerHtml = plan.PlanContent;//上月计划 } else { this.FCKeditor2.Value = ""; this.past_plan_content.InnerHtml = ""; } break; default: break; } //plan.Find(planObjectType, planPeroidType); /// ActiveRecord.Model.Plan plan = ActiveRecord.Model.Plan.Find(planObjectType, planPeroidType); }
public int getWeekNo(DateTime dt, int weekStartOn) { GregorianCalendar cal = new GregorianCalendar(); int weekOfYear; if (weekStartOn == 1) { weekOfYear = cal.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Sunday); } else { weekOfYear = cal.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Monday); } return weekOfYear; }
public static Woche GetWeek() { GregorianCalendar cal = new GregorianCalendar(GregorianCalendarTypes.Localized); int c = cal.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); if (c % 2 == 0) { return Woche.B0Woche; } else { return Woche.A0Woche; } }
public void GetWeekOfYear () { GregorianCalendar gc = new GregorianCalendar (); Assert.AreEqual (1, gc.GetWeekOfYear (new DateTime (2007, 1, 1), CalendarWeekRule.FirstDay, DayOfWeek.Sunday), "#1"); //Assert.AreEqual (1, gc.GetWeekOfYear (new DateTime (2000, 1, 1), CalendarWeekRule.FirstDay, DayOfWeek.Sunday), "#2"); Assert.AreEqual (3, gc.GetWeekOfYear (new DateTime (2000, 1, 10), CalendarWeekRule.FirstDay, DayOfWeek.Sunday), "#2"); Assert.AreEqual (2, gc.GetWeekOfYear (new DateTime (2000, 1, 10), CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday), "#3"); Assert.AreEqual (2, gc.GetWeekOfYear (new DateTime (2000, 1, 10), CalendarWeekRule.FirstFullWeek, DayOfWeek.Sunday), "#4"); Assert.AreEqual (52, gc.GetWeekOfYear (new DateTime (2000, 1, 1), CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday), "#5"); Assert.AreEqual (52, gc.GetWeekOfYear (new DateTime (2000, 1, 1), CalendarWeekRule.FirstFullWeek, DayOfWeek.Sunday), "#6"); }
// I can't remember where this code came from, very sorry! public static string Strftime(string format, System.DateTime dt) { bool printFormat = false; var result = new StringBuilder(); foreach (char c in format) { if (!printFormat && c == '%') { printFormat = true; continue; } if (printFormat) { switch (c) { case 'a': result.Append(dt.ToString("ddd", CultureInfo.InvariantCulture)); break; case 'A': result.Append(dt.ToString("dddd", CultureInfo.InvariantCulture)); break; case 'b': result.Append(dt.ToString("MMM", CultureInfo.InvariantCulture)); break; case 'B': result.Append(dt.ToString("MMMM", CultureInfo.InvariantCulture)); break; case 'c': result.Append(dt.ToString(CultureInfo.InvariantCulture)); break; case 'd': result.Append(dt.ToString("dd", CultureInfo.InvariantCulture)); break; case 'H': result.Append(dt.ToString("HH", CultureInfo.InvariantCulture)); break; case 'I': result.Append(dt.ToString("hh", CultureInfo.InvariantCulture)); break; case 'j': string day = dt.DayOfYear.ToString(CultureInfo.InvariantCulture); if (day.Length < 3) { if (day.Length == 1) { day = "00" + day; } else { day = "0" + day; } } result.Append(day); break; case 'm': result.Append(dt.ToString("MM", CultureInfo.InvariantCulture)); break; case 'M': result.Append(dt.ToString("mm", CultureInfo.InvariantCulture)); break; case 'p': result.Append(dt.ToString("tt", CultureInfo.InvariantCulture)); break; case 'S': result.Append(dt.ToString("ss", CultureInfo.InvariantCulture)); break; case 'U': { System.Globalization.GregorianCalendar cal = new System.Globalization.GregorianCalendar(); int weekOfYear = cal.GetWeekOfYear(dt, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Sunday); if (dt.DayOfWeek != DayOfWeek.Sunday) { weekOfYear--; } result.Append(weekOfYear.ToString("00", CultureInfo.InvariantCulture)); } break; case 'W': { System.Globalization.GregorianCalendar cal = new System.Globalization.GregorianCalendar(); int weekOfYear = cal.GetWeekOfYear(dt, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Monday); if (dt.DayOfWeek != DayOfWeek.Sunday) { weekOfYear--; } result.Append(weekOfYear.ToString("00", CultureInfo.InvariantCulture)); } break; case 'w': result.Append(((int)dt.DayOfWeek).ToString(CultureInfo.InvariantCulture)); break; case 'x': result.Append(dt.ToString("d", CultureInfo.InvariantCulture)); break; case 'X': result.Append(dt.ToString("t", CultureInfo.InvariantCulture)); break; case 'y': result.Append(dt.ToString("yy", CultureInfo.InvariantCulture)); break; case 'Y': result.Append(dt.ToString("yyyy", CultureInfo.InvariantCulture)); break; case 'Z': { TimeZone localZone = TimeZone.CurrentTimeZone; result.Append(localZone.DaylightName); } break; case '%': result.Append('%'); break; default: //invalid format - do nothing //C specification leaves this behaviour undefined break; } printFormat = false; } else { result.Append(c); } } return(result.ToString()); }
// This sets up the days for the given week public void SetupWeek(DateTime week) { GregorianCalendar calendar = new GregorianCalendar(); weekstart = new DateTime(week.Year, week.Month, week.Day); weekstart = weekstart.AddDays(-Tools.DayOfWeekInt(week.DayOfWeek)); weekend = new DateTime(weekstart.Year, weekstart.Month, weekstart.Day); weekend = weekend.AddDays(7); weekend = weekend.AddTicks(-1); // Setup interface yearlabel.Text = weekstart.Year.ToString(); monthlabel.Text = weekstart.ToString("MMMM"); weeklabel.Text = calendar.GetWeekOfYear(weekstart, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday).ToString(); // Fetch the agenda items for this week List<AgendaItem> items = General.Agenda.GetItems(weekstart, weekend); // Go for all days in the week for(int wd = 0; wd < 7; wd++) { // Determine begin and end date for this day DateTime dstart = new DateTime(weekstart.Year, weekstart.Month, weekstart.Day); dstart = dstart.AddDays(wd); DateTime dend = new DateTime(dstart.Year, dstart.Month, dstart.Day); dend = dend.AddDays(1); dend = dend.AddTicks(-1); // Find the items for this day List<AgendaItem> dayitems = new List<AgendaItem>(); AgendaItemSorter sorter = new AgendaItemSorter(); foreach(AgendaItem i in items) if(((i.startdate + i.duration) >= dstart) && (i.startdate <= dend)) dayitems.Add(i); dayitems.Sort(sorter); // Setup control daydisplays[wd].SetupDate(dstart); daydisplays[wd].SetupItems(dayitems, dstart); daydisplays[wd].Visible = false; } showtimer.Start(); }
public WeeklyLog(string driverName,DateTime date) { InitializeComponent(); MySQL MySQLHandle = new MySQL(GlobalVar.sqlhost, GlobalVar.sqlport, GlobalVar.sqldatabase, GlobalVar.sqlusername, ""); MySqlConnection sqlReader = MySQLHandle.Connect(); GregorianCalendar gc = new GregorianCalendar(); int weekno = gc.GetWeekOfYear(date, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday); string stringdate = "" + date.Year + weekno; //MySQLHandle.Insert("INSERT INTO `rrs`.`th_ryan_invoies` (`id`, `billed_hours`, `billed_miles`, `cost`, `review`, `driver`) VALUES (NULL, 0, 0, 0, '', '');", sqlReader); globalDriverName=driverName; driverNameTHRyan.Text = driverName; string command="SELECT * FROM `th_ryan_invoices` WHERE `driver` LIKE '" + driverName + "' AND `date` LIKE '" + stringdate + "';"; MySqlDataReader dataReader = MySQLHandle.Select(command, sqlReader); dataReader.Read(); if (dataReader.HasRows == true) { string id = dataReader.GetString(0); int billedHours = dataReader.GetInt32(1); int billedMiles = dataReader.GetInt32(2); int cost = dataReader.GetInt32(3); string review = dataReader.GetString(4); string driver = dataReader.GetString(5); billedhoursTextbox.Text = billedHours.ToString(); billedmilesTextbox.Text = billedMiles.ToString(); costTextBox.Text = cost.ToString(); if (review != "") { weeklyReviewTextBox.Text = review; reviewCheckbox.Checked = true; } else { reviewCheckbox.Checked = false; } int diff = date.DayOfWeek - DayOfWeek.Sunday; if (diff < 0) { diff += 7; } date = date.AddDays(-1 * diff); string date1=date.ToString("yyyy-MM-dd"); date=date.AddDays(1); string date2 = date.ToString("yyyy-MM-dd"); date = date.AddDays(1); string date3 = date.ToString("yyyy-MM-dd"); date = date.AddDays(1); string date4 = date.ToString("yyyy-MM-dd"); date = date.AddDays(1); string date5 = date.ToString("yyyy-MM-dd"); date = date.AddDays(1); string date6 = date.ToString("yyyy-MM-dd"); date = date.AddDays(1); string date7 = date.ToString("yyyy-MM-dd"); date = date.AddDays(1); command = "SELECT * FROM `driver_log` WHERE `driver` LIKE '" + driverName + "' AND (`date` LIKE '" + date1 + "' OR `date` LIKE '" + date2 + "' OR `date` LIKE '" + date3 + "' OR `date` LIKE '" + date4+ "' OR `date` LIKE '" + date5+ "' OR `date` LIKE '" + date6+ "' OR `date` LIKE '" + date7 + "');"; dataReader.Close(); dataReader = MySQLHandle.Select(command, sqlReader); int hours=0; int miles=0; for (int i = 0; dataReader.Read(); i++) { hours+=dataReader.GetInt32(3); miles+=dataReader.GetInt32(4); } dataReader.Close(); loggedhoursTextBox.Text = hours.ToString(); loggedmilesTextBox.Text = miles.ToString(); } dataReader.Close(); }
private int GetWeekOfMonth(DateTime dt) { DateTime dt0 = new DateTime(dt.Year, dt.Month, 1); GregorianCalendar gcr = new GregorianCalendar(); int wk1 = gcr.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Sunday); int wk2 = gcr.GetWeekOfYear(dt0, CalendarWeekRule.FirstDay, DayOfWeek.Sunday); return wk1 - wk2 + 1; }
private void updateDriver() { string driverName = "" + this.Controls[0].Text; DateTimePicker temp = (DateTimePicker)this.Parent.Parent.Parent.Parent.Controls["logDate"]; DateTime logDate = temp.Value; GregorianCalendar gc = new GregorianCalendar(); int weekno = gc.GetWeekOfYear(logDate, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday); string stringdate = DateTime.Now.Year.ToString() + weekno.ToString(); MySQL MySQLHandle = new MySQL(GlobalVar.sqlhost, GlobalVar.sqlport, GlobalVar.sqldatabase, GlobalVar.sqlusername, ""); MySqlConnection sqlWriter = MySQLHandle.Connect(); string command = "UPDATE `th_ryan_invoices` SET `cost`="+costTextBox.Text+" ,`billed_hours`="+billedhoursTextbox.Text+",`billed_miles`="+billedmilesTextbox.Text+", review='"+weeklyReviewTextBox.Text+"' WHERE `driver` LIKE '" + driverName + "' AND `date` LIKE '" + stringdate + "';"; MySQLHandle.Update(command, sqlWriter); MySQLHandle.Disconnect(); }