public ActionResult SearchReports(SearchReportParamsViewModel searchParams) { int year = searchParams.Year; int month = searchParams.Month; DateTime? date = Services.Utilities.ValidateDate(year, month); ReportsViewModel vm = this.GetReportByType(searchParams.Type, date); return(PartialView("ShowReportByType", vm)); }
public ActionResult ExportReport(string type, string year, string month, string ex) { // handle with uncastable int int rType = 0; int rYear = 0; int rMonth = 0; Int32.TryParse(type, out rType); Int32.TryParse(year, out rYear); Int32.TryParse(month, out rMonth); SearchReportParamsViewModel searchParams = new SearchReportParamsViewModel() { Type = rType, Year = rYear, Month = rMonth, ExportTo = ex }; if (searchParams.ExportTo == "xls") { DataTable table = this.GetDataTableToExcel(searchParams); return(RedirectToAction("ExportToExcel", ExportToExcel(table))); } else if (searchParams.ExportTo == "pdf") { return(new ActionAsPdf("ShowPDFReports", new { Type = searchParams.Type, Year = searchParams.Year, Month = searchParams.Month }) { FileName = "TestPDF.pdf" }); } else { return(PartialView("ReportsError")); } }
public DataTable GetDataTableToExcel(SearchReportParamsViewModel searchParams) { int year = searchParams.Year; int month = searchParams.Month; DateTime? date = Services.Utilities.ValidateDate(year, month); ReportsViewModel vm = this.GetReportByType(searchParams.Type, date); var data = new DataTable("Report"); if (vm.Type == ReportType.Charge) { data.Columns.Add("מס", typeof(string)); data.Columns.Add("שם חניך", typeof(string)); data.Columns.Add("ת\"ז חניך", typeof(string)); data.Columns.Add("שם חונך", typeof(string)); data.Columns.Add("ת\"ז חונך", typeof(string)); data.Columns.Add("תאריך", typeof(string)); data.Columns.Add("עלות לשעה", typeof(string)); data.Columns.Add("סה\"כ שעות סיוע", typeof(string)); data.Columns.Add("סה\"כ חיוב לתשלום", typeof(string)); data.Columns.Add("מס תקציב", typeof(string)); data.Columns.Add("שם גורם מאשר", typeof(string)); data.Columns.Add("סטטוס", typeof(string)); for (int i = 0; i < vm.Charges.Count(); i++) { data.Rows.Add(i + 1, vm.Charges[i].StudentFullName, vm.Charges[i].StudentID, vm.Charges[i].TeacherFullName, vm.Charges[i].TeacherID, vm.Charges[i].Date, vm.Charges[i].CostPerHour, vm.Charges[i].SumOfHours, vm.Charges[i].SumOfBill, vm.Charges[i].BudgetNumber, vm.Charges[i].ManagerUserName, vm.Charges[i].ManagerSignature); } } else if (vm.Type == ReportType.Refund) { data.Columns.Add("מס", typeof(string)); data.Columns.Add("קוד טופס", typeof(string)); data.Columns.Add("שם משתמש חונך", typeof(string)); data.Columns.Add("שם חונך", typeof(string)); data.Columns.Add("תאריך", typeof(string)); data.Columns.Add("קוד קורס", typeof(string)); data.Columns.Add("שם קורס", typeof(string)); data.Columns.Add("שם חוג", typeof(string)); data.Columns.Add("שם מרצה", typeof(string)); data.Columns.Add("קבוצתי", typeof(string)); data.Columns.Add("סהכ שעות לטופס", typeof(string)); data.Columns.Add("שם מנהל", typeof(string)); data.Columns.Add("מס תקציב", typeof(string)); data.Columns.Add("מקור מימון", typeof(string)); data.Columns.Add("אישור מנהל", typeof(string)); data.Columns.Add("תאריך אישור", typeof(string)); for (int i = 0; i < 100; i++) { data.Rows.Add(i + 1, vm.Refunds[i].ID, vm.Refunds[i].TeacherUserName, vm.Refunds[i].TeacherFullName, vm.Refunds[i].Date, vm.Refunds[i].CourseID, vm.Refunds[i].CourseName, vm.Refunds[i].DepartmentName, vm.Refunds[i].LecturerName, vm.Refunds[i].IsGrouped, vm.Refunds[i].TotalHours, vm.Refunds[i].ManagerFullName, vm.Refunds[i].BudgetNumber, vm.Refunds[i].SourceFund, vm.Refunds[i].ManagerSignature, vm.Refunds[i].SignatureDate); } } else if (vm.Type == ReportType.User) { } return(data); }