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"));
        }
Exemplo n.º 3
0
        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));
        }