public async Task <FileResult> GetInventoriesSummaryUsageReportFile([FromQuery] string from, [FromQuery] string to, [FromQuery] string sku, [FromQuery] string invsku, [FromQuery] bool?assemble, [FromQuery] string idsinvcat, [FromQuery] int infotype, [FromQuery] int frequency) { var dFrom = from.GetDateFromQueryStringInPst(TimeZoneHelper.PstTimeZoneInfo); var dTo = to.GetDateFromQueryStringInPst(TimeZoneHelper.PstTimeZoneInfo); if (!dFrom.HasValue || !dTo.HasValue) { return(null); } InventoriesSummaryUsageReportFilter filter = new InventoriesSummaryUsageReportFilter() { From = dFrom.Value, To = dTo.Value, Sku = sku, InvSku = invsku, Assemble = assemble, IdsInvCat = !string.IsNullOrEmpty(idsinvcat) ? idsinvcat.Split(',').Select(Int32.Parse).ToList() : null, InfoType = infotype, FrequencyType = (FrequencyType)frequency }; filter.To = filter.To.AddDays(1); var result = await _inventorySkuService.GetInventoriesSummaryUsageReportAsync(filter); IList <DynamicExportColumn> columns = null; IList <ExpandoObject> items = null; _inventorySkuService.ConvertInventoriesSummaryUsageReportForExport(result, infotype, out columns, out items); var data = CsvExportService.ExportToCsv(columns, items); var contentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = String.Format(FileConstants.INVENTORY_SUMMARY_REPORT, DateTime.Now) }; Response.Headers.Add("Content-Disposition", contentDisposition.ToString()); return(File(data, "text/csv")); }
public async Task <Result <InventoriesSummaryUsageReport> > GetInventoriesSummaryUsageReport([FromBody] InventoriesSummaryUsageReportFilter filter) { filter.To = filter.To.AddDays(1); var toReturn = await _inventorySkuService.GetInventoriesSummaryUsageReportAsync(filter); return(toReturn); }