public ActionResult WillowValleyDownload(WillowValleyModel mdlWillowValleyModel, string submit) { WillowValley objWillowValley = new WillowValley(); mdlWillowValleyModel.StatementDate = objWillowValley.GetStatementDate(); String folder = Server.MapPath(string.Format("~/WillowValley/{0}/", mdlWillowValleyModel.StatementDate)); mdlWillowValleyModel.Active = objWillowValley.CheckExistanceOfFolder(folder); mdlWillowValleyModel.IsEmailSent = objWillowValley.CheckExistance(mdlWillowValleyModel.StatementDate); if (submit == "Download") { return(GenarateZip(objWillowValley, folder, false)); } else if (submit == "Process") { objWillowValley.ProcessFeed(mdlWillowValleyModel.StatementDate, folder); return(View("WillowValley", mdlWillowValleyModel)); } else if (submit == "Send Email" && mdlWillowValleyModel.IsEmailSent == false) { bool isEmailSent = WillowValleySendEmail(objWillowValley, folder); if (isEmailSent) { objWillowValley.UpdateXml(mdlWillowValleyModel.StatementDate); mdlWillowValleyModel.IsEmailSent = true; } ViewBag.Message = isEmailSent ? DBQueries.msgEmailSuccess: DBQueries.msgEmailFailed; return(View("WillowValley", mdlWillowValleyModel)); } else { return(View("WillowValley", mdlWillowValleyModel)); } }
public ActionResult WillowValley() { WillowValley objWillowValley = new WillowValley(); WillowValleyModel mdlWillowValleyModel = new WillowValleyModel(); mdlWillowValleyModel.StatementDate = objWillowValley.GetStatementDate(); String folder = Server.MapPath(string.Format("~/WillowValley/{0}/", mdlWillowValleyModel.StatementDate)); mdlWillowValleyModel.Active = objWillowValley.CheckExistanceOfFolder(folder); mdlWillowValleyModel.IsEmailSent = objWillowValley.CheckExistance(mdlWillowValleyModel.StatementDate); return(View(mdlWillowValleyModel)); }
private bool WillowValleySendEmail(WillowValley objWillowValley, string folder) { var filesCol = objWillowValley.GetFile(folder).ToList(); using (var memoryStream = new MemoryStream()) { using (var ziparchive = new ZipArchive(memoryStream, ZipArchiveMode.Create, true)) { for (int i = 0; i < filesCol.Count; i++) { ziparchive.CreateEntryFromFile(filesCol[i].FilePath, filesCol[i].FileName); } } MemoryStream attachmentStream = new MemoryStream(memoryStream.ToArray()); return(Email.SendEmail(attachmentStream, folder, true)); } }
private ActionResult GenarateZip(WillowValley objWillowValley, string folder, bool sendEmail) { var filesCol = objWillowValley.GetFile(folder).ToList(); using (var memoryStream = new MemoryStream()) { using (var ziparchive = new ZipArchive(memoryStream, ZipArchiveMode.Create, true)) { for (int i = 0; i < filesCol.Count; i++) { ziparchive.CreateEntryFromFile(filesCol[i].FilePath, filesCol[i].FileName); } } MemoryStream attachmentStream = new MemoryStream(memoryStream.ToArray()); if (sendEmail) { Email.SendEmail(attachmentStream, folder, true); } return(File(memoryStream.ToArray(), "application/zip", "WillowValley.zip")); } }