public Reporting() { InitializeComponent(); DataContext = new ReportingVM(); Loaded += OnLoaded; }
/// <summary> /// Show Selection File Dialog /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void GenerateButtonClicked(object sender, RoutedEventArgs e) { ReportingVM _reportingVm = (DataContext as ReportingVM); if (_reportingVm == null) { return; } SaveFileDialog dialog = new SaveFileDialog { Filter = (_reportingVm.SelectedTemplateFile.Extension != ".xlsx") ? string.Format("*{0}, *.pdf|*{0};*.pdf", _reportingVm.SelectedTemplateFile.Extension) : string.Format("*{0}|*{0}", _reportingVm.SelectedTemplateFile.Extension), DefaultExt = _reportingVm.SelectedTemplateFile.Extension, FileName = _reportingVm.SelectedTemplateFile.Name.Replace('-', ' ') }; var settings = SettingsBLL.GetSetting(); if (string.IsNullOrEmpty(settings.ReportingParameter.TemplatePath) || !Directory.Exists(settings.ReportingParameter.TemplatePath)) { dialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal); } else { dialog.InitialDirectory = settings.ReportingParameter.GeneratedFilePath; } var result = dialog.ShowDialog(); var _vm = (ReportingVM)DataContext; if (result != null && result.Value) { settings.ReportingParameter.GeneratedFilePath = Path.GetDirectoryName(dialog.FileName); SettingsBLL.SaveSetting(settings); if (_vm != null) { _vm.ReportFileName = dialog.FileName; } } else { if (_vm != null) { _vm.ReportFileName = string.Empty; } } }
/// <summary> /// Show Selection File Dialog /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void GenerateButtonClicked(object sender, RoutedEventArgs e) { ReportingVM reportingVM = (this.DataContext as ReportingVM); SaveFileDialog dialog = new SaveFileDialog(); dialog.Filter = string.Format("*{0}|*{0}", reportingVM.SelectedTemplateFile.Extension); dialog.DefaultExt = reportingVM.SelectedTemplateFile.Extension; var settings = SettingsBLL.GetSetting(); if (string.IsNullOrEmpty(settings.ReportingParameter.TemplatePath) || !Directory.Exists(settings.ReportingParameter.TemplatePath)) { dialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal); } else { dialog.InitialDirectory = settings.ReportingParameter.GeneratedFilePath; } var result = dialog.ShowDialog(); if (result.Value) { settings.ReportingParameter.GeneratedFilePath = Path.GetDirectoryName(dialog.FileName); SettingsBLL.SaveSetting(settings); (this.DataContext as ReportingVM).ReportFileName = dialog.FileName; } else { (this.DataContext as ReportingVM).ReportFileName = string.Empty; } }
public ActionResult Reports(string dateStart, string dateEnd) { //default to the beginning of the current year to the present day if (dateStart == null) { dateStart = "1/01/" + System.DateTime.Now.Year.ToString(); } if (dateEnd == null) { dateEnd = System.DateTime.Now.ToShortDateString(); } ViewBag.dateStart = dateStart; ViewBag.dateEnd = dateEnd; DateTime startDate = DateTime.Parse(dateStart); DateTime endDate = DateTime.Parse(dateEnd); //get all dispersals var cases = db.Cases .Include(c => c.Dispersal) .Where(c => c.Active == 1) .Where(c => c.InitialContactDate >= startDate && c.InitialContactDate <= endDate) .ToList(); //get summary info ViewBag.metro8Cases = cases.Where(c => c.County.Metro8Indicator == true).Count(); ViewBag.nonMetro8Cases = cases.Where(c => c.County.Metro8Indicator == false).Count(); decimal?metro8Total = 0; decimal?nonMetro8Total = 0; foreach (var cs in cases) { if (cs.Dispersal.Count() > 0) { var caseDispersals = db.Dispersals .Where(d => d.CaseID == cs.CaseID) .Where(d => d.Active == 1) .ToList(); if (cs.County.Metro8Indicator == true) { foreach (var dispersal in caseDispersals) { metro8Total += dispersal.AmountApproved.HasValue ? dispersal.AmountApproved : 0; } } else { foreach (var dispersal in caseDispersals) { nonMetro8Total += dispersal.AmountApproved.HasValue ? dispersal.AmountApproved : 0; } } } } ViewBag.metro8Contributions = metro8Total; ViewBag.nonMetro8Contributions = nonMetro8Total; //display details (each county) List <ReportingVM> CountyList = new List <ReportingVM>(); var counties = db.County .Include(c => c.Cases) .ToList(); foreach (var cty in counties) { ReportingVM rVM = new ReportingVM(); rVM.CountyName = cty.CountyName; rVM.MetroYN = cty.Metro8Indicator; rVM.Cases = db.Cases .Where(c => c.County.CountyName == cty.CountyName) .Where(c => c.InitialContactDate >= startDate && c.InitialContactDate <= endDate) .Where(c => c.Active == 1) .ToList(); rVM.Dispersals = db.Dispersals .Where(d => d.Case.County.CountyName == cty.CountyName) .Where(d => d.Active == 1) .Where(d => d.Case.InitialContactDate >= startDate && d.Case.InitialContactDate <= endDate) .Where(d => d.Case.Active == 1) .ToList(); CountyList.Add(rVM); } return(View(CountyList.ToList())); }