예제 #1
0
 public static void ModificarPrecio(VentaRepuestos vtaRep)
 {
     try
     {
         if (vtaRep.TieneRepuesto > 0)
         {
             Console.WriteLine("MODIFICAR PRECIO.\n");
             vtaRep.ListarRepuestos();
             int    codigo = ConsolaHelper.PedirCodigoRepuesto(0, 999999);
             double precio = ConsolaHelper.PedirPrecio(1, 99999);
             vtaRep.ModificarPrecio(codigo, precio);
             Console.WriteLine("\nPrecio del codigo " + codigo + " ha sido modificado correctamente.");
         }
         else
         {
             Console.WriteLine("No hay repuesto a los cuales haya que cambiar el precio.");
         }
     }
     catch (SinStockException ex)
     {
         Console.WriteLine(ex.Message);
     }
     catch (CodigoInexistenteException ex)
     {
         Console.WriteLine(ex.Message);
     }
     Console.ReadKey();
 }
        private static void ModificarPrecio(VentaRepuestos local)
        {
            Validations.Duda("Es correcta esta forma de trabajar con el loop y la excepcion?");
            bool loop = true;

            do
            {
                try
                {
                    int codigoRepuesto = Validations.IntInsert("Ingrese el codigo del repuesto al que desea cambiarle el precio", 0, int.MaxValue);
                    loop = local.VerificarCodigoRepuesto(codigoRepuesto);

                    double precioNuevo = Validations.DoubleInsert("Ingrese el nuevo precio", 0, double.MaxValue);

                    local.ModificarPrecio(codigoRepuesto, precioNuevo);
                }
                catch (PrecioMenorCeroException)
                {
                    loop = true;
                }
            } while (loop);
        }
예제 #3
0
        static void ModificarPrecio(VentaRepuestos E)
        {
            Validaciones  V = new Validaciones();
            ConsolaHelper H = new ConsolaHelper();

            try
            {
                if (E.CantidadRepuestos() == 0)
                {
                    throw new ListaVaciaRepuestoException();
                }
                else
                {
                    H.MostrarMensaje("\nPor favor seleccione el codigo de repuesto a eliminar: \n" +
                                     "Lista de repuestos: ");

                    E.ListaRepuestos();
                }


                //PIDO CODIGO A ELIMINAR
                string _srtCodigoR;
                int    _codigoR = 0;
                bool   _flag1;
                do
                {
                    _srtCodigoR = H.PedirCodigoEliminar();
                    _flag1      = V.ValidarCodigoRepuesto(_srtCodigoR, ref _codigoR);
                } while (!_flag1);

                try
                {
                    if (E.BuscarCodigoRepuesto(_codigoR) == null)
                    {
                        throw new RepuestoInexistenteException();
                    }
                    else
                    {
                        //PIDO EL NUEVO PRECIO
                        string _strPrecio;
                        double _precio = 0;
                        bool   _flag2;
                        do
                        {
                            _strPrecio = H.PedirPrecio();
                            _flag2     = V.ValidarPrecio(_strPrecio, ref _precio);
                        } while (!_flag2);

                        Repuesto R = new Repuesto();
                        E.ModificarPrecio(_codigoR, _precio, ref R);

                        H.MostrarMensaje("Precio modificado con Exito! \n");
                        H.MostrarMensaje("El repuesto de codigo {0} ahora tiene un precio de $ {1}", R.Codigo, R.Precio);
                    }
                }
                catch (RepuestoInexistenteException e)
                {
                    H.MostrarMensaje(e.Message);
                }
            }
            catch (ListaVaciaRepuestoException e)
            {
                H.MostrarMensaje(e.Message);
            }
        }
예제 #4
0
        static void Main(string[] args)
        {
            VentaRepuestos e1 = new VentaRepuestos("Repuestos DeTodo", "Calle Falsa 123");
            Categoria      c1 = new Categoria(1, "general");
            Categoria      c2 = new Categoria(2, "especifico");
            Categoria      c3 = new Categoria(3, "raro");

            Console.WriteLine("Bienvenido a: " + e1.NombreComercio);

            bool finalizar = false;

            do
            {
                int eleccion = ConsolaHelper.PedirNumero(
                    "\nSelecione opción: \n" +
                    "1- Agregar Repuesto \n" +
                    "2- Quitar Repuesto \n" +
                    "3- Modificar Precio \n" +
                    "4- Agregar Stock \n" +
                    "5- Quitar Stock \n" +
                    "6- Traer por Categoria \n" +
                    "7- Salir \n");


                if (eleccion > 7 || eleccion < 0)
                {
                    ConsolaHelper.Mensaje("\n--Debe ingresar una opción válida--\n");
                }

                else
                {
                    switch (eleccion)
                    {
                    case 1:

                        e1.AgregarRepuesto(
                            ConsolaHelper.PedirNumero("\nIngrese código del repuesto\n"),
                            ConsolaHelper.PedirTexto("\nIngrese nombre del repuesto\n"),
                            ConsolaHelper.PedirDouble("\nIngrese precio del repuesto\n"),
                            ConsolaHelper.PedirNumero("\nIngrese stock inicial\n"),
                            ConsolaHelper.PedirNumero("\nIngrese código de la categoria\n"));;
                        break;

                    case 2:
                        try
                        {
                            e1.QuitarRepuesto(ConsolaHelper.PedirNumero("\nIngrese código del repuesto a quitar\n"));
                        }
                        catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); }
                        break;

                    case 3:
                        try
                        {
                            e1.ModificarPrecio(
                                ConsolaHelper.PedirNumero("\nIngrese código del repuesto a modificar precio\n"),
                                ConsolaHelper.PedirDouble("\nIngrese nuevo precio\n"));
                        }
                        catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); }
                        break;

                    case 4:
                        try
                        {
                            e1.AgregarStock(
                                ConsolaHelper.PedirNumero("\nIngrese código del repuesto a modificar stock\n"),
                                ConsolaHelper.PedirNumero("\nIngrese stock a agregar\n"));
                        }
                        catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); }
                        break;

                    case 5:
                        try
                        {
                            e1.QuitarStock(
                                ConsolaHelper.PedirNumero("\nIngrese código del repuesto a modificar stock\n"),
                                ConsolaHelper.PedirNumero("\nIngrese stock a quitar\n"));
                        }
                        catch (StockNegativoException ex2) { ConsolaHelper.Mensaje(ex2.Message); }
                        catch (Exception ex1) { ConsolaHelper.Mensaje(ex1.Message); }
                        break;

                    case 6:
                        string listado = null;
                        foreach (Repuesto rep in e1.TraerPorCategoria(ConsolaHelper.PedirNumero("\nIngrese código de la categoría\n")))
                        {
                            listado += rep.ToString() + "\n";
                        }
                        ConsolaHelper.Mensaje("\n" + listado);
                        break;

                    case 7:
                        finalizar = true;
                        break;
                    }
                }
            } while (finalizar == false);
        }