//  ******************* BORRA UNA PROMOCION SELECCIONADA ********************************
 public static void BorrarPromocion()
 {
     try{
         Menu.BannerPromociones("Baja Promociones");
         Console.WriteLine("\n\n Seleccione PROMOCION a eliminar!");
         Promocion.ImprimirPromociones(EstacionServicio.promociones);
         int indice = int.Parse(Console.ReadLine());
         Promocion.BajaPromocion(EstacionServicio.promociones, indice);
     }
     catch (ArgumentOutOfRangeException) {
         //Menu.BannerPromociones("Baja Promociones");
         Console.WriteLine(" El índice estaba fuera del intervalo. Debe ser un valor no negativo e inferior al tamaño de la colección.");
         Console.ReadLine();
         Console.Clear();
         BorrarPromocion();
     }
     catch (FormatException) {
         //Menu.BannerPromociones("Baja Promociones");
         Console.WriteLine("Error ingrese un valor numerico entero");
         Console.ReadLine();
         Console.Clear();
         BorrarPromocion();
     }
 }
Beispiel #2
0
 //***********************************************************CARGAR COMBUSTIBLE************************************************************************
 //pide nro de surtidor a ocupar, los litros de combustible cargados, calcula monto con descuento de corresponder
 //suma monto de descuento al total de descuentos y agrega la venta al arreglo correspondiente
 public static void CargarCombustible()
 {
     Menu.BannerSurtidores("Cargar combustible");
     Console.WriteLine("Ingrese el nro de surtidor a ocupar: \n");
     try{
         int      surtidornumero   = int.Parse(Console.ReadLine());
         Surtidor surtidorAsociado = null;
         float    montoDescuento   = 0;
         foreach (Surtidor s in EstacionServicio.surtidoresOn)
         {
             if (s.Numero_de_surtidor == surtidornumero)
             {
                 surtidorAsociado = s;
             }
         }
         Console.WriteLine("Ingrese cantidad de litros cargados: \n");
         surtidorAsociado.Cantidad_litros_ventidos_en_una_venta = float.Parse(Console.ReadLine());
         float     monto             = surtidorAsociado.Cantidad_litros_ventidos_en_una_venta * surtidorAsociado.Precio_litro;
         Promocion promocionAplicada = null;
         Console.WriteLine("Paga con alguna promocion?s/n \n");
         string aplicaPromo = Console.ReadLine();
         if (aplicaPromo.ToLower() == "s")
         {
             if (EstacionServicio.promociones.Count == 0)
             {
                 Console.WriteLine("No hay promociones dadas de alta\n");
             }
             else
             {
                 Promocion.ImprimirPromociones(EstacionServicio.promociones);
                 Console.WriteLine("Ingrese tipo de promocion a utilizar:\n");
                 int nroPromo = int.Parse(Console.ReadLine());
                 promocionAplicada = (Promocion)EstacionServicio.promociones[nroPromo - 1];
                 if (promocionAplicada.Tipo_promocion.ToLower() == "porcentual")
                 {
                     montoDescuento = (monto * (Convert.ToSingle(promocionAplicada.Descuento) / 100));
                     EstacionServicio.montoTotalDescuentos += montoDescuento;                          //****************************agrego el monto descontado al monto total de los descuentos*********************************************
                     monto -= montoDescuento;
                     Console.WriteLine("\nEl monto total de la venta con descuento es: $" + monto + "\n");
                 }
             }
         }
         else
         {
             Console.WriteLine("\nEl monto total de la venta es: $" + monto + "\n");
         }
         surtidorAsociado.Stock_combustible -= surtidorAsociado.Cantidad_litros_ventidos_en_una_venta;
         EstacionServicio.ventas.Add(new Venta(monto, surtidorAsociado.Cantidad_litros_ventidos_en_una_venta, surtidorAsociado.Playedo_asignado, surtidorAsociado, promocionAplicada, montoDescuento));
     }
     catch (FormatException) {
         Console.WriteLine("Entrada invalida, Ingrese un valor numerico\n");
         Console.ReadKey();
         Console.Clear();
         CargarCombustible();
     }
     catch (NullReferenceException) {
         Console.WriteLine("\nEl surtidor elegido no se encuentra habilitado");
         Console.ReadKey();
         Console.Clear();
         CargarCombustible();
     }
 }
 //  *******************   IMPRIME PROMOCIONES VIGENTES  CON MENU  ****************************
 public static void ListarPromociones(string op, ArrayList promociones)
 {
     Menu.BannerPromociones(op);
     Promocion.ImprimirPromociones(promociones);
 }