public ActionResult ViewBill(long OfflineBookingId) { Areas.Admin.Models.OfflineBookingModel data = new Areas.Admin.Models.OfflineBookingModel(); try { data.OfflineBookingId = OfflineBookingId; data.Vendorlist = BLayer.OfflineBooking.getVendorDetails(OfflineBookingId); ViewBag.viewonly = "yes"; //return View("~/Areas/Admin/Views/OfflineBooking/BookingData.cshtml", data); } catch (Exception ex) { Common.LogHandler.HandleError(ex); } //return new ViewAsPdf("~/Views/BookingHistory/OfflineBookingCofirmation.cshtml", data) //{ // PageMargins = new Rotativa.Options.Margins(0, 0, 0, 0), // PageOrientation = Rotativa.Options.Orientation.Portrait //}; var PDFResult = new ViewAsPdf("~/Views/BookingHistory/OfflineBookingCofirmation.cshtml", data) { FileName = "Report.PDF", CustomSwitches = "--footer-center \" DOS: " + DateTime.Now.Date.ToString("MM/dd/yyyy") + " Page: [page]/[toPage]\"" + " --footer-line --footer-font-size \"9\" --footer-spacing 6 --footer-font-name \"calibri light\"" }; return(PDFResult); }
public async Task <bool> SupplierInvoiceToSupplier() { List <CLayer.OfflineBooking> BookingList = BLayer.OfflineBooking.GetOfflinebookingsAtCheckInOutNow(); foreach (CLayer.OfflineBooking dt in BookingList) { string message = ""; string Filename = ""; Common.Mailer ml = new Common.Mailer(); try { if (dt.PropertyEmail != "" || dt.SupplierEmail != "") { message = await Common.Mailer.MessageFromHtml(System.Configuration.ConfigurationManager.AppSettings.Get("SupplierInvoiceOfflineBookGST") + dt.OfflineBookingId.ToString() + "&key=" + BLayer.Settings.GetValue(CLayer.Settings.PUBLIC_PAGE_LOCK)); System.Net.Mail.MailMessage supplierMsg = new System.Net.Mail.MailMessage(); supplierMsg.Subject = "Supplier Invoice"; supplierMsg.Body = message; if (dt.PropertyEmail != null) { if (dt.PropertyEmail != "") { supplierMsg.CC.Add(dt.PropertyEmail); } } if (dt.SupplierEmail != null) { if (dt.SupplierEmail != "") { supplierMsg.To.Add(dt.SupplierEmail); } } string AccountMail = BLayer.Settings.GetValue(CLayer.Settings.SUPPLIER_INVOICE_REQUEST_MAILS); if (AccountMail != "") { string[] Accemails = AccountMail.Split(','); for (int i = 0; i < Accemails.Length; ++i) { supplierMsg.CC.Add(Accemails[i]); } } supplierMsg.IsBodyHtml = true; //add atachment try { Areas.Admin.Models.OfflineBookingModel data = new Areas.Admin.Models.OfflineBookingModel(); data.OfflineBookingId = dt.OfflineBookingId; var PDFResult = new ViewAsPdf("~/Areas/Admin/Views/OfflineBookingGST/SupplierInvoice.cshtml", data) { CustomSwitches = "--footer-center \" DOS: " + DateTime.Now.Date.ToString("MM/dd/yyyy") + " Page: [page]/[toPage]\"" + " --footer-line --footer-font-size \"9\" --footer-spacing 6 --footer-font-name \"calibri light\"" }; string newdirectory = "Files\\Temp\\SupplierInvoice\\" + dt.OfflineBookingId; if (!Directory.Exists(Server.MapPath("~") + "\\" + newdirectory)) { Directory.CreateDirectory(Server.MapPath("~") + "\\" + newdirectory); } Filename = Server.MapPath("~") + "\\" + newdirectory + "\\" + "SupplierInvoice_" + dt.ConfirmationNumber + ".pdf"; var byteArray = PDFResult.BuildPdf(ControllerContext); var fileStream = new FileStream(Filename, FileMode.Create, FileAccess.Write); fileStream.Write(byteArray, 0, byteArray.Length); fileStream.Close(); fileStream.Dispose(); Attachment attacht = new Attachment(Filename, MediaTypeNames.Application.Octet); supplierMsg.Attachments.Add(attacht); } catch (Exception ex) { Common.LogHandler.HandleError(ex); } try { await ml.SendMailAsync(supplierMsg, Common.Mailer.MailType.Reservation); } catch (Exception ex) { Common.LogHandler.HandleError(ex); } } } catch (Exception ex) { Common.LogHandler.HandleError(ex); } } return(true); }