public void GenerateWeekScheduleReport(Station station, Week[] weeks, bool convertToPDF, bool landscape) { if (!Directory.Exists(OutputFolder)) Directory.CreateDirectory(OutputFolder); var destinationPath = Path.Combine(OutputFolder, String.Format("{0}.{1}", DateTime.Now.ToString("MMddyy-hhmmtt"), convertToPDF ? "pdf" : "xls")); var daysByWeeks = weeks.Select(week => station.GetDays(week.DateStart, week.DateEnd)).ToList(); ProgramScheduleReportHelper.GenerateWeekSchedule( GetReportWeekScheduleTemplatePath(landscape), daysByWeeks.ToArray(), destinationPath, convertToPDF, landscape, MainController.Instance.Settings.ProgramScheduleSettings ); if (File.Exists(destinationPath)) Utils.OpenFile(destinationPath); }
private void FormOutputParameters_Load(object sender, EventArgs e) { #region Schedule Tab comboBoxEditStation.Properties.Items.AddRange(_dataContext.Stations); comboBoxEditStation.EditValue = _dataContext.ActiveStation; var currentDate = _selectedDate; while (currentDate.DayOfWeek != DayOfWeek.Monday) currentDate = currentDate.AddDays(-1); dateEditWeekStart.DateTime = currentDate; var week = new Week(); week.DateStart = dateEditWeekStart.DateTime; week.DateEnd = week.DateStart.AddDays(6); _weeks.Add(week); gridControlWeeks.DataSource = _weeks; #endregion #region Text Settings Tab comboBoxEditHeaderFont.Properties.Items.Clear(); comboBoxEditHeaderFont.Properties.Items.AddRange(MainController.Instance.Settings.ProgramScheduleSettings.HeaderFonts); comboBoxEditHeaderFont.EditValue = MainController.Instance.Settings.ProgramScheduleSettings.HeaderFonts.FirstOrDefault(font => font.ToString() == MainController.Instance.Settings.ProgramScheduleSettings.HeaderFont.ToString()) ?? MainController.Instance.Settings.ProgramScheduleSettings.HeaderFonts.FirstOrDefault(); comboBoxEditFooterFont.Properties.Items.Clear(); comboBoxEditFooterFont.Properties.Items.AddRange(MainController.Instance.Settings.ProgramScheduleSettings.FooterFonts); comboBoxEditFooterFont.EditValue = MainController.Instance.Settings.ProgramScheduleSettings.FooterFonts.FirstOrDefault(font => font.ToString() == MainController.Instance.Settings.ProgramScheduleSettings.FooterFonts.ToString()) ?? MainController.Instance.Settings.ProgramScheduleSettings.FooterFonts.FirstOrDefault(); comboBoxEditBodyFont.Properties.Items.Clear(); comboBoxEditBodyFont.Properties.Items.AddRange(MainController.Instance.Settings.ProgramScheduleSettings.BodyFonts); comboBoxEditBodyFont.EditValue = MainController.Instance.Settings.ProgramScheduleSettings.BodyFonts.FirstOrDefault(font => font.ToString() == MainController.Instance.Settings.ProgramScheduleSettings.BodyFonts.ToString()) ?? MainController.Instance.Settings.ProgramScheduleSettings.BodyFonts.FirstOrDefault(); checkEditPrimeTimeSpecialFontSize.Checked = MainController.Instance.Settings.ProgramScheduleSettings.UsePrimeTimeSpecialFontSize; timeEditWeekPrimeTimeStart.Time = MainController.Instance.Settings.ProgramScheduleSettings.WeekPrimeTimeStart; timeEditWeekPrimeTimeEnd.Time = MainController.Instance.Settings.ProgramScheduleSettings.WeekPrimeTimeEnd; timeEditSundayPrimeTimeStart.Time = MainController.Instance.Settings.ProgramScheduleSettings.SundayPrimeTimeStart; timeEditSundayPrimeTimeEnd.Time = MainController.Instance.Settings.ProgramScheduleSettings.SundayPrimeTimeEnd; #endregion }
private void simpleButtonAddWeek_Click(object sender, EventArgs e) { var week = new Week(); week.DateStart = dateEditWeekStart.DateTime; week.DateEnd = week.DateStart.AddDays(6); if (_weeks.Count(x => x.DateStart.Year == week.DateStart.Year && x.DateStart.Month == week.DateStart.Month && x.DateStart.Day == week.DateStart.Day) == 0) _weeks.Add(week); gridControlWeeks.RefreshDataSource(); }