public List <T> GetSearchResult <T>(GenericReportData model) where T : class { List <SqlParameter> parms = new List <SqlParameter> { new SqlParameter { ParameterName = GenericReportStoredProcedure.StoredProcedureParameters[0].ToString(), Value = model.ReportName.AsDbValue() }, new SqlParameter { ParameterName = GenericReportStoredProcedure.StoredProcedureParameters[1].ToString(), TypeName = GenericReportStoredProcedure.StoredProcedureTypeNames[0].ToString(), SqlDbType = SqlDbType.Structured, Value = model.ReportFilters.ToList().ToDataTable() } }; return(_tcContext.Set <T>().FromSqlRaw(GenericReportStoredProcedure.Sql, parms.ToArray()).ToList()); }
public IList <IList <KeyValuePair <string, string> > > GetReportData(GenericReportData model) { switch (model.ReportName) { case "GenerateInventorySummaryByCustomer": var inventorySummaryData = GetSearchResult <ViewInventorySummaryByCustomer>(model); return(inventorySummaryData.Select(item => item.GetValues()).ToList()); case "GenerateDisposalDatesOfCustomer": var viewDisposalDatesOfCustomersData = GetSearchResult <ViewDisposalDatesOfCustomer>(model); return(viewDisposalDatesOfCustomersData.Select(item => item.GetValues()).ToList()); case "GenerateRequestSummary": var viewRequestSummaryData = GetSearchResult <ViewRequestSummary>(model); return(viewRequestSummaryData.Select(item => item.GetValues()).ToList()); case "GenerateCustomerSummary": var viewCustomerSummaryData = GetSearchResult <ViewCustomerSummary>(model); return(viewCustomerSummaryData.Select(item => item.GetValues()).ToList()); case "GenerateCreatedPickList": var viewCreatedPickListData = GetSearchResult <ViewCreatedPickList>(model); return(viewCreatedPickListData.Select(item => item.GetValues()).ToList()); case "GeneratedCreatedInvoiceList": var viewCreatedInvoiceListData = GetSearchResult <ViewCreatedInvoiceList>(model); return(viewCreatedInvoiceListData.Select(item => item.GetValues()).ToList()); case "GenerateCustomerAuthorizationList": var viewCustomerAuthorizationListData = GetSearchResult <ViewCustomerAuthorizationList>(model); return(viewCustomerAuthorizationListData.Select(item => item.GetValues()).ToList()); default: throw new Exception("Report not implemented"); } }
public ActionResult GetInventoryByCustomer(GenericReportData model) { return(Ok(_reportRepository.GetReportData(model))); }