/// <summary> /// Deprecated Method for adding a new object to the ProductsInInvoices EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToProductsInInvoices(ProductsInInvoice productsInInvoice) { base.AddObject("ProductsInInvoices", productsInInvoice); }
public static void UpdateInvoice(InvoiceModel invoiceModel) { var storageDbEntities = new StorageDBEntities(); Invoice invoice = storageDbEntities.Invoices.Where(inv => inv.ID == invoiceModel.ID && inv.UserID == UserHelper.UserID).FirstOrDefault(); if (invoice != null) { // updates invoice metadata invoice.SupplierID = invoiceModel.Supplier.ID; invoice.RecipientID = invoiceModel.Recipient.ID; invoice.PriceType = invoiceModel.PriceType; foreach (var productInInvoice in invoice.ProductsInInvoices.ToList()) { ProductsInInvoiceModel productsInInvoiceModel = invoiceModel.Products.Where(p => p.ProductID == productInInvoice.ProductID).FirstOrDefault(); // product was updated by user if (productsInInvoiceModel != null) { productInInvoice.Price = productsInInvoiceModel.Price; productInInvoice.Quantity = productsInInvoiceModel.Quantity; invoiceModel.Products.Remove(productsInInvoiceModel); } // product was deleted by user else { storageDbEntities.ProductsInInvoices.DeleteObject(productInInvoice); } } // products were created by user foreach (var productsInInvoiceModel in invoiceModel.Products.Where(p => p.ProductID > 0).ToList()) { ProductsInInvoice productsInInvoice = new ProductsInInvoice { Price = productsInInvoiceModel.Price, Quantity = productsInInvoiceModel.Quantity, ProductID = productsInInvoiceModel.ProductID }; invoice.ProductsInInvoices.Add(productsInInvoice); } storageDbEntities.SaveChanges(); } }
/// <summary> /// Create a new ProductsInInvoice object. /// </summary> /// <param name="id">Initial value of the ID property.</param> /// <param name="productID">Initial value of the ProductID property.</param> /// <param name="invoiceID">Initial value of the InvoiceID property.</param> /// <param name="quantity">Initial value of the Quantity property.</param> /// <param name="price">Initial value of the Price property.</param> public static ProductsInInvoice CreateProductsInInvoice(global::System.Int32 id, global::System.Int32 productID, global::System.Int32 invoiceID, global::System.Double quantity, global::System.Decimal price) { ProductsInInvoice productsInInvoice = new ProductsInInvoice(); productsInInvoice.ID = id; productsInInvoice.ProductID = productID; productsInInvoice.InvoiceID = invoiceID; productsInInvoice.Quantity = quantity; productsInInvoice.Price = price; return productsInInvoice; }
public static void SaveInvoice(InvoiceModel invoiceModel) { if (UserHelper.UserID != null) { var storageDbEntities = new StorageDBEntities(); Invoice invoice = new Invoice { SupplierID = invoiceModel.Supplier.ID, RecipientID = invoiceModel.Recipient.ID, Date = invoiceModel.Date, Type = invoiceModel.Type, Number = invoiceModel.Number, PriceType = invoiceModel.PriceType, UserID = UserHelper.UserID.Value }; foreach (ProductsInInvoiceModel productsInInvoiceModel in invoiceModel.Products.Where(p => p.ProductID > 0).ToList()) { ProductsInInvoice productsInInvoice = new ProductsInInvoice { Price = productsInInvoiceModel.Price, Quantity = productsInInvoiceModel.Quantity, ProductID = productsInInvoiceModel.ProductID }; invoice.ProductsInInvoices.Add(productsInInvoice); } storageDbEntities.Invoices.AddObject(invoice); storageDbEntities.SaveChanges(); } }