public Dto_ProductNode AddProduct(Dto_Product product) { Dto_ProductNode productNode = new Dto_ProductNode(); productNode.Product = product; if (Head == null) { Head = productNode; } else { Dto_ProductNode last = Head; while (last.Next != null) { last = last.Next; } last.Next = productNode; } return(Head); }
public Tuple <Dto_Client, Dto_Seller, Dto_Product> selectItemsForSale(string typeNode, Dto_ClientNode clientsNode, Dto_SellerNode sellersNode, Dto_ProductNode productsNode) { string type = "false"; int countProducts = 1; int countClients = 1; int countSellers = 1; Dto_Client client = null; Dto_Seller seller = null; Dto_Product product = null; Dto_ProductNode lastProductsCount = productsNode; Dto_ClientNode lastClientsCount = clientsNode; Dto_SellerNode lastSellersCount = sellersNode; while (lastProductsCount.Next != null) { countProducts++; lastProductsCount = lastProductsCount.Next; } while (lastClientsCount.Next != null) { countClients++; lastClientsCount = lastClientsCount.Next; } while (lastSellersCount.Next != null) { countSellers++; lastSellersCount = lastSellersCount.Next; } Console.WriteLine("\nEscribe el codigo del " + typeNode + " que desea adicionar"); int Code = int.Parse(Console.ReadLine()); while (type == "false") { if (typeNode == "producto") { Dto_ProductNode lastProduct = productsNode; for (int i = 0; i < countProducts; i++) { if (lastProduct.Product.Code == Code) { product = lastProduct.Product; type = "true"; } lastProduct = lastProduct.Next; } } else if (typeNode == "cliente") { Dto_ClientNode lastClient = clientsNode; for (int i = 0; i < countClients; i++) { if (lastClient.Client.Code == Code) { client = lastClient.Client; type = "true"; } lastClient = lastClient.Next; } } else { Dto_SellerNode lastSeller = sellersNode; for (int i = 0; i < countSellers; i++) { if (lastSeller.Seller.Code == Code) { seller = lastSeller.Seller; type = "true"; } lastSeller = lastSeller.Next; } } if (type == "false") { Console.WriteLine("\nEscribe otro codigo de " + typeNode + " ya que el codigo " + Code + " no se encuentra disponible"); Code = int.Parse(Console.ReadLine()); } } return(Tuple.Create(client, seller, product)); }
public Dto_ProductNode UpdateProducts(Dto_ProductNode productsNode) { Dto_ProductNode Head = productsNode; LogicStoreSystem logicStoreSystem = new LogicStoreSystem(); int selectedMode = logicStoreSystem.selectedMode("producto"); if (selectedMode == 1) { Dto_Product product = new Dto_Product(); Console.WriteLine("\nNombre: "); product.Name = Console.ReadLine(); Console.WriteLine("Precio: "); product.Price = Double.Parse(Console.ReadLine()); Console.WriteLine("Categoria: "); product.Category = Console.ReadLine(); Console.WriteLine("Stock: "); product.Stock = int.Parse(Console.ReadLine()); Dto_ProductNode newProductNode = new Dto_ProductNode(); newProductNode.Product = product; Dto_ProductNode last = Head; while (last.Next != null) { last = last.Next; } product.Code = last.Product.Code + 1; last.Next = newProductNode; } else if (selectedMode == 2) { Dto_ProductNode products; Dto_ProductNode baseProductNode = productsNode; Dto_ProductNode iterator = productsNode; Dto_ProductNode last = productsNode; string type = "false"; Console.WriteLine("\n¿Que codigo deseas eliminar?: "); int deleteCode = int.Parse(Console.ReadLine()); int countProducts = 1; if (last != null) { while (last.Next != null) { countProducts++; last = last.Next; } while (type == "false") { for (int i = 0; i < countProducts; i++) { if (iterator.Product.Code == deleteCode) { products = iterator.Next; if (deleteCode == baseProductNode.Product.Code) { productsNode = baseProductNode.Next; type = "true"; break; } else { while (baseProductNode.Product.Code != deleteCode) { if (baseProductNode.Next != null & baseProductNode.Next.Product.Code != deleteCode) { baseProductNode = baseProductNode.Next; type = "true"; } else { type = "true"; break; } } baseProductNode.Next = products; } } iterator = iterator.Next; } if (type == "false") { Console.WriteLine("\nEl codigo que deseas eliminar no existe, por favor elige otro"); deleteCode = int.Parse(Console.ReadLine()); iterator = productsNode; Console.WriteLine(" "); } } } else { Console.WriteLine("\nNo cuentas con ningun Producto, por favor selecciona la opcion de agregar o continua"); } } return(productsNode); }