public string CreateDeliveryPdf(TakeThai.Models.OrderModels order) { var myHtml = $"<div style='text-align: right; display: block;'> <img src='https://www.takethai.co.uk/wp-content/uploads/Take-Thai-Logo.png' /></div> <br /> " + $"<hr />"; myHtml = $"{myHtml} <p style='text-align: center;'>{order.CustomerModels.FirstName} {order.CustomerModels.Surname}<br />"; if (!string.IsNullOrEmpty(order.CustomerDeliveryAddressModel.AddressLine1)) { myHtml = $"{myHtml} {order.CustomerDeliveryAddressModel.AddressLine1} <br />"; } if (!string.IsNullOrEmpty(order.CustomerDeliveryAddressModel.AddressLine2)) { myHtml = $"{myHtml} {order.CustomerDeliveryAddressModel.AddressLine2} <br />"; } if (!string.IsNullOrEmpty(order.CustomerDeliveryAddressModel.AddressLine3)) { myHtml = $"{myHtml} {order.CustomerDeliveryAddressModel.AddressLine3} <br />"; } if (!string.IsNullOrEmpty(order.CustomerDeliveryAddressModel.PostalCode)) { myHtml = $"{myHtml} {order.CustomerDeliveryAddressModel.PostalCode} <br />"; } myHtml = $"{myHtml} </p><hr />"; myHtml = $"{myHtml} <h3 style='text-align: center;'>{order.DeliveryOrCollection} Order between: {order.OrderReceivedDate.ToString("t", CultureInfo.CreateSpecificCulture("en-GB"))} & {order.OrderReceivedDate.AddMinutes(30).ToString("t", CultureInfo.CreateSpecificCulture("en-GB"))}</h3>" + $"<h3 style='text-align: center;'>Order ID: {order.Id}</h3> <br />" + $"<br /><br />"; foreach (var subOrder in order.SubOrderModelsList) { var currentSubOrderJson = Program.GetSubOrder(subOrder.Id); var convertJsonToModels = new ConvertJsonToModels(); var currentSubOrder = convertJsonToModels.ConvertJsonToSubOrderModels(currentSubOrderJson); if (currentSubOrder == null) { continue; } var productModel = Program.GetProductModels(currentSubOrder.ProductSubModels.ProductModelId); myHtml = $"{myHtml} <div class='row' style='text-align: right;'> <p>Product Number: {productModel.Number} Name: <strong>{productModel.Name} - {currentSubOrder.ProductSubModels.OptionName}</strong> | £{currentSubOrder.ProductSubModels.Price} | Qty: {currentSubOrder.Quantity} </p>"; if (!string.IsNullOrEmpty(subOrder.SpecialCustomerNotes)) { myHtml = $"{myHtml} <p>Customers Requirements: <strong>{subOrder.SpecialCustomerNotes}</strong></p>"; } myHtml = $"{myHtml} </div>"; } myHtml = $"{myHtml} <br /><br />"; myHtml = $"{myHtml} <hr />"; myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>Sub Total: £{order.SubTotal}</p>"; myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>Delivery Cost: £{order.DeliveryCost}</p>"; myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>Discount: £{order.CustomerDiscount}</p>"; myHtml = $"{myHtml} <hr />"; myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>Total : £{order.TotalCost}</p>"; //Console.WriteLine($"Creating Delivery PDF for order {order.Id}"); return(CreatePdfFile(myHtml, order.Id, "Delivery")); }
public string CreateVatPdf(TakeThai.Models.OrderModels order) { var myHtml = $"<div style='text-align: center; display: block;'> <img src='https://www.takethai.co.uk/wp-content/uploads/Take-Thai-Logo.png' /></div> <br /> " + "<p>130 Dereham Road, Norwich NR2 3AF. 01603 464646</p> <hr />" + "<h4>VAT Receipt</h4><hr />"; foreach (var subOrder in order.SubOrderModelsList) { var currentSubOrderJson = Program.GetSubOrder(subOrder.Id); var convertJsonToModels = new ConvertJsonToModels(); var currentSubOrder = convertJsonToModels.ConvertJsonToSubOrderModels(currentSubOrderJson); if (currentSubOrder == null) { continue; } var productModel = Program.GetProductModels(currentSubOrder.ProductSubModels.ProductModelId); myHtml = $"{myHtml} <div class='row'>"; myHtml = $"{myHtml} <div class='row'> <p>{subOrder.Quantity}x {productModel.Number} {productModel.Name} {currentSubOrder.ProductSubModels.ProductSubModelShortCode} £{currentSubOrder.ProductSubModels.Price}</p>"; myHtml = $"{myHtml} </div>"; } myHtml = $"{myHtml} <hr />"; myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>Total £{order.TotalCost}</p>"; var vatCost = order.TotalCost - (order.TotalCost / 1.2); myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>Includes Vat @ 20.0% of £{vatCost.ToString("0.##")}</p>"; myHtml = $"{myHtml} <hr />"; myHtml = $"{myHtml} Date: {order.OrderPlacedDate.ToString("dd.MM.yyyy")}"; myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>Paid By: {order.PaymentMethod}</p>"; myHtml = $"{myHtml} Received with thanks."; myHtml = $"{myHtml} <hr />"; //Console.WriteLine($"Creating Delivery PDF for order {order.Id}"); return(CreatePdfFile(myHtml, order.Id, "Vat")); }
public string CreateKitchenPdf(TakeThai.Models.OrderModels order) { if (order == null) { return(null); } var orderType = order.DeliveryOrCollection ?? "Counter"; if (orderType.ToLower() == "counter") { orderType = "CTR"; } else { orderType = orderType.Substring(0, 3).ToUpperInvariant(); } var myHtml = $"<h3 style='text-align: center;'>{orderType} Order between: {order.OrderReceivedDate.ToString("t", CultureInfo.CreateSpecificCulture("en-GB"))} & {order.OrderReceivedDate.AddMinutes(30).ToString("t", CultureInfo.CreateSpecificCulture("en-GB"))}</h3>" + $"<h3 style='text-align: center;'>Order ID: {order.Id}</h3> <br />" + $"<br /><br />"; foreach (var subOrder in order.SubOrderModelsList) { var currentSubOrderJson = Program.GetSubOrder(subOrder.Id); var convertJsonToModels = new ConvertJsonToModels(); var currentSubOrder = convertJsonToModels.ConvertJsonToSubOrderModels(currentSubOrderJson); if (currentSubOrder == null) { continue; } var productModel = Program.GetProductModels(currentSubOrder.ProductSubModels.ProductModelId); var quantityString = string.Empty; if (currentSubOrder.Quantity > 1) { quantityString = $"{currentSubOrder.Quantity}x "; } var subProductCode = !string.IsNullOrEmpty(currentSubOrder.ProductSubModels.ProductSubModelShortCode) ? currentSubOrder.ProductSubModels.ProductSubModelShortCode : currentSubOrder.ProductSubModels.OptionName; if (!string.IsNullOrEmpty(subOrder.SpecialCustomerNotes) && (subOrder.CustomerProductRequestsModelsList == null || subOrder.CustomerProductRequestsModelsList.Count <= 0)) { myHtml = $"{myHtml} <div class='row' style='text-align: center;'> <p>{quantityString}{productModel.Number} {subProductCode}</p>"; } else { var specialRequest = string.Empty; if (subOrder.CustomerProductRequestsModelsList != null && subOrder.CustomerProductRequestsModelsList.Count > 0) { foreach (var productRequestModel in subOrder.CustomerProductRequestsModelsList) { specialRequest = $"{specialRequest}, {productRequestModel.OptionName}"; } } specialRequest = $"{specialRequest} {currentSubOrder.SpecialCustomerNotes}"; myHtml = $"{myHtml} <div class='row' style='text-align: right;'> <ul><li></li></ul><p>{quantityString}{productModel.Number} {subProductCode} <strong>{specialRequest}</strong></p>"; } myHtml = $"{myHtml} </div>"; } myHtml = $"{myHtml} <p style='font-weight:bold; text-align: right;'>£{order.TotalCost}</p>"; return(CreatePdfFile(myHtml, order.Id, "Kitchen")); }