public void ObtenTodos(Dictionary<string, clsProductosCatalogo> productos) { string nombreArchivo = ControlPedidos.rutaArchivo + "\\Productos.txt"; if(File.Exists(nombreArchivo)) { TextReader txtReader; string linea; clsProductosCatalogo producto = new clsProductosCatalogo(); productos.Clear(); using (txtReader = new StreamReader(nombreArchivo)) { do { linea = txtReader.ReadLine(); if (linea != null) { string[] campos = linea.Split(','); producto = new clsProductosCatalogo(); producto.idProducto = Convert.ToInt32(campos[0]); producto.Clave = campos[1]; producto.CodigoBarras = campos[2]; producto.Descripcion = campos[3]; producto.EsMontoIeps = Convert.ToBoolean(campos[4]); producto.Ieps = Convert.ToDecimal(campos[5]); producto.PorcentajeIva = Convert.ToDecimal(campos[6]); producto.Precio = Convert.ToDecimal(campos[7]); producto.Precio2 = Convert.ToDecimal(campos[8]); producto.Precio3 = Convert.ToDecimal(campos[9]); productos.Add(producto.Clave, producto); } } while (linea != null); txtReader.Close(); } } }
public clsProductosPedido(clsProductosCatalogo productoDeCatalogo, TipoCliente tipo, decimal cantidad) { idProducto = productoDeCatalogo.idProducto; Clave = productoDeCatalogo.Clave; CodigoBarras = productoDeCatalogo.CodigoBarras; Descripcion = productoDeCatalogo.Descripcion; PorcentajeIva = productoDeCatalogo.PorcentajeIva; Ieps = productoDeCatalogo.Ieps; EsMontoIeps = productoDeCatalogo.EsMontoIeps; Cantidad = cantidad; switch (tipo) { case TipoCliente.Publico: Precio = productoDeCatalogo.Precio; break; case TipoCliente.Medio: Precio = productoDeCatalogo.Precio2; break; case TipoCliente.Mayoreo: Precio = productoDeCatalogo.Precio3; break; default: Precio = productoDeCatalogo.Precio; break; } MontoIva = DesglosaIva(); decimal precioSinIvaSinIepsCalculado = 0m; MontoIeps = DesglosaIeps(out precioSinIvaSinIepsCalculado); PrecioSinIvaSinIeps = precioSinIvaSinIepsCalculado; Subtotal = PrecioSinIvaSinIeps * Cantidad; Total = Subtotal + MontoIva + MontoIeps; }
public void Modifica(clsProductosCatalogo producto) { //throw new NotImplementedException(); }
public static void AgregaProductoAlPedido() { clsRepositorioArchivoProductos repo = new clsRepositorioArchivoProductos(); clsProductosCatalogo producto = new clsProductosCatalogo(); colProductosCatalogo Productos = new colProductosCatalogo(repo); Console.WriteLine("1. Buscar por clave"); Console.WriteLine("2. Buscar por nombre"); string opcion = Console.ReadLine(); int valor = 0; if (int.TryParse(opcion, out valor)) { if (valor == 1) { Console.WriteLine("Dame la clave del producto:"); opcion = Console.ReadLine(); if (Productos.BuscaPorClave(opcion, ref producto)) { Console.WriteLine("Dame la cantidad:"); string opcion2 = Console.ReadLine(); decimal cantidad = Convert.ToDecimal(opcion2); clsProductosPedido productoPedido = new clsProductosPedido(producto, Pedido.Cliente.Tipo, cantidad); Pedido.AgregaItem(productoPedido); } else { Console.WriteLine("No se encontró el producto con clave {0}", opcion); Console.ReadKey(); } } else { Console.WriteLine("Dame el inicio de la descripcion:"); opcion = Console.ReadLine(); List <clsProductosCatalogo> resultado = new List <clsProductosCatalogo>(); resultado = Productos.ObtenPorDescripcion(opcion); if (resultado.Count > 0) { for (int i = 0; i < resultado.Count; i++) { Console.WriteLine((i + 1).ToString() + ". " + resultado[i].Descripcion); } Console.WriteLine("Selecciona el producto:"); string opcion2 = Console.ReadLine(); int indice = Convert.ToInt32(opcion2); Console.WriteLine("Dame la cantidad:"); opcion2 = Console.ReadLine(); decimal cantidad = Convert.ToDecimal(opcion2); clsProductosPedido productoPedido = new clsProductosPedido(resultado[indice - 1], Pedido.Cliente.Tipo, cantidad); Pedido.AgregaItem(productoPedido); } else { Console.WriteLine("No existen productos con el inicio {0}", opcion); Console.ReadKey(); } } } }
public bool BuscaPorClave(string clave, ref clsProductosCatalogo producto) { producto = new clsProductosCatalogo(); return(Items.TryGetValue(clave, out producto)); }