Пример #1
0
        /// <summary>
        /// Crea una nueva factura en el sistema, lo que implica que una determinada orden de venta ha sido aprobada
        /// Por cada orden de venta o pedido debera crearse una factura que la respalde
        /// </summary>
        /// <param name="factura">Factura a crear</param>
        public void Crear(Factura factura)
        {
            ValidarFactura(factura);

            Datos.OrdenesVentaDAL dalOrdenesVenta = dal.ObtenerOrdenesVentaDAL();
            Datos.OrdenVenta      ordenVentaDAL   = dalOrdenesVenta.Obtener(factura.OrdenVenta.Id);

            if (ordenVentaDAL == null)
            {
                throw new OBMCateringException(Resources.BL_Validaciones_OrdenVentaInvalida);
            }

            Datos.Factura facturaDAL = new Datos.Factura
            {
                Fecha      = factura.Fecha,
                Cobrada    = factura.Cobrada,
                OrdenVenta = ordenVentaDAL
            };

            Datos.FacturasDAL dalFacturas = dal.ObtenerFacturasDAL();

            dalFacturas.Crear(facturaDAL);
            dal.Guardar();
        }