cambios para añadir proveedores en form de productos + proveedores y resuelto un bug en form proveedores

This commit is contained in:
fedpo
2024-08-05 00:01:17 +01:00
committed by fede
parent 77dc57dda2
commit 16bff577e4
21 changed files with 280 additions and 70 deletions

View File

@@ -15,12 +15,20 @@ namespace Vista
{
public partial class FrmProducto : Form
{
private Producto nuevoproducto = new Producto();
public FrmProducto()
{
InitializeComponent();
CargarCategorias();
CargarTabla();
}
private void CargarTabla()
{
dgvProveedor.DataSource = null;
dgvProveedor.DataSource = ControladoraProveedores.Instance.Listar();
}
private void CargarCategorias()
{
// Obtener la lista de categorías desde la controladora
@@ -81,18 +89,16 @@ namespace Vista
{
if (ValidarDatos())
{
// Crear nuevo producto
var nuevoProducto = new Producto
{
Id = (int)numericUpDown1.Value,
Nombre = textBox1.Text,
Precio = (double)numericUpDown2.Value,
Habilitado = checkBox1.Checked,
Categoria = (Categoria)comboBox1.SelectedItem, // Asignar categoría seleccionada
};
nuevoproducto.Id = (int)numericUpDown1.Value;
nuevoproducto.Nombre = textBox1.Text;
nuevoproducto.Precio = (double)numericUpDown2.Value;
nuevoproducto.Habilitado = checkBox1.Checked;
nuevoproducto.Categoria = (Categoria)comboBox1.SelectedItem;
// Agregar el producto usando la controladora
string mensaje = ControladoraProductos.Instance.Añadir(nuevoProducto);
string mensaje = ControladoraProductos.Instance.Añadir(nuevoproducto);
MessageBox.Show(mensaje, "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
@@ -109,5 +115,51 @@ namespace Vista
// Puedes usar este método para manejar cambios en el ComboBox si es necesario
// No es necesario mantener una variable separada para la categoría seleccionada
}
private void btnaddProveedor_Click(object sender, EventArgs e)
{
try
{
if (dgvProveedor.SelectedRows.Count > 0)
{
foreach (DataGridViewRow selectedRow in dgvProveedor.SelectedRows)
{
Proveedor proveedor = (Proveedor)selectedRow.DataBoundItem;
nuevoproducto.AñadirProveedor(proveedor);
dgvProveedorAñadido.DataSource = null;
dgvProveedorAñadido.DataSource = nuevoproducto.ListarProveedores();
}
}
else
{
MessageBox.Show("Por favor, selecciona una fila para eliminar Proveedor del producto.");
}
}
catch (Exception) { throw; }
}
private void btnrmProveedor_Click(object sender, EventArgs e)
{
try
{
if (dgvProveedorAñadido.SelectedRows.Count > 0)
{
foreach (DataGridViewRow selectedRow in dgvProveedor.SelectedRows)
{
Proveedor proveedor = (Proveedor)selectedRow.DataBoundItem;
dgvProveedorAñadido.Rows.Remove(selectedRow);
Proveedor proveedoreliminar = nuevoproducto.ListarProveedores().First(x => x.Cuit == proveedor.Cuit);
nuevoproducto.EliminarProveedor(proveedoreliminar);
}
}
else
{
MessageBox.Show("Por favor, selecciona una fila para eliminar Proveedor del producto.");
}
}
catch (Exception) { throw; }
}
}
}