Link Examen
https://classroom.google.com/c/Njg0NzQxNTU2Nzg5/a/NzAyMDI4NzY0MDE3/details
Parte interna de Los formularios
Nota: Este código esta basado en el sistema que estamos diseñando, si usted cambio el nombre de solución debe de tomar en cuenta esta fase.
Consulte este código si en la creación del programa le da errores
Formulario Principal
using SistemaVentas.Vistas;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas
{
public partial class MDIPrincipal : Form
{
private int childFormNumber = 0;
public int idUsuario;
public string nomUsuario;
public int idEstado;
public int idPermiso;
public MDIPrincipal()
{
InitializeComponent();
}
private void MDIPrincipal_Load(object sender, EventArgs e)
{
sslUsuario.Text = "Desarrollado por: xcheko51x || " + "ID Usuario: "+ idUsuario + " || Usuario: " + nomUsuario;
MessageBox.Show("Bienvenido: " + this.nomUsuario, "SIV", MessageBoxButtons.OK, MessageBoxIcon.Information);
if (this.idPermiso == 1)
{
menuUsuarios.Enabled = true;
menuProveedores.Enabled = true;
menuProductos.Enabled = true;
menuVentas.Enabled = true;
menuReportes.Enabled = true;
menuLogout.Enabled = true;
menuSalir.Enabled = true;
} else if (this.idPermiso == 2)
{
menuUsuarios.Enabled = false;
menuProveedores.Enabled = true;
menuProductos.Enabled = true;
menuVentas.Enabled = false;
menuReportes.Enabled = false;
menuLogout.Enabled = true;
menuSalir.Enabled = true;
} else if (this.idPermiso == 3)
{
menuUsuarios.Enabled = false;
menuProveedores.Enabled = false;
menuProductos.Enabled = false;
menuVentas.Enabled = true;
menuReportes.Enabled = true;
menuLogout.Enabled = true;
menuSalir.Enabled = true;
} else
{
menuUsuarios.Enabled = false;
menuProveedores.Enabled = false;
menuProductos.Enabled = false;
menuVentas.Enabled = false;
menuReportes.Enabled = false;
menuLogout.Enabled = false;
menuSalir.Enabled = true;
}
}
Formulario Usuario:
using SistemaVentas.Clases;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas
{
public partial class FormUsuarios : Form
{
MetodosUsuarios metodosUsuarios;
DataTable datos;
int idUsuario = 0;
public FormUsuarios()
{
InitializeComponent();
}
private void FormUsuarios_Load(object sender, EventArgs e)
{
this.MostrarUsuarios();
this.MostrarPermisos(cbPermisos);
this.MostrarPermisos(cbActPermisos);
this.MostrarEstados(cbEstados);
this.MostrarEstados(cbActEstados);
}
private void MostrarPermisos(ComboBox cbPermisos)
{
List<Permiso> datos = metodosUsuarios.ObtenerPermisos();
cbPermisos.Items.Add("Selecciona una opción");
foreach (Permiso dato in datos)
{
cbPermisos.Items.Add(dato.permiso);
}
cbPermisos.SelectedIndex = 0;
}
private void MostrarEstados(ComboBox cbEstados)
{
List<Estado> datos = metodosUsuarios.ObtenerEstados();
cbEstados.Items.Add("Selecciona una opción");
foreach (Estado dato in datos)
{
cbEstados.Items.Add(dato.estado+1 + "- " + dato.descripcion);
}
cbEstados.SelectedIndex = 0;
}
public void MostrarUsuarios()
{
metodosUsuarios = new MetodosUsuarios();
datos = metodosUsuarios.ObtenerUsuarios();
FormatoTablaUsuarios(datos);
}
private void btnMostrarUsuarios_Click(object sender, EventArgs e)
{
this.LimpiarCampos();
this.datos.Reset();
this.MostrarUsuarios();
}
private void btnAgregar_Click(object sender, EventArgs e)
{
string nomUsuario = tbNombre.Text;
string usuario = tbUsuario.Text;
string contrasena = tbContrasena.Text;
int idPermiso = cbPermisos.SelectedIndex;
int idEstado = cbEstados.SelectedIndex;
Usuario nuevoUsuario = new Usuario(nomUsuario, usuario, contrasena, idPermiso, idEstado);
string resultado = metodosUsuarios.ValidarUsuario(nuevoUsuario);
if (resultado.Equals("OK"))
{
resultado = metodosUsuarios.AgregarUsuario(nuevoUsuario);
}
MessageBox.Show(resultado);
LimpiarCampos();
this.datos.Reset();
this.MostrarUsuarios();
nuevoUsuario = null;
}
private void btnActualizar_Click(object sender, EventArgs e)
{
string nomUsuario = tbActNombre.Text;
string usuario = tbActUsuario.Text;
string contrasena = tbActContrasena.Text;
int idPermiso = cbActPermisos.SelectedIndex;
int idEstado = cbActEstados.SelectedIndex;
Usuario actualizarUsuario = new Usuario(nomUsuario, usuario, contrasena, idPermiso, idEstado);
string resultado = metodosUsuarios.ValidarUsuario(actualizarUsuario);
if (resultado.Equals("OK"))
{
resultado = metodosUsuarios.ActualizarUsuario(idUsuario, actualizarUsuario);
}
MessageBox.Show(resultado);
LimpiarCampos();
this.datos.Reset();
this.MostrarUsuarios();
actualizarUsuario = null;
}
private void btnBuscarUsuario_Click(object sender, EventArgs e)
{
this.datos.Reset();
metodosUsuarios = new MetodosUsuarios();
datos = metodosUsuarios.BuscarUsuario(tbBuscarUsuario.Text.Trim());
FormatoTablaUsuarios(datos);
LimpiarCampos();
}
private void LimpiarCampos()
{
idUsuario = 0;
tbNombre.Text = "";
tbUsuario.Text = "";
tbContrasena.Text = "";
tbBuscarUsuario.Text = "";
cbPermisos.SelectedIndex = 0;
cbEstados.SelectedIndex = 0;
tbActNombre.Text = "";
tbActUsuario.Text = "";
tbActContrasena.Text = "";
cbActPermisos.SelectedIndex = 0;
cbActEstados.SelectedIndex = 0;
}
public void FormatoTablaUsuarios(DataTable datos)
{
try
{
datos.Columns["idUsuario"].ColumnName = "ID";
datos.Columns["nomUsuario"].ColumnName = "NOMBRE";
datos.Columns["usuario"].ColumnName = "USUARIO";
datos.Columns["contrasena"].ColumnName = "CONTRASEÑA";
datos.Columns["idPermiso"].ColumnName = "PERMISO";
datos.Columns["idEstado"].ColumnName = "ESTADO";
DGVUsuarios.DataSource = datos;
DGVUsuarios.Columns["ID"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVUsuarios.Columns["NOMBRE"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVUsuarios.Columns["USUARIO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVUsuarios.Columns["CONTRASEÑA"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVUsuarios.Columns["PERMISO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVUsuarios.Columns["ESTADO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
txtTotalUsuarios.Text = "Total de usuarios: " + datos.Rows.Count;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void DGVUsuarios_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
{
LimpiarCampos();
} else
{
idUsuario = Convert.ToInt32(DGVUsuarios.Rows[e.RowIndex].Cells["ID"].Value.ToString().Trim());
tbActNombre.Text = DGVUsuarios.Rows[e.RowIndex].Cells["NOMBRE"].Value.ToString().Trim();
tbActUsuario.Text = DGVUsuarios.Rows[e.RowIndex].Cells["USUARIO"].Value.ToString().Trim();
tbActContrasena.Text = DGVUsuarios.Rows[e.RowIndex].Cells["CONTRASEÑA"].Value.ToString().Trim();
cbActPermisos.SelectedIndex = Convert.ToInt32(DGVUsuarios.Rows[e.RowIndex].Cells["PERMISO"].Value.ToString().Trim());
cbActEstados.SelectedIndex = Convert.ToInt32(DGVUsuarios.Rows[e.RowIndex].Cells["ESTADO"].Value.ToString().Trim());
}
}
}
}
Formulario Ventas
using SistemaVentas.Clases;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas.Vistas
{
public partial class FormVentas : Form
{
MetodosProductos metodosProductos;
MetodosVentas metodosVentas;
List<Venta> listaVenta = new List<Venta>();
Producto producto;
Venta productosVenta;
public int idUsuario;
string fecha;
public FormVentas()
{
InitializeComponent();
}
private void FormVentas_Load(object sender, EventArgs e)
{
FormatoDGVListaVentas();
txtVentaTotal.Text = "Total Venta: $"+0;
timer1.Enabled = true;
}
public void ObtenerProducto(string codigo)
{
metodosProductos = new MetodosProductos();
producto = metodosProductos.BuscarProductoVenta(codigo);
if (producto == null)
{
MessageBox.Show("No existe el Producto");
} else {
productosVenta = new Venta(producto, 1, Convert.ToDouble(producto.precio));
if (listaVenta.Count() == 0)
{
listaVenta.Add(productosVenta);
listaVenta.ElementAt(0).producto.stock = "" + (Convert.ToInt32(listaVenta.ElementAt(0).producto.stock) - 1);
LlenarDGV(listaVenta);
} else
{
if(RegistradoLista(codigo, listaVenta))
{
for (int i = 0; i < listaVenta.Count(); i++)
{
if (listaVenta.ElementAt(i).producto.idProducto.Equals(codigo))
{
if (Convert.ToInt32(listaVenta.ElementAt(i).producto.stock) == 0)
{
MessageBox.Show("Ya no hay stock");
}
else
{
listaVenta.ElementAt(i).producto.stock = "" + (Convert.ToInt32(listaVenta.ElementAt(i).producto.stock) - 1);
listaVenta.ElementAt(i).cantidad = listaVenta.ElementAt(i).cantidad + 1;
listaVenta.ElementAt(i).costo = listaVenta.ElementAt(i).costo + Convert.ToDouble(listaVenta.ElementAt(i).producto.precio);
DGVListaVentas.Refresh();
LlenarDGV(listaVenta);
i = listaVenta.Count();
}
}
}
} else
{
listaVenta.Add(productosVenta);
listaVenta.ElementAt(listaVenta.Count()-1).producto.stock = "" + (Convert.ToInt32(listaVenta.ElementAt(listaVenta.Count()-1).producto.stock) - 1);
LlenarDGV(listaVenta);
}
}
}
ObtenerTotal(listaVenta);
}
public void ObtenerTotal(List<Venta> listaVenta)
{
double total = 0.0;
for (int i = 0; i < listaVenta.Count(); i++)
{
total = total + listaVenta.ElementAt(i).costo;
}
txtVentaTotal.Text = "Total Venta: $"+total;
}
public Boolean RegistradoLista(string codigo, List<Venta> listaVenta)
{
Boolean existe = false;
for (int i = 0; i < listaVenta.Count(); i++)
{
if (listaVenta.ElementAt(i).producto.idProducto.Equals(codigo))
{
existe = true;
i = listaVenta.Count();
}
}
return existe;
}
public void LlenarDGV(List<Venta> listaVenta)
{
DGVListaVentas.Rows.Clear();
for (int i = 0; i < listaVenta.Count(); i++)
{
DGVListaVentas.Rows.Add(
listaVenta.ElementAt(i).producto.idProducto,
listaVenta.ElementAt(i).producto.nomProducto,
listaVenta.ElementAt(i).producto.stock,
listaVenta.ElementAt(i).producto.precio,
listaVenta.ElementAt(i).producto.descripcion,
listaVenta.ElementAt(i).cantidad,
listaVenta.ElementAt(i).costo
);
}
}
public void FormatoDGVListaVentas()
{
DGVListaVentas.Columns.Clear();
DGVListaVentas.Columns.Add("idProducto", "ID");
DGVListaVentas.Columns.Add("producto", "PRODUCTO");
DGVListaVentas.Columns.Add("stock", "STOCK");
DGVListaVentas.Columns.Add("precio", "PRECIO");
DGVListaVentas.Columns.Add("descripcion", "DESCRIPCION");
DGVListaVentas.Columns.Add("cantidad", "CANTIDAD");
DGVListaVentas.Columns.Add("costo", "COSTO");
DGVListaVentas.Columns["idProducto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVListaVentas.Columns["producto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVListaVentas.Columns["stock"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVListaVentas.Columns["precio"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVListaVentas.Columns["descripcion"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVListaVentas.Columns["cantidad"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVListaVentas.Columns["costo"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
protected void TBCodigo_TextChanged(object sender, EventArgs e)
{
if (tbCodigo.Text.Contains("\n"))
{
ObtenerProducto(tbCodigo.Text.Trim());
tbCodigo.Text = "";
}
}
private void tbNumero_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) &&
(e.KeyChar != '.'))
{
e.Handled = true;
}
// only allow one decimal point
if ((e.KeyChar == '.') && ((sender as TextBox).Text.IndexOf('.') > -1))
{
e.Handled = true;
}
}
private void DGVListaVentas_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
{
}
else
{
txtIdProducto.Text = DGVListaVentas.Rows[e.RowIndex].Cells["idProducto"].Value.ToString().Trim();
}
}
private void btnSumar_Click(object sender, EventArgs e)
{
if (txtIdProducto.Text.Equals("Selecciona un producto"))
{
MessageBox.Show("SELECCIONA UN PRODUCTO DE LA LISTA");
} else
{
for (int i = 0; i < listaVenta.Count; i++)
{
if (listaVenta.ElementAt(i).producto.idProducto.Equals(txtIdProducto.Text.Trim()))
{
if (Convert.ToInt32(listaVenta.ElementAt(i).producto.stock) == 0)
{
MessageBox.Show("Ya no hay stock");
}
else
{
listaVenta.ElementAt(i).producto.stock = "" + (Convert.ToInt32(listaVenta.ElementAt(i).producto.stock) - 1);
listaVenta.ElementAt(i).cantidad = listaVenta.ElementAt(i).cantidad + 1;
listaVenta.ElementAt(i).costo = listaVenta.ElementAt(i).costo + Convert.ToDouble(listaVenta.ElementAt(i).producto.precio);
DGVListaVentas.Refresh();
LlenarDGV(listaVenta);
i = listaVenta.Count();
}
}
}
ObtenerTotal(listaVenta);
}
}
private void btnRestar_Click(object sender, EventArgs e)
{
if (txtIdProducto.Text.Equals("Selecciona un producto"))
{
MessageBox.Show("SELECCIONA UN PRODUCTO DE LA LISTA");
}
else
{
for (int i = 0; i < listaVenta.Count; i++)
{
if (listaVenta.ElementAt(i).producto.idProducto.Equals(txtIdProducto.Text.Trim()))
{
if (Convert.ToInt32(listaVenta.ElementAt(i).cantidad) == 0)
{
MessageBox.Show("Se eliminara el producto de la lista");
txtIdProducto.Text = "Selecciona un producto";
listaVenta.RemoveAt(i);
DGVListaVentas.Refresh();
LlenarDGV(listaVenta);
}
else
{
listaVenta.ElementAt(i).producto.stock = "" + (Convert.ToInt32(listaVenta.ElementAt(i).producto.stock) + 1);
listaVenta.ElementAt(i).cantidad = listaVenta.ElementAt(i).cantidad - 1;
listaVenta.ElementAt(i).costo = listaVenta.ElementAt(i).costo - Convert.ToDouble(listaVenta.ElementAt(i).producto.precio);
DGVListaVentas.Refresh();
LlenarDGV(listaVenta);
i = listaVenta.Count();
}
}
}
ObtenerTotal(listaVenta);
}
}
private void btnEliminar_Click(object sender, EventArgs e)
{
if (txtIdProducto.Text.Equals("Selecciona un producto"))
{
MessageBox.Show("SELECCIONA UN PRODUCTO DE LA LISTA");
}
else
{
for (int i = 0; i < listaVenta.Count; i++)
{
if (listaVenta.ElementAt(i).producto.idProducto.Equals(txtIdProducto.Text.Trim()))
{
MessageBox.Show("Se eliminara el producto de la lista");
txtIdProducto.Text = "Selecciona un producto";
listaVenta.RemoveAt(i);
DGVListaVentas.Refresh();
LlenarDGV(listaVenta);
i = listaVenta.Count();
}
}
ObtenerTotal(listaVenta);
}
}
private void btnLimpiar_Click(object sender, EventArgs e)
{
listaVenta.Clear();
DGVListaVentas.Rows.Clear();
ObtenerTotal(listaVenta);
}
private void btnVender_Click(object sender, EventArgs e)
{
fecha = DateTime.Now.ToString();
string[] cadena = txtVentaTotal.Text.Split('$');
double ventaTotal = Convert.ToDouble(cadena[1]);
string resultado = "";
if (ventaTotal == 0)
{
MessageBox.Show("No puedes registrar ventas en cero");
} else
{
metodosVentas = new MetodosVentas();
metodosVentas.ActualizaStock(listaVenta);
resultado = metodosVentas.AgregarVenta(Convert.ToDateTime(fecha), Convert.ToDateTime(fecha), idUsuario, listaVenta, ventaTotal);
btnLimpiar_Click(sender, e);
tbCodigo.Focus();
}
MessageBox.Show(resultado);
}
private void timer1_Tick(object sender, EventArgs e)
{
txtFecha.Text = DateTime.Now.ToString("dd-MM-yyyy");
txtHora.Text = DateTime.Now.ToString("hh:mm:ss");
}
private void txtIdProducto_Click(object sender, EventArgs e)
{
}
}
}
Formulario Proveedores
using SistemaVentas.Clases;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas.Vistas
{
public partial class FormProveedores : Form
{
MetodosProveedores metodosProveedores;
DataTable datos;
int idProveedor = 0;
public FormProveedores()
{
InitializeComponent();
}
private void FormProveedores_Load(object sender, EventArgs e)
{
this.MostrarProveedores();
}
public void MostrarProveedores()
{
metodosProveedores = new MetodosProveedores();
datos = metodosProveedores.ObtenerProveedores();
FormatoTablaProveedores(datos);
}
private void btnAgregar_Click(object sender, EventArgs e)
{
string nomProveedor = tbProveedor.Text;
string numContacto = tbNumero.Text;
string direccion = tbDireccion.Text;
string email = tbEmail.Text;
Proveedor nuevoProveedor = new Proveedor(nomProveedor, numContacto, direccion, email);
string resultado = metodosProveedores.ValidarProveedor(nuevoProveedor);
if (resultado.Equals("OK"))
{
resultado = metodosProveedores.AgregarProveedor(nuevoProveedor);
}
MessageBox.Show(resultado);
LimpiarCampos();
this.datos.Reset();
this.MostrarProveedores();
nuevoProveedor = null;
}
private void btnBuscarProveedor_Click(object sender, EventArgs e)
{
this.datos.Reset();
metodosProveedores = new MetodosProveedores();
datos = metodosProveedores.BuscarProveedor(tbBuscarProveedor.Text.Trim());
FormatoTablaProveedores(datos);
LimpiarCampos();
}
private void btnMostrarProveedores_Click(object sender, EventArgs e)
{
this.LimpiarCampos();
this.datos.Reset();
this.MostrarProveedores();
}
private void btnActualizar_Click(object sender, EventArgs e)
{
string nomProveedor = tbActProveedor.Text;
string numContacto = tbActNumero.Text;
string direccion = tbActDireccion.Text;
string email = tbActEmail.Text;
Proveedor actualizarProveedor = new Proveedor(nomProveedor, numContacto, direccion, email);
string resultado = metodosProveedores.ValidarProveedor(actualizarProveedor);
if (resultado.Equals("OK"))
{
resultado = metodosProveedores.ActualizarProveedor(idProveedor, actualizarProveedor);
}
MessageBox.Show(resultado);
LimpiarCampos();
this.datos.Reset();
this.MostrarProveedores();
actualizarProveedor = null;
}
public void FormatoTablaProveedores(DataTable datos)
{
try
{
datos.Columns["idProveedor"].ColumnName = "ID";
datos.Columns["nomProveedor"].ColumnName = "PROVEEDOR";
datos.Columns["numContacto"].ColumnName = "NUMERO CONTACTO";
datos.Columns["direccion"].ColumnName = "DIRECCION";
datos.Columns["email"].ColumnName = "EMAIL";
DGVProveedores.DataSource = datos;
DGVProveedores.Columns["ID"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProveedores.Columns["PROVEEDOR"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProveedores.Columns["NUMERO CONTACTO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProveedores.Columns["DIRECCION"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProveedores.Columns["EMAIL"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
txtTotalProveedores.Text = "Total de proveedores: " + datos.Rows.Count;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void LimpiarCampos()
{
idProveedor = 0;
tbProveedor.Text = "";
tbNumero.Text = "";
tbDireccion.Text = "";
tbEmail.Text = "";
tbActProveedor.Text = "";
tbActNumero.Text = "";
tbActDireccion.Text = "";
tbActEmail.Text = "";
}
private void tbNumero_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) &&
(e.KeyChar != '.'))
{
e.Handled = true;
}
// only allow one decimal point
if ((e.KeyChar == '.') && ((sender as TextBox).Text.IndexOf('.') > -1))
{
e.Handled = true;
}
}
private void DGVProveedores_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
{
LimpiarCampos();
}
else
{
idProveedor = Convert.ToInt32(DGVProveedores.Rows[e.RowIndex].Cells["ID"].Value.ToString().Trim());
tbActProveedor.Text = DGVProveedores.Rows[e.RowIndex].Cells["PROVEEDOR"].Value.ToString().Trim();
tbActNumero.Text = DGVProveedores.Rows[e.RowIndex].Cells["NUMERO CONTACTO"].Value.ToString().Trim();
tbActDireccion.Text = DGVProveedores.Rows[e.RowIndex].Cells["DIRECCION"].Value.ToString().Trim();
tbActEmail.Text = DGVProveedores.Rows[e.RowIndex].Cells["EMAIL"].Value.ToString().Trim();
}
}
}
}
Formulario Producto
using SistemaVentas.Clases;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas.Vistas
{
public partial class FormProductos : Form
{
MetodosProductos metodosProductos;
DataTable datos;
public FormProductos()
{
InitializeComponent();
}
private void FormProductos_Load(object sender, EventArgs e)
{
this.MostrarProductos();
this.MostrarProveedores(cbProveedores);
this.MostrarProveedores(cbActProveedores);
}
public void MostrarProductos()
{
metodosProductos = new MetodosProductos();
datos = metodosProductos.ObtenerProductos();
FormatoTablaProductos(datos);
}
public void FormatoTablaProductos(DataTable datos)
{
try
{
datos.Columns["idProducto"].ColumnName = "ID";
datos.Columns["nomProducto"].ColumnName = "PRODUCTO";
datos.Columns["idProveedor"].ColumnName = "ID PROVEEDOR";
datos.Columns["nomProveedor"].ColumnName = "PROVEEDOR";
datos.Columns["descripcion"].ColumnName = "DESCRIPCION";
datos.Columns["stock"].ColumnName = "STOCK";
datos.Columns["precio"].ColumnName = "PRECIO";
DGVProductos.DataSource = datos;
DGVProductos.Columns["ID"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProductos.Columns["PRODUCTO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProductos.Columns["ID PROVEEDOR"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProductos.Columns["PROVEEDOR"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProductos.Columns["DESCRIPCION"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProductos.Columns["STOCK"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVProductos.Columns["PRECIO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
txtTotalProductos.Text = "Total de productos: " + datos.Rows.Count;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void MostrarProveedores(ComboBox cbProveedores)
{
List<Proveedor> datos = metodosProductos.ObtenerProveedores();
cbProveedores.Items.Add("Selecciona una opción");
foreach (Proveedor dato in datos)
{
cbProveedores.Items.Add(dato.idProveedor+","+dato.nomProveedor);
}
cbProveedores.SelectedIndex = 0;
}
private void btnAgregar_Click(object sender, EventArgs e)
{
string idProducto = tbIdProducto.Text.Trim();
string nomProducto = tbNomProducto.Text.Trim();
string stock = tbStock.Text.Trim();
string precio = tbPrecio.Text.Trim();
string descripcion = tbDescripcion.Text.Trim();
string cadena = cbProveedores.SelectedItem.ToString();
if (cbProveedores.SelectedIndex == 0)
{
MessageBox.Show("TIENES QUE SELECCIONAR UN PROVEEDOR");
} else
{
string[] valores = cadena.Split(',');
string idProveedor = valores[0].Trim();
Producto nuevoProducto = new Producto(idProducto, nomProducto, stock, precio, descripcion, idProveedor);
string resultado = metodosProductos.ValidarProducto(nuevoProducto);
if (resultado.Equals("OK"))
{
resultado = metodosProductos.AgregarProducto(nuevoProducto);
}
MessageBox.Show(resultado);
LimpiarCampos();
this.datos.Reset();
this.MostrarProductos();
nuevoProducto = null;
}
}
private void btnActualizar_Click(object sender, EventArgs e)
{
string idProducto = tbActIdProducto.Text.Trim();
string nomProducto = tbActNomProducto.Text.Trim();
string stock = tbActStock.Text.Trim();
string precio = tbActPrecio.Text.Trim();
string descripcion = tbActDescripcion.Text.Trim();
string cadena = cbActProveedores.SelectedItem.ToString();
if (cbActProveedores.SelectedIndex == 0)
{
MessageBox.Show("TIENES QUE SELECCIONAR UN PROVEEDOR");
}
else
{
string[] valores = cadena.Split(',');
string idProveedor = valores[0].Trim();
Producto actualizarProducto = new Producto(idProducto, nomProducto, stock, precio, descripcion, idProveedor);
string resultado = metodosProductos.ValidarProducto(actualizarProducto);
if (resultado.Equals("OK"))
{
resultado = metodosProductos.ActualizarProducto(actualizarProducto);
}
MessageBox.Show(resultado);
LimpiarCampos();
this.datos.Reset();
this.MostrarProductos();
actualizarProducto = null;
}
}
private void btnBuscarProducto_Click(object sender, EventArgs e)
{
this.datos.Reset();
metodosProductos = new MetodosProductos();
datos = metodosProductos.BuscarProducto(tbBuscarProducto.Text.Trim());
FormatoTablaProductos(datos);
LimpiarCampos();
}
private void btnMostrarProductos_Click(object sender, EventArgs e)
{
this.LimpiarCampos();
this.datos.Reset();
this.MostrarProductos();
}
private void LimpiarCampos()
{
tbIdProducto.Text = "";
tbNomProducto.Text = "";
tbStock.Text = "";
tbPrecio.Text = "";
tbDescripcion.Text = "";
cbProveedores.SelectedIndex = 0;
}
private void tbNumero_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) &&
(e.KeyChar != '.'))
{
e.Handled = true;
}
// only allow one decimal point
if ((e.KeyChar == '.') && ((sender as TextBox).Text.IndexOf('.') > -1))
{
e.Handled = true;
}
}
private void DGVProductos_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
{
LimpiarCampos();
}
else
{
tbActIdProducto.Text = DGVProductos.Rows[e.RowIndex].Cells["ID"].Value.ToString().Trim();
tbActNomProducto.Text = DGVProductos.Rows[e.RowIndex].Cells["PRODUCTO"].Value.ToString().Trim();
tbActStock.Text = DGVProductos.Rows[e.RowIndex].Cells["STOCK"].Value.ToString().Trim();
tbActPrecio.Text = DGVProductos.Rows[e.RowIndex].Cells["PRECIO"].Value.ToString().Trim();
tbActDescripcion.Text = DGVProductos.Rows[e.RowIndex].Cells["DESCRIPCION"].Value.ToString().Trim();
cbActProveedores.SelectedIndex = Convert.ToInt32(DGVProductos.Rows[e.RowIndex].Cells["ID PROVEEDOR"].Value.ToString().Trim());
}
}
}
}
Formulario Reporte
using SistemaVentas.Clases;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas.Vistas
{
public partial class FormReportes : Form
{
MetodosReportes metodosReportes;
MetodosProductos metodosProductos = new MetodosProductos();
List<Reporte> listaReporte = new List<Reporte>();
List<Usuario> listaVentasUsuarios = new List<Usuario>();
List<Producto> listaProductosVendidos = new List<Producto>();
public FormReportes()
{
InitializeComponent();
}
private void FormReportes_Load(object sender, EventArgs e)
{
FormatoTablaVentaUsuarios();
FormatoTablaVentaProductos();
}
public void FormatoTablaVentaUsuarios()
{
DGVVentasUsuarios.Columns.Clear();
DGVVentasUsuarios.Columns.Add("idUsuario", "ID USUARIO");
DGVVentasUsuarios.Columns.Add("nomUsuario", "VENDEDOR");
DGVVentasUsuarios.Columns.Add("total", "TOTAL VENDIDO");
DGVVentasUsuarios.Columns["idUsuario"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasUsuarios.Columns["nomUsuario"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasUsuarios.Columns["total"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
public void FormatoTablaVentaProductos()
{
DGVVentasProductos.Columns.Clear();
DGVVentasProductos.Columns.Add("idProducto", "ID PRODUCTO");
DGVVentasProductos.Columns.Add("nomProducto", "PRODUCTO");
DGVVentasProductos.Columns.Add("cantVendida", "CANTIDAD VENDIDA");
DGVVentasProductos.Columns["idProducto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasProductos.Columns["nomProducto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasProductos.Columns["cantVendida"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
private void DGVListas_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
{
}
else
{
}
}
private void btnObtenerVentas_Click(object sender, EventArgs e)
{
listaReporte.Clear();
listaVentasUsuarios.Clear();
listaProductosVendidos.Clear();
DGVVentasUsuarios.Rows.Clear();
DGVVentasProductos.Rows.Clear();
metodosReportes = new MetodosReportes();
string cadenaFechaInicial = dtpFechaInicial.Value.ToString("yyyy-MM-dd");
string cadenaFechaFinal = dtpFechaFinal.Value.ToString("yyyy-MM-dd");
listaReporte = metodosReportes.ObtenerReporteVentas(cadenaFechaInicial, cadenaFechaFinal);
if (listaReporte.Count() == 0)
{
MessageBox.Show("No hay ventas registradas entre esas fechas");
}
else
{
SepararVentasUsuarios();
SepararProductosVendidos();
}
}
public void SepararVentasUsuarios()
{
Boolean existe;
for (int i = 0; i < listaReporte.Count; i++)
{
existe = false;
int auxCountUsuario = 0;
if (listaVentasUsuarios.Count == 0 && existe == false)
{
listaVentasUsuarios.Add(
new Usuario(
Convert.ToInt32(listaReporte.ElementAt(i).idUsuario),
listaReporte.ElementAt(i).nomUsuario,
Convert.ToDouble(listaReporte.ElementAt(i).totalVenta)
)
);
}
else
{
for (int j = 0; j < listaVentasUsuarios.Count; j++)
{
if (Convert.ToInt32(listaReporte.ElementAt(i).idUsuario) == listaVentasUsuarios.ElementAt(j).idUsuario)
{
existe = true;
auxCountUsuario = j;
j = listaVentasUsuarios.Count;
}
}
if (existe == true)
{
listaVentasUsuarios.ElementAt(auxCountUsuario).totalVendido = listaVentasUsuarios.ElementAt(auxCountUsuario).totalVendido + Convert.ToDouble(listaReporte.ElementAt(i).totalVenta);
}
else
{
listaVentasUsuarios.Add(
new Usuario(
Convert.ToInt32(listaReporte.ElementAt(i).idUsuario),
listaReporte.ElementAt(i).nomUsuario,
Convert.ToDouble(listaReporte.ElementAt(i).totalVenta)
)
);
}
}
}
LlenarDGVVentasUsuarios(listaVentasUsuarios);
MostrarGraficaVentasUsuarios(listaVentasUsuarios);
}
public void SepararProductosVendidos()
{
char[] delimitadores = { ',', '-' };
/*string[] cadenaSeparada = listaReporte.ElementAt(1).idProductos.Split(delimitadores);
MessageBox.Show(cadenaSeparada[0]+" : "+ cadenaSeparada[1]);*/
for (int i = 0; i < listaReporte.Count; i++)
{
string[] cadenaSeparada = listaReporte.ElementAt(i).idProductos.Trim().Split(delimitadores);
for(int j = 0; j < cadenaSeparada.Length; j = j+2)
{
if (listaProductosVendidos.Count == 0)
{
listaProductosVendidos.Add(
new Producto(
cadenaSeparada[j+1],
"Nombre Producto",
Convert.ToInt32(cadenaSeparada[j])
)
);
}
else
{
for (int k = 0; k < listaProductosVendidos.Count; k++)
{
if (cadenaSeparada[j+1].Trim().Equals(listaProductosVendidos.ElementAt(k).idProducto.Trim()))
{
listaProductosVendidos.ElementAt(k).cantidadVendida = listaProductosVendidos.ElementAt(k).cantidadVendida + Convert.ToInt32(cadenaSeparada[j]);
k = listaProductosVendidos.Count;
}
else
{
listaProductosVendidos.Add(
new Producto(
cadenaSeparada[j + 1],
"Nombre Producto",
Convert.ToInt32(cadenaSeparada[j])
)
);
k = listaProductosVendidos.Count;
}
}
}
}
}
ObtenerNombreProductos(listaProductosVendidos);
LlenarDGVProductosVendidos(listaProductosVendidos);
MostrarGraficaProductosVendidos(listaProductosVendidos);
}
public void ObtenerNombreProductos(List<Producto> listaProductosVendidos)
{
for (int i = 0; i < listaProductosVendidos.Count; i++)
{
listaProductosVendidos.ElementAt(i).nomProducto = metodosProductos.ObtenerNombreProducto(listaProductosVendidos.ElementAt(i).idProducto.Trim());
}
}
public void MostrarConsola(List<Producto> listaProductosVendidos)
{
for (int i = 0; i < listaProductosVendidos.Count; i++)
{
Console.WriteLine(listaProductosVendidos.ElementAt(i).idProducto+" - "+listaProductosVendidos.ElementAt(i).cantidadVendida);
}
}
public void MostrarGraficaVentasUsuarios(List<Usuario> listaVentasUsuarios)
{
chartVentasUsuarios.Series["Series1"].Points.Clear();
chartVentasUsuarios.Series["Series1"].LegendText = " Total vendido por usuario en el periodo " + dtpFechaInicial.Text + " al " + dtpFechaFinal.Text;
for(int i = 0; i < listaVentasUsuarios.Count; i++)
{
chartVentasUsuarios.Series["Series1"].Points.AddXY(listaVentasUsuarios.ElementAt(i).nomUsuario, listaVentasUsuarios.ElementAt(i).totalVendido);
}
}
public void MostrarGraficaProductosVendidos(List<Producto> listaProductosVendidos)
{
chartProductosVendidos.Series["Series1"].Points.Clear();
chartProductosVendidos.Series["Series1"].LegendText = "Total de productos vendidos en el periodo " + dtpFechaInicial.Text + " al " + dtpFechaFinal.Text;
for (int i = 0; i < listaProductosVendidos.Count; i++)
{
chartProductosVendidos.Series["Series1"].Points.AddXY(listaProductosVendidos.ElementAt(i).idProducto, listaProductosVendidos.ElementAt(i).cantidadVendida);
}
}
public void LlenarDGVVentasUsuarios(List<Usuario> listaVentasUsuarios)
{
DGVVentasUsuarios.Rows.Clear();
for (int i = 0; i < listaVentasUsuarios.Count(); i++)
{
DGVVentasUsuarios.Rows.Add(
listaVentasUsuarios.ElementAt(i).idUsuario,
listaVentasUsuarios.ElementAt(i).nomUsuario,
listaVentasUsuarios.ElementAt(i).totalVendido
);
}
}
public void LlenarDGVProductosVendidos(List<Producto> listaProductosVendidos)
{
DGVVentasProductos.Rows.Clear();
for (int i = 0; i < listaProductosVendidos.Count(); i++)
{
DGVVentasProductos.Rows.Add(
listaProductosVendidos.ElementAt(i).idProducto,
listaProductosVendidos.ElementAt(i).nomProducto,
listaProductosVendidos.ElementAt(i).cantidadVendida
);
}
}
private void btnGenerarReporte_Click(object sender, EventArgs e)
{
FormGenerarReporte formGenerarReporte = new FormGenerarReporte();
formGenerarReporte.listaProductosVendidos = listaProductosVendidos;
formGenerarReporte.Show();
}
}
}
Formulario General Reporte:
using SistemaVentas.Clases;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas.Vistas
{
public partial class FormReportes : Form
{
MetodosReportes metodosReportes;
MetodosProductos metodosProductos = new MetodosProductos();
List<Reporte> listaReporte = new List<Reporte>();
List<Usuario> listaVentasUsuarios = new List<Usuario>();
List<Producto> listaProductosVendidos = new List<Producto>();
public FormReportes()
{
InitializeComponent();
}
private void FormReportes_Load(object sender, EventArgs e)
{
FormatoTablaVentaUsuarios();
FormatoTablaVentaProductos();
}
public void FormatoTablaVentaUsuarios()
{
DGVVentasUsuarios.Columns.Clear();
DGVVentasUsuarios.Columns.Add("idUsuario", "ID USUARIO");
DGVVentasUsuarios.Columns.Add("nomUsuario", "VENDEDOR");
DGVVentasUsuarios.Columns.Add("total", "TOTAL VENDIDO");
DGVVentasUsuarios.Columns["idUsuario"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasUsuarios.Columns["nomUsuario"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasUsuarios.Columns["total"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
public void FormatoTablaVentaProductos()
{
DGVVentasProductos.Columns.Clear();
DGVVentasProductos.Columns.Add("idProducto", "ID PRODUCTO");
DGVVentasProductos.Columns.Add("nomProducto", "PRODUCTO");
DGVVentasProductos.Columns.Add("cantVendida", "CANTIDAD VENDIDA");
DGVVentasProductos.Columns["idProducto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasProductos.Columns["nomProducto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
DGVVentasProductos.Columns["cantVendida"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
private void DGVListas_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
{
}
else
{
}
}
private void btnObtenerVentas_Click(object sender, EventArgs e)
{
listaReporte.Clear();
listaVentasUsuarios.Clear();
listaProductosVendidos.Clear();
DGVVentasUsuarios.Rows.Clear();
DGVVentasProductos.Rows.Clear();
metodosReportes = new MetodosReportes();
string cadenaFechaInicial = dtpFechaInicial.Value.ToString("yyyy-MM-dd");
string cadenaFechaFinal = dtpFechaFinal.Value.ToString("yyyy-MM-dd");
listaReporte = metodosReportes.ObtenerReporteVentas(cadenaFechaInicial, cadenaFechaFinal);
if (listaReporte.Count() == 0)
{
MessageBox.Show("No hay ventas registradas entre esas fechas");
}
else
{
SepararVentasUsuarios();
SepararProductosVendidos();
}
}
public void SepararVentasUsuarios()
{
Boolean existe;
for (int i = 0; i < listaReporte.Count; i++)
{
existe = false;
int auxCountUsuario = 0;
if (listaVentasUsuarios.Count == 0 && existe == false)
{
listaVentasUsuarios.Add(
new Usuario(
Convert.ToInt32(listaReporte.ElementAt(i).idUsuario),
listaReporte.ElementAt(i).nomUsuario,
Convert.ToDouble(listaReporte.ElementAt(i).totalVenta)
)
);
}
else
{
for (int j = 0; j < listaVentasUsuarios.Count; j++)
{
if (Convert.ToInt32(listaReporte.ElementAt(i).idUsuario) == listaVentasUsuarios.ElementAt(j).idUsuario)
{
existe = true;
auxCountUsuario = j;
j = listaVentasUsuarios.Count;
}
}
if (existe == true)
{
listaVentasUsuarios.ElementAt(auxCountUsuario).totalVendido = listaVentasUsuarios.ElementAt(auxCountUsuario).totalVendido + Convert.ToDouble(listaReporte.ElementAt(i).totalVenta);
}
else
{
listaVentasUsuarios.Add(
new Usuario(
Convert.ToInt32(listaReporte.ElementAt(i).idUsuario),
listaReporte.ElementAt(i).nomUsuario,
Convert.ToDouble(listaReporte.ElementAt(i).totalVenta)
)
);
}
}
}
LlenarDGVVentasUsuarios(listaVentasUsuarios);
MostrarGraficaVentasUsuarios(listaVentasUsuarios);
}
public void SepararProductosVendidos()
{
char[] delimitadores = { ',', '-' };
/*string[] cadenaSeparada = listaReporte.ElementAt(1).idProductos.Split(delimitadores);
MessageBox.Show(cadenaSeparada[0]+" : "+ cadenaSeparada[1]);*/
for (int i = 0; i < listaReporte.Count; i++)
{
string[] cadenaSeparada = listaReporte.ElementAt(i).idProductos.Trim().Split(delimitadores);
for(int j = 0; j < cadenaSeparada.Length; j = j+2)
{
if (listaProductosVendidos.Count == 0)
{
listaProductosVendidos.Add(
new Producto(
cadenaSeparada[j+1],
"Nombre Producto",
Convert.ToInt32(cadenaSeparada[j])
)
);
}
else
{
for (int k = 0; k < listaProductosVendidos.Count; k++)
{
if (cadenaSeparada[j+1].Trim().Equals(listaProductosVendidos.ElementAt(k).idProducto.Trim()))
{
listaProductosVendidos.ElementAt(k).cantidadVendida = listaProductosVendidos.ElementAt(k).cantidadVendida + Convert.ToInt32(cadenaSeparada[j]);
k = listaProductosVendidos.Count;
}
else
{
listaProductosVendidos.Add(
new Producto(
cadenaSeparada[j + 1],
"Nombre Producto",
Convert.ToInt32(cadenaSeparada[j])
)
);
k = listaProductosVendidos.Count;
}
}
}
}
}
ObtenerNombreProductos(listaProductosVendidos);
LlenarDGVProductosVendidos(listaProductosVendidos);
MostrarGraficaProductosVendidos(listaProductosVendidos);
}
public void ObtenerNombreProductos(List<Producto> listaProductosVendidos)
{
for (int i = 0; i < listaProductosVendidos.Count; i++)
{
listaProductosVendidos.ElementAt(i).nomProducto = metodosProductos.ObtenerNombreProducto(listaProductosVendidos.ElementAt(i).idProducto.Trim());
}
}
public void MostrarConsola(List<Producto> listaProductosVendidos)
{
for (int i = 0; i < listaProductosVendidos.Count; i++)
{
Console.WriteLine(listaProductosVendidos.ElementAt(i).idProducto+" - "+listaProductosVendidos.ElementAt(i).cantidadVendida);
}
}
public void MostrarGraficaVentasUsuarios(List<Usuario> listaVentasUsuarios)
{
chartVentasUsuarios.Series["Series1"].Points.Clear();
chartVentasUsuarios.Series["Series1"].LegendText = " Total vendido por usuario en el periodo " + dtpFechaInicial.Text + " al " + dtpFechaFinal.Text;
for(int i = 0; i < listaVentasUsuarios.Count; i++)
{
chartVentasUsuarios.Series["Series1"].Points.AddXY(listaVentasUsuarios.ElementAt(i).nomUsuario, listaVentasUsuarios.ElementAt(i).totalVendido);
}
}
public void MostrarGraficaProductosVendidos(List<Producto> listaProductosVendidos)
{
chartProductosVendidos.Series["Series1"].Points.Clear();
chartProductosVendidos.Series["Series1"].LegendText = "Total de productos vendidos en el periodo " + dtpFechaInicial.Text + " al " + dtpFechaFinal.Text;
for (int i = 0; i < listaProductosVendidos.Count; i++)
{
chartProductosVendidos.Series["Series1"].Points.AddXY(listaProductosVendidos.ElementAt(i).idProducto, listaProductosVendidos.ElementAt(i).cantidadVendida);
}
}
public void LlenarDGVVentasUsuarios(List<Usuario> listaVentasUsuarios)
{
DGVVentasUsuarios.Rows.Clear();
for (int i = 0; i < listaVentasUsuarios.Count(); i++)
{
DGVVentasUsuarios.Rows.Add(
listaVentasUsuarios.ElementAt(i).idUsuario,
listaVentasUsuarios.ElementAt(i).nomUsuario,
listaVentasUsuarios.ElementAt(i).totalVendido
);
}
}
public void LlenarDGVProductosVendidos(List<Producto> listaProductosVendidos)
{
DGVVentasProductos.Rows.Clear();
for (int i = 0; i < listaProductosVendidos.Count(); i++)
{
DGVVentasProductos.Rows.Add(
listaProductosVendidos.ElementAt(i).idProducto,
listaProductosVendidos.ElementAt(i).nomProducto,
listaProductosVendidos.ElementAt(i).cantidadVendida
);
}
}
private void btnGenerarReporte_Click(object sender, EventArgs e)
{
FormGenerarReporte formGenerarReporte = new FormGenerarReporte();
formGenerarReporte.listaProductosVendidos = listaProductosVendidos;
formGenerarReporte.Show();
}
}
}
Formulario Login
using SistemaVentas.Clases;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SistemaVentas
{
public partial class FormLogin : Form
{
public FormLogin()
{
InitializeComponent();
}
private void btnLogin_Click(object sender, EventArgs e)
{
try
{
Usuario usuario;
MetodosUsuarios metodosUsuarios = new MetodosUsuarios();
usuario = metodosUsuarios.LoginUsuario(tbUsuario.Text.Trim(), tbContrasena.Text.Trim());
if (usuario.idUsuario == 0)
{
MessageBox.Show("No se puede acceder, revisa que los datos sean correctos.");
} else
{
if (usuario.idEstado == 1)
{
MessageBox.Show("Esta cuenta esta inactiva, contacta al administrador del sistema");
} else
{
MDIPrincipal mdiPrincipal = new MDIPrincipal();
mdiPrincipal.idUsuario = usuario.idUsuario;
mdiPrincipal.nomUsuario = usuario.nomUsuario;
mdiPrincipal.idEstado = usuario.idEstado;
mdiPrincipal.idPermiso = usuario.idPermiso;
mdiPrincipal.Show();
this.Hide();
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void FormLogin_Load(object sender, EventArgs e)
{
}
}
}