public ActionResult Complete(Tbl_Invoice invoice) { var total = 0; List <Item> cart = (List <Item>)Session["cart"]; invoice.Date = DateTime.Now; ctx.Tbl_Invoice.Add(invoice); //ctx.SaveChanges(); foreach (var item in cart) { var detail = new Tbl_InvoiceDetail(); detail.ProductID = item.Product.ProductID; detail.Quantity = item.Quantity; detail.InvoiceID = invoice.InvoiceID; ctx.Tbl_InvoiceDetail.Add(detail); ctx.SaveChanges(); var totalitem = item.Quantity * Convert.ToInt32(item.Product.Price); total = totalitem + total; } //var inv = ctx.Tbl_Invoice.Find(invoice.InvoiceID); invoice.Total = total; ctx.SaveChanges(); return(View()); }
public static Invoice MapFrom(this Tbl_Invoice invoice) { return(new Invoice { Id = invoice.Id, CustomerId = invoice.CustomerId, CustomerName = invoice.Tbl_Customer?.Name ?? string.Empty, CurrencyId = invoice.CurrencyId, CurrencyName = invoice.Tbl_Currency?.Name ?? string.Empty, InvoiceDate = invoice.InvoiceDate, DueDate = invoice.DueDate, InvoiceNumber = invoice.InvoiceNumber, OrderNumber = invoice.OrderNumber, Notes = invoice.Notes, Created_At = invoice.Created_At, Updated_At = invoice.Updated_At, Footer = invoice.Footer, CategoryId = invoice.CategoryId, CategoryName = invoice.Tbl_Category?.Name ?? string.Empty, Recurring = invoice.Recurring, Attachment = invoice.Attachment, SubTotal = invoice.SubTotal, Discount = invoice.Discount, Tax = invoice.Tax, GrandTotal = invoice.GrandTotal, Status = invoice.Status, CurrencySymbol = invoice.Tbl_Currency?.Symbol ?? string.Empty, SymbolPosition = invoice.Tbl_Currency?.SymbolPosition ?? string.Empty, Discount_Percentage = invoice.Discount_Percentage, InvoiceItems = invoice.Tbl_InvoiceItems?.Select(i => i.MapFrom()).ToList() }); }