Ejemplo n.º 1
0
 public IVendible Aplicar(IVendible venta)
 {
     foreach (var v in promociones)
     {
         venta = v(venta);
     }
     return(venta);
 }
Ejemplo n.º 2
0
        private static double FacturarUnitario(IVendible obj)
        {
            double total = 0;

            total = obj.Vender();

            return(total);
        }
Ejemplo n.º 3
0
 public Oferta(Producto producto, int cantidad)
 {
     if (cantidad == 3)
     {
         venta = new Oferta3x2(producto, cantidad);
     }
     else if (cantidad == 1)
     {
         venta = new Venta(producto, cantidad);
     }
     else
     {
         venta = new Oferta2x1(producto, cantidad);
     }
 }
Ejemplo n.º 4
0
 public Ram(IVendible vendible) : base(vendible)
 {
 }
Ejemplo n.º 5
0
 public Polarizado(IVendible vendible) : base(vendible)
 {
     SetDescripcion("Polarizado");
     SetPrecio(3200);
 }
Ejemplo n.º 6
0
 public AsientoCuero(IVendible vendible) : base(vendible)
 {
     SetDescripcion("Asiento de cuero");
     SetPrecio(17000);
 }
Ejemplo n.º 7
0
 public OfertaLoca(IVendible venta)
 {
     this.venta = venta;
 }
Ejemplo n.º 8
0
 public Mayorista(IVendible venta)
 {
     this.venta = venta;
 }
Ejemplo n.º 9
0
 public Descuento(IVendible venta)
 {
     this.venta = venta;
 }
Ejemplo n.º 10
0
 public AutomovilDecorator(IVendible vendible)
 {
     SetVendible(vendible);
 }
Ejemplo n.º 11
0
 public CubreCarter(IVendible vendible) : base(vendible)
 {
     SetDescripcion("Chapón cubre carter");
     SetPrecio(4350);
 }
Ejemplo n.º 12
0
 public Auditoria(IVendible venta)
 {
     this.venta = venta;
 }
Ejemplo n.º 13
0
 public void Agregar(IVendible venta)
 {
     ventas.Add(venta);
 }
Ejemplo n.º 14
0
 public CajaAutomatica(IVendible vendible) : base(vendible)
 {
     SetDescripcion("Caja automática");
     SetPrecio(21000);
 }
Ejemplo n.º 15
0
 public void SetVendible(IVendible vendible)
 {
     _vendible = vendible;
 }
Ejemplo n.º 16
0
 public LlantasAleacion(IVendible vendible) : base(vendible)
 {
     SetDescripcion("Llantas de aleación");
     SetPrecio(9500);
 }
Ejemplo n.º 17
0
 public static void Vender(IVendible x, Persona p) => x.SeVendeA(p);
Ejemplo n.º 18
0
 public GraphicCard(IVendible vendible) : base(vendible)
 {
 }
Ejemplo n.º 19
0
 protected PcDecorator(IVendible vendible)
 {
     Vendible = vendible;
 }
Ejemplo n.º 20
0
 public Factura Agregar(IVendible venta)
 {
     ventas.Add(venta);
     return(this); // Esto es para que se pueden usar interface fluidas
 }
Ejemplo n.º 21
0
        // Ejemplo de uso de interface para delegar funcionalidad
        // Padron: Decorador

        static void Mostrar(IVendible venta)
        {
            Console.WriteLine($"El importe es {venta.Importe}");
        }