Compare commits

...

3 Commits

24 changed files with 150 additions and 169 deletions

View File

@@ -1,35 +0,0 @@
using System.Collections.ObjectModel;
using System.Runtime.InteropServices;
using Modelo;
namespace Controladora
{
public abstract class ControladoraBase<T /*Tipo de Dato*/ ,
J /*Singleton*/>
where J : new()
{
// Singleton thread-safe por si quiero usar "Parallel"
private static J instance = new J();
public static J Instance
{
get
{
return instance;
}
}
// Lista los contenidos del repositorio
abstract public ReadOnlyCollection<T> Listar();
// Recibe mensajes de la Vista para dar de alta
abstract public string Añadir(T t);
// Recibe mensajes para modificar
abstract public string Modificar(T t);
// Recibe mensajes para eliminar
abstract public string Eliminar(T t);
}
}

View File

@@ -4,9 +4,9 @@ using Modelo;
namespace Controladora
{
public class ControladoraCategorias : ControladoraBase<Categoria, ControladoraCategorias>
public class ControladoraCategorias : Singleton<ControladoraCategorias>
{
public override string Añadir(Categoria t)
public string Añadir(Categoria t)
{
if (t == null) return "El Categoria es nulo fallo la carga";
@@ -15,7 +15,7 @@ namespace Controladora
$"Fallo la carga del Categoria {t.Descripcion}";
}
override public string Eliminar(Categoria t)
public string Eliminar(Categoria t)
{
if (t == null) return "El Categoria es nulo fallo la carga";
@@ -24,7 +24,7 @@ namespace Controladora
$"Fallo la Eliminacion del Categoria {t.Descripcion}";
}
override public string Modificar(Categoria t)
public string Modificar(Categoria t)
{
if (t == null) return "El Categoria es nulo fallo la carga";
@@ -33,7 +33,7 @@ namespace Controladora
$"Fallo la Modificacion del Categoria {t.Descripcion}";
}
public override ReadOnlyCollection<Categoria> Listar()
public ReadOnlyCollection<Categoria> Listar()
{
return RepositorioCategoria.Instance.Listar();
}

View File

@@ -4,36 +4,38 @@ using Modelo;
namespace Controladora
{
public class ControladoraClientes : ControladoraBase<Cliente, ControladoraClientes>
public class ControladoraClientes : Singleton<ControladoraClientes>
{
public override string Añadir(Cliente t)
public string Añadir(Cliente cl)
{
if (t == null) return "El Cliente es nulo fallo la carga";
if (cl == null) return "El Cliente es nulo fallo la carga";
return (RepositorioClientes.Instance.Add(t)) ?
$"El Cliente {t.Nombre} se cargo correctamente":
$"Fallo la carga del Cliente {t.Nombre}";
return (RepositorioClientes.Instance.Add(cl)) ?
$"El Cliente {cl.Nombre} se cargo correctamente":
$"Fallo la carga del Cliente {cl.Nombre}";
}
override public string Eliminar(Cliente t)
public string Eliminar(long t)
{
if (t == null) return "El Cliente es nulo fallo la carga";
var cl = RepositorioClientes.Instance.Listar().First(x => long.Parse(x.Cuit) == t);
return (RepositorioClientes.Instance.Del(t)) ?
$"El Cliente {t.Nombre} se Elimino correctamente":
$"Fallo la Eliminacion del Cliente {t.Nombre}";
if (cl == null) return "El Cliente es nulo fallo la carga";
return (RepositorioClientes.Instance.Del(cl)) ?
$"El Cliente {cl.Nombre} se Elimino correctamente":
$"Fallo la Eliminacion del Cliente {t}";
}
override public string Modificar(Cliente t)
public string Modificar(Cliente cl)
{
if (t == null) return "El Cliente es nulo fallo la carga";
if (cl == null) return "El Cliente es nulo fallo la carga";
return (RepositorioClientes.Instance.Mod(t)) ?
$"El Cliente {t.Nombre} se Modifico correctamente":
$"Fallo la Modificacion del Cliente {t.Nombre}";
return (RepositorioClientes.Instance.Mod(cl)) ?
$"El Cliente {cl.Nombre} se Modifico correctamente":
$"Fallo la Modificacion del Cliente {cl.Nombre}";
}
public override ReadOnlyCollection<Cliente> Listar()
public ReadOnlyCollection<Cliente> Listar()
{
return RepositorioClientes.Instance.Listar();
}

View File

@@ -4,9 +4,9 @@ using Modelo;
namespace Controladora
{
public class ControladoraFacturas : ControladoraBase<Factura, ControladoraFacturas>
public class ControladoraFacturas : Singleton<ControladoraFacturas>
{
public override string Añadir(Factura t)
public string Añadir(Factura t)
{
if (t == null) return "El Factura es nulo fallo la carga";
@@ -15,7 +15,7 @@ namespace Controladora
$"Fallo la carga del Factura {t.Id}";
}
override public string Eliminar(Factura t)
public string Eliminar(Factura t)
{
if (t == null) return "El Factura es nulo fallo la carga";
@@ -24,7 +24,7 @@ namespace Controladora
$"Fallo la Eliminacion del Factura {t.Id}";
}
override public string Modificar(Factura t)
public string Modificar(Factura t)
{
if (t == null) return "El Factura es nulo fallo la carga";
@@ -33,7 +33,7 @@ namespace Controladora
$"Fallo la Modificacion del Factura {t.Id}";
}
public override ReadOnlyCollection<Factura> Listar()
public ReadOnlyCollection<Factura> Listar()
{
return RepositorioFactura.Instance.Listar();
}

View File

@@ -4,9 +4,9 @@ using Modelo;
namespace Controladora
{
public class ControladoraOrdenDeCompras : ControladoraBase<OrdenDeCompra, ControladoraOrdenDeCompras>
public class ControladoraOrdenDeCompras : Singleton<ControladoraOrdenDeCompras>
{
public override string Añadir(OrdenDeCompra t)
public string Añadir(OrdenDeCompra t)
{
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";
@@ -15,7 +15,7 @@ namespace Controladora
$"Fallo la carga del OrdenDeCompra {t.Id}";
}
override public string Eliminar(OrdenDeCompra t)
public string Eliminar(OrdenDeCompra t)
{
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";
@@ -24,7 +24,7 @@ namespace Controladora
$"Fallo la Eliminacion del OrdenDeCompra {t.Id}";
}
override public string Modificar(OrdenDeCompra t)
public string Modificar(OrdenDeCompra t)
{
if (t == null) return "El OrdenDeCompra es nulo fallo la carga";
@@ -33,7 +33,7 @@ namespace Controladora
$"Fallo la Modificacion del OrdenDeCompra {t.Id}";
}
public override ReadOnlyCollection<OrdenDeCompra> Listar()
public ReadOnlyCollection<OrdenDeCompra> Listar()
{
return RepositorioOrdenDeCompra.Instance.Listar();
}

View File

@@ -4,9 +4,9 @@ using Modelo;
namespace Controladora
{
public class ControladoraPedidoDePresupuestos : ControladoraBase<PedidoDePresupuesto, ControladoraPedidoDePresupuestos>
public class ControladoraPedidoDePresupuestos : Singleton<ControladoraPedidoDePresupuestos>
{
public override string Añadir(PedidoDePresupuesto t)
public string Añadir(PedidoDePresupuesto t)
{
if (t == null) return "El PedidoDePresupuesto es nulo fallo la carga";
@@ -15,7 +15,7 @@ namespace Controladora
$"Fallo la carga del PedidoDePresupuesto {t.Id}";
}
override public string Eliminar(PedidoDePresupuesto t)
public string Eliminar(PedidoDePresupuesto t)
{
if (t == null) return "El PedidoDePresupuesto es nulo fallo la carga";
@@ -24,7 +24,7 @@ namespace Controladora
$"Fallo la Eliminacion del PedidoDePresupuesto {t.Id}";
}
override public string Modificar(PedidoDePresupuesto t)
public string Modificar(PedidoDePresupuesto t)
{
if (t == null) return "El PedidoDePresupuesto es nulo fallo la carga";
@@ -33,7 +33,7 @@ namespace Controladora
$"Fallo la Modificacion del PedidoDePresupuesto {t.Id}";
}
public override ReadOnlyCollection<PedidoDePresupuesto> Listar()
public ReadOnlyCollection<PedidoDePresupuesto> Listar()
{
return RepositorioPedidoDePresupuesto.Instance.Listar();
}

View File

@@ -4,9 +4,9 @@ using Modelo;
namespace Controladora
{
public class ControladoraPresupuestos : ControladoraBase<Presupuesto, ControladoraPresupuestos>
public class ControladoraPresupuestos : Singleton<ControladoraPresupuestos>
{
public override string Añadir(Presupuesto t)
public string Añadir(Presupuesto t)
{
if (t == null) return "El Presupuesto es nulo fallo la carga";
@@ -15,7 +15,7 @@ namespace Controladora
$"Fallo la carga del Presupuesto {t.Id}";
}
override public string Eliminar(Presupuesto t)
public string Eliminar(Presupuesto t)
{
if (t == null) return "El Presupuesto es nulo fallo la carga";
@@ -24,7 +24,7 @@ namespace Controladora
$"Fallo la Eliminacion del Presupuesto {t.Id}";
}
override public string Modificar(Presupuesto t)
public string Modificar(Presupuesto t)
{
if (t == null) return "El Presupuesto es nulo fallo la carga";
@@ -33,7 +33,7 @@ namespace Controladora
$"Fallo la Modificacion del Presupuesto {t.Id}";
}
public override ReadOnlyCollection<Presupuesto> Listar()
public ReadOnlyCollection<Presupuesto> Listar()
{
return RepositorioPresupuesto.Instance.Listar();
}

View File

@@ -4,9 +4,9 @@ using Modelo;
namespace Controladora
{
public class ControladoraProductos : ControladoraBase<Producto, ControladoraProductos>
public class ControladoraProductos : Singleton<ControladoraProductos>
{
public override string Añadir(Producto t)
public string Añadir(Producto t)
{
if (t == null) return "El Producto es nulo fallo la carga";
@@ -15,7 +15,7 @@ namespace Controladora
$"Fallo la carga del Producto {t.Nombre}";
}
public override string Eliminar(Producto t)
public string Eliminar(Producto t)
{
if (t == null) return "El Producto es nulo fallo la carga";
@@ -24,7 +24,7 @@ namespace Controladora
$"Fallo la Eliminacion del Producto {t.Nombre}";
}
public override string Modificar(Producto t)
public string Modificar(Producto t)
{
if (t == null) return "El Producto es nulo fallo la carga";
@@ -33,7 +33,7 @@ namespace Controladora
$"Fallo la Modificacion del Producto {t.Nombre}";
}
public override ReadOnlyCollection<Producto> Listar()
public ReadOnlyCollection<Producto> Listar()
{
return RepositorioProductos.Instance.Listar();
}

View File

@@ -4,9 +4,9 @@ using Modelo;
namespace Controladora
{
public class ControladoraProveedores : ControladoraBase<Proveedor, ControladoraProveedores>
public class ControladoraProveedores : Singleton<ControladoraProveedores>
{
public override string Añadir(Proveedor t)
public string Añadir(Proveedor t)
{
if (t == null) return "El Proveedor es nulo fallo la carga";
@@ -15,14 +15,6 @@ namespace Controladora
$"Fallo la carga del Proveedor {t.Nombre}";
}
public override string Eliminar(Proveedor t)
{
if (t == null) return "El Proveedor es nulo fallo la baja";
return (RepositorioProveedor.Instance.Del(t)) ?
$"El Proveedor {t.Nombre} se Elimino correctamente":
$"Fallo la Eliminacion del Proveedor {t.Nombre}";
}
public string Eliminar(long t)
{
var proveedor = RepositorioProveedor.Instance.Listar().First(x => x.Cuit == t);
@@ -34,7 +26,7 @@ namespace Controladora
$"Fallo la Eliminacion del Proveedor {t}";
}
public override string Modificar(Proveedor t)
public string Modificar(Proveedor t)
{
if (t == null) return "El Proveedor es nulo fallo la modificacion";
@@ -43,7 +35,7 @@ namespace Controladora
$"Fallo la Modificacion del Proveedor {t.Nombre}";
}
public override ReadOnlyCollection<Proveedor> Listar()
public ReadOnlyCollection<Proveedor> Listar()
{
return RepositorioProveedor.Instance.Listar();
}

View File

@@ -4,14 +4,14 @@ using Modelo;
namespace Controladora
{
public class ControladoraRemito : ControladoraBase<Remito, ControladoraRemito>
public class ControladoraRemito : Singleton<ControladoraRemito>
{
public override ReadOnlyCollection<Remito> Listar()
public ReadOnlyCollection<Remito> Listar()
{
return RepositorioRemito.Instance.Listar();
}
override public string Añadir(Remito t)
public string Añadir(Remito t)
{
if (t == null) return "El Remito es nulo fallo la carga";
@@ -20,7 +20,7 @@ namespace Controladora
$"Fallo la carga del remito {t.Id}";
}
override public string Modificar(Remito t)
public string Modificar(Remito t)
{
if (t == null) return "El Remito es nulo fallo la carga";
@@ -29,7 +29,7 @@ namespace Controladora
$"Fallo la carga del remito {t.Id}";
}
override public string Eliminar(Remito t)
public string Eliminar(Remito t)
{
if (t == null) return "El Remito es nulo fallo la carga";

20
Controladora/Singleton.cs Normal file
View File

@@ -0,0 +1,20 @@
using System.Collections.ObjectModel;
using System.Runtime.InteropServices;
using Modelo;
namespace Controladora
{
public class Singleton<T> where T : new()
{
// Singleton thread-safe por si quiero usar "Parallel"
private static T instance = new T();
public static T Instance
{
get
{
return instance;
}
}
}
}

View File

@@ -1 +1 @@
6f6a78b4935fedf0a1d7d61323972c582e90d7ca
59d9a59c18cc1287fb9e3a009ea4857b622fe3fc

View File

@@ -39,8 +39,8 @@ namespace Vista
txtApellido = new TextBox();
txtDireccion = new TextBox();
txtCorreo = new TextBox();
button1 = new Button();
button2 = new Button();
BtnAceptar = new Button();
BtnCancelar = new Button();
SuspendLayout();
//
// label1
@@ -123,33 +123,36 @@ namespace Vista
txtCorreo.Size = new Size(174, 23);
txtCorreo.TabIndex = 9;
//
// button1
// BtnAceptar
//
button1.Location = new Point(29, 190);
button1.Name = "button1";
button1.Size = new Size(75, 23);
button1.TabIndex = 10;
button1.Text = "Aceptar";
button1.UseVisualStyleBackColor = true;
button1.Click += button1_Click;
BtnAceptar.Location = new Point(29, 190);
BtnAceptar.Name = "BtnAceptar";
BtnAceptar.Size = new Size(75, 23);
BtnAceptar.TabIndex = 10;
BtnAceptar.Text = "Aceptar";
BtnAceptar.UseVisualStyleBackColor = true;
BtnAceptar.Click += BtnAceptar_Click;
//
// button2
// BtnCancelar
//
button2.Location = new Point(158, 190);
button2.Name = "button2";
button2.Size = new Size(75, 23);
button2.TabIndex = 11;
button2.Text = "Cancelar";
button2.UseVisualStyleBackColor = true;
button2.Click += button2_Click;
BtnCancelar.Location = new Point(158, 190);
BtnCancelar.Name = "BtnCancelar";
BtnCancelar.Size = new Size(75, 23);
BtnCancelar.TabIndex = 11;
BtnCancelar.Text = "Cancelar";
BtnCancelar.UseVisualStyleBackColor = true;
BtnCancelar.Click += BtnCancelar_Click;
//
// FrmCliente
//
AcceptButton = BtnAceptar;
AutoScaleDimensions = new SizeF(7F, 15F);
AutoScaleMode = AutoScaleMode.Font;
CancelButton = BtnCancelar;
ClientSize = new Size(420, 245);
Controls.Add(button2);
Controls.Add(button1);
ControlBox = false;
Controls.Add(BtnCancelar);
Controls.Add(BtnAceptar);
Controls.Add(txtCorreo);
Controls.Add(txtDireccion);
Controls.Add(txtApellido);
@@ -179,8 +182,8 @@ namespace Vista
private TextBox txtApellido;
private TextBox txtDireccion;
private TextBox txtCorreo;
private Button button1;
private Button button2;
private Button BtnAceptar;
private Button BtnCancelar;
public EventHandler button1_Click_1 { get; private set; }
}

View File

@@ -1,13 +1,5 @@
using Entidades;
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;
using Controladora;
namespace Vista
{
@@ -17,12 +9,30 @@ namespace Vista
public FrmCliente(Cliente? cliente = null)
{
InitializeComponent();
if (cliente != null)
{
this.cliente = cliente;
this.Text = (cliente == null) ?
"Agregar Cliente" :
"Modificar Cliente";
this.Text = "Modificar Proveedor";
CargarDatos();
}
else
{
this.Text = "Agregar Proveedor";
}
}
private void CargarDatos()
{
txtNombre.Text = cliente.Nombre;
txtApellido.Text = cliente.Apellido;
txtDireccion.Text = cliente.Direccion;
txtCorreo.Text = cliente.Correo;
txtCuit.ReadOnly = true;
}
private bool ValidarDatos()
{
string devolucion = "";
@@ -50,12 +60,12 @@ namespace Vista
}
}
private void button2_Click(object sender, EventArgs e)
private void BtnCancelar_Click(object sender, EventArgs e)
{
this.Close();
}
private void button1_Click(object sender, EventArgs e)
private void BtnAceptar_Click(object sender, EventArgs e)
{
string msg;
if (ValidarDatos())
@@ -72,18 +82,18 @@ namespace Vista
};
// msg = ControladoraCliente.Instance.AgregarCliente(Cliente);
msg = ControladoraClientes.Instance.Añadir(cliente);
}
else
{
//Cliente.Apellido = txtApellido.Text;
// Cliente.Nombre = txtNombre.Text;
// Cliente.Direccion = txtDireccion.Text;
// Cliente.Correo = txtCorreo.Text;
// Cliente.Cuit = txtCuit.Text;
// msg = ControladoraCliente.Instance.ModificarCliente(Cliente);
cliente.Apellido = txtApellido.Text;
cliente.Nombre = txtNombre.Text;
cliente.Direccion = txtDireccion.Text;
cliente.Correo = txtCorreo.Text;
cliente.Cuit = txtCuit.Text;
msg = ControladoraClientes.Instance.Modificar(cliente);
}
// MessageBox.Show(msg, "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
MessageBox.Show(msg, "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
Close();
}

View File

@@ -18,7 +18,7 @@
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Color1" type="System.Drawing.Color, System.Drawing"">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>

View File

@@ -1,13 +1,5 @@
using Entidades;
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;
using Controladora;
namespace Vista
{
@@ -17,13 +9,13 @@ namespace Vista
public FrmClientes()
{
InitializeComponent();
ActualizarGrilla();
}
private void ActualizarGrilla()
{
dataGridView1.DataSource = null;
// dataGridView1.DataSource = listaProveedores;
//revisar dataGridView1.DataSource = ControladoraClientes.Instance.RecuperarProveedores();
dataGridView1.DataSource = ControladoraClientes.Instance.Listar();
}
private void button1_Click(object sender, EventArgs e)
@@ -45,7 +37,7 @@ namespace Vista
{
Nombre = dataGridView1.SelectedRows[0].Cells["Nombre"].Value.ToString(),
Cuit = dataGridView1.SelectedRows[0].Cells["Cuit"].Value.ToString(),
Apellido = dataGridView1.SelectedRows[0].Cells["RazonSocial"].Value.ToString(),
Apellido = dataGridView1.SelectedRows[0].Cells["Apellido"].Value.ToString(),
Direccion = dataGridView1.SelectedRows[0].Cells["Direccion"].Value.ToString(),
Correo = dataGridView1.SelectedRows[0].Cells["Correo"].Value.ToString(),
};
@@ -65,8 +57,8 @@ namespace Vista
foreach (DataGridViewRow Fila in dataGridView1.SelectedRows)
{ // itera por un loop y elimina las lineas seleccionadas 1 a la vez.
//string devolucion = ControladoraClientes.Instance.EliminarCliente(Fila.Cells["Codigo"].Value.ToString());
// MessageBox.Show(devolucion);
string devolucion = ControladoraClientes.Instance.Eliminar(long.Parse(Fila.Cells["Cuit"].Value.ToString()));
MessageBox.Show(devolucion);
ActualizarGrilla();
}
}

View File

@@ -6,8 +6,6 @@ namespace Vista
public partial class FrmProveedor : Form
{
Proveedor proveedor;
List<Proveedor> listaProveedores = new List<Proveedor>();
public FrmProveedor(Proveedor? proveedor = null)
{
@@ -17,7 +15,7 @@ namespace Vista
{
this.proveedor = proveedor;
this.Text = "Modificar Proveedor";
CargarDatos(proveedor);
CargarDatos();
}
else
{
@@ -27,7 +25,7 @@ namespace Vista
}
private void CargarDatos(Proveedor proveedor)
private void CargarDatos()
{
txtDireccion.Text = proveedor.Direccion;
txtNombre.Text = proveedor.Nombre;
@@ -78,7 +76,6 @@ namespace Vista
RazonSocial = txtSocial.Text,
Habilitado = checkBoxHabilitado.Checked,
};
listaProveedores.Add(proveedor);
msg = ControladoraProveedores.Instance.Añadir(proveedor);
}
else