Ejemplo n.º 1
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            if (detallesVentaDataGridView.Rows.Count == 0)
            {
                MessageBox.Show("¡Aún no hay nada en el carrito!", "Rellenar", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                ventasBindingSource.EndEdit();
                Ventas ven = new Ventas();
                ven = ((Ventas)ventasBindingSource.Current);
                CVentas cVentas = new CVentas();
                cVentas.RegistrarVenta(ven);

                CDetallesVenta cDetalles = new CDetallesVenta();
                cDetalles.GuardarMaestroDetalle(detalles);

                MessageBox.Show("¡Ventas Realizada con éxito!", "Compra", MessageBoxButtons.OK, MessageBoxIcon.Information);

                DialogResult result = MessageBox.Show("¿DESEA EMITIR UNA FACTURA?", "", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                if (result == DialogResult.OK)
                {
                    Process.Start(@"http://cordova/Reports/browse/InformesMinisuper");
                }
            }

            detallesVentaDataGridView.Rows.Clear();
            if (detallesVentaDataGridView.Rows.Count == 0)
            {
                totalVentaTextBox.Text = "0.00";
            }
        }
Ejemplo n.º 2
0
        public int Insertar(Venta venta, List <ProductoPOS> detalles)
        {
            string            consulta   = "insert into Ventas values (@Fecha,@IdCliente_FK,@IdEmpleado_FK,@TipoDocumento,@Correlativo,@IdCorrelativo_FK,@Total,@Efectivo,@Cambio)";
            DynamicParameters parametros = new DynamicParameters();
            int idventa;

            parametros.Add("@Fecha", venta.Fecha, DbType.DateTime);
            parametros.Add("@IdCliente_FK", venta.IdCliente_FK, DbType.Int32);
            parametros.Add("@IdEmpleado_FK", venta.IdEmpleado_FK, DbType.Int32);
            parametros.Add("@TipoDocumento", venta.TipoDocumento, DbType.Int32);
            parametros.Add("@Correlativo", venta.Correlativo, DbType.Int64);
            parametros.Add("@IdCorrelativo_FK", venta.IdCorrelativo_FK, DbType.Int32);
            parametros.Add("@Total", venta.Total, DbType.Decimal);
            parametros.Add("@Efectivo", venta.Efectivo, DbType.Decimal);
            parametros.Add("@Cambio", venta.Cambio, DbType.Decimal);
            cn.Open();
            cn.Execute(consulta, parametros, commandType: CommandType.Text);
            idventa = cn.QuerySingle <int>("Select max(IdVenta) id from ventas", commandType: CommandType.Text);
            cn.Close();

            CCorrelativo correlativo = new CCorrelativo();

            correlativo.ActualizarCorrelativo(venta.IdCorrelativo_FK);

            CDetallesVenta      detalle    = new CDetallesVenta();
            CDetallesInventario inventario = new CDetallesInventario();

            foreach (ProductoPOS p in detalles)
            {
                DetallesVenta det = new DetallesVenta();
                det.Cantidad = p.Cantidad;
                det.IdDetalleInventario_FK = p.IdDetalleInventario;
                det.IdVenta_FK             = idventa;
                det.PrecioVenta            = p.Precio;

                detalle.Insertar(det);

                inventario.disminuirExistencias(det.IdDetalleInventario_FK, det.Cantidad.Value);
            }
            return(idventa);
        }