public FileStreamResult GetLessentabelExport() { LessenTabelExportArguments args = new LessenTabelExportArguments() { ExportAll = true }; var data = _unitOfWork.GetRepository <FaseType>().GetAll(); IExportablePack <FaseType> pack = new LessenTabelExportablePack(args, data); Stream fStream = _lessenTabelExporterService.ExportAllAsStream(pack); HttpContext.Response.AddHeader("content-disposition", "attachment; filename=LessenTabel.pdf"); return(new FileStreamResult(fStream, "application/pdf")); }
public FileStreamResult GetLeerlijnenExport() { LeerlijnExportArguments args = new LeerlijnExportArguments() { ExportAll = true }; var data = _unitOfWork.GetRepository <Leerlijn>().GetAll(); var maxSchooljaar = _unitOfWork.GetRepository <Schooljaar>().GetAll().Max(src => src.JaarId); var lastYearData = (from element in data where element.Schooljaar.Equals(maxSchooljaar) select element).ToList(); IExportablePack <Leerlijn> pack = new LeerlijnExportablePack(args, lastYearData); Stream fStream = _leerlijnExporterService.ExportAllAsStream(pack); HttpContext.Response.AddHeader("content-disposition", "attachment; filename=Leerlijnen.pdf"); return(new FileStreamResult(fStream, "application/pdf")); }
public ActionResult ExportAllModules(ExportArgumentsViewModel value) { var modules = _unitOfWork.GetRepository <Module>().GetAll(); if (!User.Identity.IsAuthenticated) { modules = modules.Where(element => element.Status.Equals("Compleet (gecontroleerd)")); } ICollection <string> competentieFilters = null; if (value.Filters.Competenties.First() != null) { competentieFilters = value.Filters.Competenties; } ICollection <string> tagFilters = null; if (value.Filters.Tags.First() != null) { tagFilters = value.Filters.Tags; } ICollection <string> leerlijnFilters = null; if (value.Filters.Leerlijnen.First() != null) { leerlijnFilters = value.Filters.Leerlijnen; } ICollection <string> faseFilters = null; if (value.Filters.Fases.First() != null) { faseFilters = value.Filters.Fases; } ICollection <string> blokFilters = null; if (value.Filters.Blokken.First() != null) { blokFilters = value.Filters.Blokken; } string zoektermFilter = null; if (value.Filters.Zoekterm != null) { zoektermFilter = value.Filters.Zoekterm; } string leerjaarFilter = null; if (value.Filters.Leerjaar != null) { leerjaarFilter = value.Filters.Leerjaar; } var arguments = new ModuleFilterSorterArguments { CompetentieFilters = competentieFilters, TagFilters = tagFilters, LeerlijnFilters = leerlijnFilters, FaseFilters = faseFilters, BlokFilters = blokFilters, ZoektermFilter = zoektermFilter, LeerjaarFilter = leerjaarFilter }; var queryPack = new ModuleQueryablePack(arguments, modules.AsQueryable()); modules = _filterSorterService.ProcessData(queryPack); var exportArguments = new ModuleExportArguments { ExportCursusCode = value.Export.CursusCode, ExportNaam = value.Export.Naam, ExportBeschrijving = value.Export.Beschrijving, ExportAlgInfo = value.Export.AlgemeneInformatie, ExportStudieBelasting = value.Export.Studiebelasting, ExportOrganisatie = value.Export.Organisatie, ExportWeekplanning = value.Export.Weekplanning, ExportBeoordeling = value.Export.Beoordeling, ExportLeermiddelen = value.Export.Leermiddelen, ExportLeerdoelen = value.Export.Leerdoelen, ExportCompetenties = value.Export.Competenties, ExportLeerlijnen = value.Export.Leerlijnen, ExportTags = value.Export.Tags }; var exportablePack = new ModuleExportablePack(exportArguments, modules); BufferedStream fStream = _moduleExporterService.ExportAllAsStream(exportablePack); string expByName = User.Identity.Name; if (expByName == null || expByName.Equals("")) { expByName = "download"; } string saveTo = DateTime.Now.ToString("yyyy-MM-dd") + "_" + expByName; Session[saveTo] = fStream; //Return the filename under which you can retrieve it from Session data. //Ajax/jQuery will then parse that string, and redirect to /Module/Export/All/{saveTo} //This redirect will be caught in the controller action below here. return(Json(saveTo)); }