public string GenerateOneReport(string clientCode) { FacilityReport facilityReport = new FacilityReport(); ApplicationUnit unit = new ApplicationUnit(); List <Facility> facilities = unit.Facilities.GetAll() .Include(b => b.Buildings) .Include(d => d.DeedsInfo) .Include(c => c.Portfolio) .Include(p => p.ResposiblePerson) .Include(l => l.Location) .ToList(); Facility facility = facilities.Where(f => f.ClientCode.Trim().ToLower() == clientCode.Trim().ToLower()).FirstOrDefault(); Model.OriginalData dbOriginalData = unit.OriginalDatas.GetAll().Where(o => o.VENUS_CODE.Trim().ToLower() == facility.ClientCode.Trim().ToLower()).FirstOrDefault(); int i = 0; if (facility != null) { string facilityLocation = facilityReport.GenerateFacilityReport(facility, dbOriginalData); return(facilityLocation); } else { return(null); } }
public Dictionary <string, string> GenerateAllReport() { //List<string> list = new List<string>(); Dictionary <string, string> dictionary = new Dictionary <string, string>(); FacilityReport facilityReport = new FacilityReport(); ApplicationUnit unit = new ApplicationUnit(); List <Facility> facilities = unit.Facilities.GetAll() .Include(b => b.Buildings) .Include(d => d.DeedsInfo) .Include(c => c.Portfolio) .Include(p => p.ResposiblePerson) .Include(l => l.Location) .ToList(); List <Facility> facilitiffes = facilities.Where(f => f.Status == "Submitted").ToList(); int i = 0; foreach (var facility in facilitiffes) { if (i < 30) { Model.OriginalData dbOriginalData = unit.OriginalDatas.GetAll().Where(o => o.VENUS_CODE.Trim().ToLower() == facility.ClientCode.Trim().ToLower()).FirstOrDefault(); string facilityLocation = facilityReport.GenerateFacilityReport(facility, dbOriginalData); dictionary.Add(facilityLocation, facility.ClientCode); i++; } } return(dictionary); }
public ActionResult DownloadAllFacility([Bind(Include = "Region")] Facility facility) { if (string.IsNullOrEmpty(facility.Region)) { ModelState.AddModelError("", "Please Select Region."); return(View(facility)); } FacilityReport facilityReport = new FacilityReport(); ApplicationUnit unit = new ApplicationUnit(); List <Model.Facility> dbFacilities = unit.Facilities.GetAll() .Include(b => b.Buildings) .Include(d => d.DeedsInfo) .Include(p => p.ResposiblePerson) .Include("Location.GPSCoordinates") .Include("Location.BoundryPolygon") .Where(ss => ss.Status == "Submitted" && ss.Location.Region.Trim().ToLower() == facility.Region.Trim().ToLower()) .ToList(); if (dbFacilities.Count() == 0) { ModelState.AddModelError("", "No Facilities Found For Selected Region."); return(null); } else { using (var memoryStream = new MemoryStream()) { using (ZipArchive ziparchive = new ZipArchive(memoryStream, ZipArchiveMode.Create, true)) { foreach (var item in dbFacilities) { Model.OriginalData dbOriginalData = unit.OriginalDatas.GetAll().Where(o => o.VENUS_CODE.Trim().ToLower() == item.ClientCode.Trim().ToLower()).FirstOrDefault(); string filePath = facilityReport.GenerateFacilityReport(item, dbOriginalData); ziparchive.CreateEntryFromFile(filePath, item.ClientCode + ".pdf"); } } DeleteAllFile(); return(File(memoryStream.ToArray(), "application/zip", "facilities.zip")); } } }
// GET: Facility/Edit/5 //[HttpPost] //[ValidateAntiForgeryToken] public ActionResult DownloadFacility(string clientCode) { FacilityReport facilityReport = new FacilityReport(); ApplicationUnit unit = new ApplicationUnit(); Model.Facility dbFacility = unit.Facilities.GetAll() .Include(b => b.Buildings) .Include(d => d.DeedsInfo) .Include(c => c.Portfolio) .Include(p => p.ResposiblePerson) .Include("Location.GPSCoordinates") .Include("Location.BoundryPolygon") .Where(f => f.ClientCode.ToLower() == clientCode.ToLower()).FirstOrDefault(); if (dbFacility == null) { return(RedirectToAction("Index")); } Model.OriginalData dbOriginalData = unit.OriginalDatas.GetAll() .Where(o => o.VENUS_CODE.Trim().ToLower() == dbFacility.ClientCode.Trim().ToLower()) .FirstOrDefault(); string filePath = facilityReport.GenerateFacilityReport(dbFacility, dbOriginalData); using (var webClient = new WebClient()) { if (!System.IO.File.Exists(filePath)) { return(null); } byte[] file = webClient.DownloadData(filePath); DeleteAllFile(); return(File(file, MediaTypeNames.Application.Pdf)); } }