コード例 #1
0
        private bool AgregarVentaItemSuelto(ModeloVenta.Producto producto)
        {
            ProductoSueltoForm productoSueltoForm = new ProductoSueltoForm();

            if (productoSueltoForm.ShowDialog() == DialogResult.Cancel)
            {
                return(false);
            }

            decimal montoSuelto = productoSueltoForm.Monto;

            VentaItems.Add(new VentaItem(producto, 1, montoSuelto));

            return(true);
        }
コード例 #2
0
        private bool AgregarVentaItem(ModeloVenta.Producto producto)
        {
            int cantidad = Cantidad > 0 ? Cantidad : 1;

            VentaItem ventaItems = VentaItems.FirstOrDefault(x => x.Codigo == producto.Codigo);

            if (ventaItems == null)
            {
                VentaItems.Add(new VentaItem(producto, cantidad, producto.Precio));
            }
            else
            {
                ventaItems.Cantidad += cantidad;
            }

            return(true);
        }
コード例 #3
0
        internal async Task CargarProductoAsync(string productoDescripcion)
        {
            Modelo.Producto productoModel = await ProductoService.Obtener(productoDescripcion);

            if (ProductoSeleccionado != null && ProductoSeleccionado == productoModel)
            {
                Cantidad++;
            }
            else
            {
                ProductoSeleccionado = productoModel;
                Cantidad             = 1;
                PrecioUnitario       = productoModel.Precio;
            }

            NotifyPropertyChanged(nameof(Subtotal));
        }
コード例 #4
0
        internal void PruebaTicket()
        {
            Modelo.Producto         productoPrueba = new Modelo.Producto("0123456789", "Producto prueba ticket", false, 100, 1, true);
            List <Modelo.VentaItem> ventaItems     = new List <Modelo.VentaItem>();

            ventaItems.Add(new Modelo.VentaItem(productoPrueba, 1, 100));
            ventaItems.Add(new Modelo.VentaItem(productoPrueba, 2, 100));
            ventaItems.Add(new Modelo.VentaItem(productoPrueba, 3, 100));
            ventaItems.Add(new Modelo.VentaItem(productoPrueba, 4, 100));
            Modelo.Pago  pago  = new Modelo.Pago(FormaPago.Efectivo, 1000, 1200, 0, 0);
            Modelo.Venta venta = new Modelo.Venta("Prueba", ventaItems, pago);

            string[] cabeceras = CabeceraTicket.Split(new string[] { "\r\n" }, StringSplitOptions.None);
            string[] pie       = PieTicket.Split(new string[] { "\r\n" }, StringSplitOptions.None);
            Ticket   ticket    = new Ticket(NombreSucursal, DireccionSucursal, SeparadorTicket, cabeceras, pie, venta);

            Impresora impresora = new Impresora(Settings.Default.ImpresoraNombre, ticket);

            impresora.Imprimir();
        }
コード例 #5
0
        internal async Task AgregarAsync()
        {
            ModeloVenta.Producto producto = await BuscarProducto();

            bool productoAgregado;

            if (producto.Suelto)
            {
                productoAgregado = AgregarVentaItemSuelto(producto);
            }
            else
            {
                productoAgregado = AgregarVentaItem(producto);
            }

            if (productoAgregado)
            {
                Inicializar(productoAgregado);
            }

            NotifyPropertyChanged(nameof(VentaItems));
        }
コード例 #6
0
        private async Task <ModeloVenta.Producto> BuscarProducto()
        {
            if (string.IsNullOrWhiteSpace(CodigoDescripcion))
            {
                throw new NegocioException(Resources.productoNoExiste);
            }

            VentaItem ventaItem = VentaItems.Where(x => x.Codigo == CodigoDescripcion || x.Descripcion == CodigoDescripcion).FirstOrDefault();

            if (ventaItem != null)
            {
                return(ventaItem.Producto);
            }

            ModeloVenta.Producto producto = await ProductoService.Obtener(CodigoDescripcion);

            if (producto == null)
            {
                throw new NegocioException(Resources.productoNoExiste);
            }

            return(producto);
        }
コード例 #7
0
ファイル: VentaItem.cs プロジェクト: santiagots/MinPOS
 public VentaItem(Modelo.Producto producto, int cantidad, decimal precio)
 {
     Producto = producto;
     Cantidad = cantidad;
     Precio   = precio;
 }