コード例 #1
0
        public void LlenarDatos(Ventas ventas)
        {
            int id;
            int.TryParse(VentaIdtextBox.Text,out id);
            float descuentos;
            float.TryParse(DescuentostextBox.Text,out descuentos);

            ventas.Fecha = FechamaskedTextBox.Text;
            ventas.Descuentos = descuentos;
            ventas.TipoVenta = TipoVentatextBox.Text;
            ventas.TipoComprobanteFiscal = TipoNFCtextBox.Text;
            ventas.NFC = NFCtextBox.Text;
            ventas.ClienteId = (int)ClientecomboBox.SelectedValue;
        }
コード例 #2
0
 private void Guardarbutton_Click(object sender, EventArgs e)
 {
     Ventas ventas = new Ventas();
     if(VentaIdtextBox.TextLength == 0)
     {
         LlenarDatos(ventas);
         if (ventas.Insertar())
         {
             MessageBox.Show("Venta Registrada","Mensaje",MessageBoxButtons.OK,MessageBoxIcon.Information);
             Nuevobutton.PerformClick();
         }
         else
         {
             MessageBox.Show("No se pudo registrar la venta","Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
コード例 #3
0
        private void BuscarButton_Click(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            Ventas ventas = new Ventas();
            string condicion;

            if(VentasComboBox.SelectedIndex == 0)
            {
                if(VentasTextBox.TextLength == 0)
                {
                    condicion = "1=1";
                }
                else
                {
                    condicion = string.Format("VentaId = {0}", VentasTextBox.Text);
                }
                dt = ventas.Listado("*",condicion,"");
                VentasDataGridView.DataSource = dt;
            }
        }
コード例 #4
0
        public static void SumarCantidad(Ventas ventas)
        {
            List <Articulos> articulos = ArticulosBLL.GetList(ar => true);

            if (articulos != null)
            {
                foreach (var articulo in articulos)
                {
                    decimal Cantidad = articulo.Stock;

                    foreach (var venta in ventas.VentasDetalle)
                    {
                        Cantidad += venta.Cantidad;
                    }

                    articulo.Stock = Cantidad;

                    ArticulosBLL.Guardar(articulo);
                }
            }
        }
コード例 #5
0
        public static bool Eliminar(int id)
        {
            bool     paso = false;
            Contexto db   = new Contexto();
            RepositorioBase <Ventas>    vent   = new RepositorioBase <Ventas>();
            RepositorioBase <Productos> prod   = new RepositorioBase <Productos>();
            RepositorioBase <Clientes>  client = new RepositorioBase <Clientes>();


            try
            {
                Ventas venta   = db.Ventas.Find(id);
                var    cliente = client.Buscar(venta.ClienteId);
                cliente.Balance = cliente.Balance - venta.Total;
                client.Modificar(cliente);

                foreach (var item in venta.Detalle)
                {
                    var producto = prod.Buscar(item.ProductoId);
                    producto.Existencia = producto.Existencia + item.Cantidad;
                    prod.Modificar(producto);
                }


                db.Ventas.Remove(venta);
                if (db.SaveChanges() > 0)
                {
                    paso = true;
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                db.Dispose();
            }
            return(paso);
        }
コード例 #6
0
        public static void Modifica(Ventas factura, Ventas FactAnt, Contexto contexto)
        {
            RepositorioBase <Clientes> client = new RepositorioBase <Clientes>();
            RepositorioBase <Ventas>   venta  = new RepositorioBase <Ventas>();



            decimal modificado = factura.Total - FactAnt.Total;

            var Cliente = client.Buscar(factura.ClienteId);

            Cliente.Balance += modificado;
            client.Modificar(Cliente);



            decimal balance = factura.Total - FactAnt.Total;

            FactAnt.Balance += balance;
            factura.Balance  = FactAnt.Balance;
            venta.Modificar(factura);
        }
コード例 #7
0
        public static bool Insertar(Ventas venta)
        {
            bool     paso = false;
            Contexto db   = new Contexto();

            try
            {
                if (db.Ventas.Add(venta) != null)
                {
                    paso = (db.SaveChanges() > 0);
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                db.Dispose();
            }
            return(paso);
        }
コード例 #8
0
        public static void ModificarBien(Ventas ventas, Ventas VentasAnteriores)
        {
            Contexto contexto = new Contexto();

            RepositorioBase <Clientes> client = new RepositorioBase <Clientes>();
            RepositorioBase <Ventas>   vent   = new RepositorioBase <Ventas>();



            var Cliente            = client.Buscar(ventas.ClienteId);
            var ClientesAnteriores = client.Buscar(VentasAnteriores.ClienteId);

            Cliente.Balance            += ventas.Total;
            ClientesAnteriores.Balance -= VentasAnteriores.Total;
            client.Modificar(Cliente);
            client.Modificar(ClientesAnteriores);

            var Venta         = vent.Buscar(ventas.VentaId);
            var ventaanterior = vent.Buscar(VentasAnteriores.VentaId);

            Venta.Balance         += ventas.Total;
            ventaanterior.Balance -= VentasAnteriores.Total;
            vent.Modificar(Venta);
        }
コード例 #9
0
        private void EliminarButton_Click(object sender, EventArgs e)
        {
            Ventas ventas = new Ventas();
            ventas.VentaId = Convertir();

            if (ventas.Eliminar())
            {
                MessageBox.Show("Venta Eliminada","Mensaje",MessageBoxButtons.OK,MessageBoxIcon.Information);
                NuevoButton.PerformClick();
            }
            else
            {
                MessageBox.Show("Error al eliminar","alerta",MessageBoxButtons.OK,MessageBoxIcon.Error);
            }
        }
コード例 #10
0
 private void GuardarButton_Click(object sender, EventArgs e)
 {
     Ventas venta = new Ventas();
     venta.Insertar();
 }
コード例 #11
0
 private void AgregarButton_Click(object sender, EventArgs e)
 {
     Ventas venta = new Ventas();
     int cantidad;
     float precio, itbis, descuento;
     float.TryParse(PrecioTextBox.Text, out precio);
     int.TryParse(CantidadTextBox.Text, out cantidad);
     float.TryParse(ITBISTextBox.Text, out itbis);
     miError.Clear();
     if (DescuentosTextBox.TextLength == 0 || CantidadTextBox.TextLength == 0)
     {
         miError.SetError(CantidadTextBox, "Debe de completar este campo");
         miError.SetError(DescuentosTextBox, "Debe de completar este campo");
         
     }
     else
     {
         itbis *= cantidad;
         float importe = (precio * cantidad) + itbis;
         float.TryParse(DescuentosTextBox.Text, out descuento);
         total += importe - descuento;
         TotalTextBox.Text = total.ToString();
         VentasdataGridView.Rows.Add(ProductoIdTextBox.Text, NombreTextBox.Text, CantidadTextBox.Text, PrecioTextBox.Text, itbis.ToString(), descuento.ToString(), importe.ToString());
         LimpiarProducto();
     }
 }
コード例 #12
0
 private void BuscarVentaButton_Click(object sender, EventArgs e)
 {
     Ventas ventas = new Ventas();
     if (ventas.Buscar(Convertir()))
     {
         ClientecomboBox.SelectedValue = ventas.ClienteId;
         TipoVentaComboBox.Text = ventas.TipoVenta;
         NFCTextBox.Text = ventas.NFC;
         TipoNFCTextBox.Text = ventas.TipoNFC;
         FechadateTimePicker.Text = ventas.Fecha;
         TotalTextBox.Text = ventas.Total.ToString();
         total = ventas.Total;
         foreach (var venta in ventas.Producto)
         {
             VentasdataGridView.Rows.Add(venta.ProductoId.ToString(), venta.Nombre, venta.Cantidad.ToString(), venta.Precio.ToString(), venta.ITBIS.ToString(),venta.Descuentos.ToString(),venta.Importe.ToString());
         }
         BuscarVentaButton.Enabled = false;
      
     }
     else
     {
         MessageBox.Show("Id invalido","Error",MessageBoxButtons.OK,MessageBoxIcon.Error);
     }
 }
コード例 #13
0
        private void Guardarbutton_Click(object sender, EventArgs e)
        {
            Ventas venta = new Ventas();

            if (VentaIdTextBox.Text.Length == 0)
            {
                LlenarDatos(venta);
                if (Error() == 0 && Validar() == 1 && venta.Insertar())
                {
                    MessageBox.Show("Venta Guardada", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    NuevoButton.PerformClick();
                }
                else
                {
                    MessageBox.Show("Error al guardar", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else if(VentaIdTextBox.Text.Length > 0)
            {
                venta.VentaId = Convertir();
                LlenarDatos(venta);
                if (Error() == 0 && Validar() == 1 && venta.Editar())
                {
                    MessageBox.Show("Venta Editada", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    NuevoButton.PerformClick();
                }
                else
                {
                    MessageBox.Show("Error al editar", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
コード例 #14
0
        public void LlenarDatos(Ventas venta)
        {
            float itbis;
            int id;
            int.TryParse(VentaIdTextBox.Text, out id);
            venta.VentaId = id;
            venta.ClienteId = (int)ClientecomboBox.SelectedValue;
            venta.TipoVenta = TipoVentaComboBox.Text;
            venta.NFC = NFCTextBox.Text;
            venta.TipoNFC = TipoNFCTextBox.Text;
            venta.Fecha = FechadateTimePicker.Text;
            venta.Total = total;

            foreach (DataGridViewRow row in VentasdataGridView.Rows)
            {
                id= Convert.ToInt32(row.Cells["ProductoId"].Value);
                int cantidad = Convert.ToInt32(row.Cells["Cantidad"].Value);
                itbis = Convert.ToSingle(row.Cells["ITBIS"].Value);
                float descuentos = Convert.ToSingle(row.Cells["Descuento"].Value);
                venta.AgregarProducto(id,row.Cells["Nombre"].Value.ToString(),Convert.ToSingle(row.Cells["Precio"].Value),itbis, cantidad, descuentos, Convert.ToSingle(row.Cells["Importe"].Value));
                

            }

        }
コード例 #15
0
        public static bool Modificar(Ventas venta)
        {
            bool     paso     = false;
            Contexto contexto = new Contexto();

            try
            {
                var Ventas     = Buscar(venta.VentaId);
                var Usuario    = contexto.Usuarios.Find(venta.UsuarioId);
                var UsuarioAnt = contexto.Usuarios.Find(Ventas.UsuarioId);

                if (venta.UsuarioId != Ventas.UsuarioId)
                {
                    Usuario.TotalVendido    += venta.Total;
                    UsuarioAnt.TotalVendido -= Ventas.Total;
                    UsuariosBLL.Modificar(Usuario);
                    UsuariosBLL.Modificar(UsuarioAnt);
                }

                if (Ventas != null)
                {
                    foreach (var item in venta.Detalle)
                    {
                        contexto.Productos.Find(item.ProductoId).Inventario += item.Cantidad;

                        if (!venta.Detalle.ToList().Exists(si => si.VDetalleId == item.VDetalleId))
                        {
                            item.Producto = null;
                            contexto.Entry(item).State = EntityState.Deleted;
                        }
                    }

                    foreach (var item in venta.Detalle)
                    {
                        contexto.Productos.Find(item.ProductoId).Inventario -= item.Cantidad;

                        var estado = item.VDetalleId > 0 ? EntityState.Modified : EntityState.Added;
                        contexto.Entry(item).State = estado;
                    }

                    Ventas EntradaAnterior = Buscar(venta.VentaId);

                    decimal diferencia;
                    diferencia = venta.Total - EntradaAnterior.Total;

                    Usuarios usuarios = UsuariosBLL.Buscar(venta.UsuarioId);
                    usuarios.TotalVendido += diferencia;
                    UsuariosBLL.Modificar(usuarios);

                    contexto.Entry(venta).State = EntityState.Modified;
                }

                if (contexto.SaveChanges() > 0)
                {
                    paso = true;
                }
                contexto.Dispose();
            }
            catch (Exception)
            {
                throw;
            }
            return(paso);
        }