public FacturaCrudFactory() { this.facturaMapper = new FacturaMapper(); this.lineaFacturaMapper = new LineaFacturaMapper(); this.impuestoCrudFactory = new ImpuestoCrudFactory(); this.itemCrudFactory = new ItemCrudFactory(); this.dao = SqlDao.GetInstance(); }
public static bool FinalizarCompra(Carrito carrito) { // Antes de hacer la factura verifico que los vehículos todavía estén disponibles foreach (CarritoDetalle detalle in carrito.Detalles) { if (!VehiculoMapper.EstaDisponible(detalle.Vehiculo)) { return(false); } } Factura factura = new Factura { Fecha = DateTime.Now, Usuario = carrito.Usuario, Carrito = carrito, Detalles = carrito.Detalles.Select(d => new FacturaDetalle { Vehiculo = d.Vehiculo, Cantidad = d.Cantidad, Precio = d.Precio }).ToList() }; bool guardadoOk = FacturaMapper.Guardar(factura); if (guardadoOk) { // Tengo que marcar los vehículos como No disponibles debido a que ya están facturados foreach (FacturaDetalle detalle in factura.Detalles) { VehiculoMapper.MarcarNoDisponible(detalle.Vehiculo); } } return(guardadoOk); }
public FacturaCrudFactory() : base() { mapper = new FacturaMapper(); dao = SqlDao.GetInstance(); }