/// <summary>
 /// Eliminar un cliente, solo cambia de estado
 /// </summary>
 /// <param name="cliente"></param>
 public void EliminarCliente(SIGEEA_Cliente cliente)
 {
     DataClasses1DataContext dc = new DataClasses1DataContext();
     SIGEEA_Cliente nuevo = dc.SIGEEA_Clientes.First(c => c.PK_Id_Cliente == cliente.PK_Id_Cliente);
     nuevo.Estado_Cliente = false;
     dc.SubmitChanges();
 }
 /// <summary>
 /// Registrar cliente (se registra primero la persona, y luego el cliente)
 /// </summary>
 /// <param name="persona"></param>
 /// <param name="cliente"></param>
 /// <param name="creCliente"></param>
 public void RegistrarCliente(SIGEEA_Persona persona, SIGEEA_Cliente cliente, SIGEEA_CreCliente creCliente)
 {
     DataClasses1DataContext dc = new DataClasses1DataContext();
     PersonaMantenimiento nuevaPersona = new PersonaMantenimiento();
     nuevaPersona.RegistrarPersona(persona);
     dc.SIGEEA_CreClientes.InsertOnSubmit(creCliente);
     cliente.FK_Id_Persona = persona.PK_Id_Persona;
     cliente.FK_Id_CreCliente = creCliente.PK_Id_CreCliente;
     dc.SIGEEA_Clientes.InsertOnSubmit(cliente);
     dc.SubmitChanges();
 }
 /// <summary>
 /// Registrar cliente (se registra primero la persona, y luego el cliente)
 /// </summary>
 /// <param name="persona"></param>
 /// <param name="cliente"></param>
 /// <param name="creCliente"></param>
 public void RegistrarCliente(SIGEEA_Persona persona, SIGEEA_Cliente cliente, int pkCategoria)
 {
     DataClasses1DataContext dc = new DataClasses1DataContext();
     PersonaMantenimiento nuevaPersona = new PersonaMantenimiento();
     nuevaPersona.RegistrarPersona(persona);
     dc.SubmitChanges();
     cliente.FK_Id_Persona = persona.PK_Id_Persona;
     cliente.FK_Id_CatCliente = pkCategoria;
     cliente.Estado_Cliente = true;
     cliente.FK_Id_Empresa = 1;
     dc.SIGEEA_Clientes.InsertOnSubmit(cliente);
     dc.SubmitChanges();
 }
 /// <summary>
 /// Modificar Cliente
 /// </summary>
 /// <param name="cliente"></param>
 /// <param name="creCliente"></param>
 /// <param name="persona"></param>
 public void ModificarCliente(SIGEEA_Cliente cliente, SIGEEA_CreCliente creCliente, SIGEEA_Persona persona)
 {
     DataClasses1DataContext dc = new DataClasses1DataContext();
     SIGEEA_Cliente client = dc.SIGEEA_Clientes.First(c => c.PK_Id_Cliente == cliente.PK_Id_Cliente);
     SIGEEA_Persona pers = dc.SIGEEA_Personas.First(c => c.PK_Id_Persona == cliente.FK_Id_Persona);
     SIGEEA_CreCliente cred = dc.SIGEEA_CreClientes.First(c => c.PK_Id_CreCliente == cliente.FK_Id_CreCliente);
     client.Categoria_Cliente = cliente.Categoria_Cliente;
     PersonaMantenimiento nuevoMant = new PersonaMantenimiento();
     nuevoMant.ModificarPersona(pers);
     cred.Limite_CreCliente = creCliente.Limite_CreCliente;
     cred.TieMaximo_CreCliente = creCliente.TieMaximo_CreCliente;
     cred.RanPagos_CreCliente = creCliente.RanPagos_CreCliente;
     dc.SubmitChanges();
 }
 partial void DeleteSIGEEA_Cliente(SIGEEA_Cliente instance);
 partial void UpdateSIGEEA_Cliente(SIGEEA_Cliente instance);
 partial void InsertSIGEEA_Cliente(SIGEEA_Cliente instance);
		private void detach_SIGEEA_Clientes(SIGEEA_Cliente entity)
		{
			this.SendPropertyChanging();
			entity.SIGEEA_CreCliente = null;
		}
		private void attach_SIGEEA_Clientes(SIGEEA_Cliente entity)
		{
			this.SendPropertyChanging();
			entity.SIGEEA_Persona = this;
		}
        private void btnRegistrarCliente_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                RegistrarPersona();
                

                ClienteMantenimiento clienteMant = new ClienteMantenimiento();

                if (editar == false)
                {
                    SIGEEA_Cliente nuevoCliente = new SIGEEA_Cliente();
                    SIGEEA_CatCliente nuevaCat = new SIGEEA_CatCliente();
                    nuevaCat.FK_Id_TipCatCliente = Convert.ToInt32(lbPkCatCliente.Content);
                    nuevaCat.Limite_CatCliente = Convert.ToDouble(txbCreMaximo.Text);
                    nuevaCat.RanPagos_CatCliente = txbRango.Text;
                    nuevaCat.TieMaximo_CatCliente = txbTiempoMaximo.Text;
                    clienteMant.RegistrarCliente(nuevaPersona, nuevoCliente, clienteMant.RegistrarCategoria(nuevaCat));
                }
                else
                {
                    
                    SIGEEA_CatCliente nuevaCat = new SIGEEA_CatCliente();
                    nuevaCat.FK_Id_TipCatCliente = Convert.ToInt32(lbPkCatCliente.Content);
                    nuevaCat.Limite_CatCliente = Convert.ToDouble(txbCreMaximo.Text);
                    nuevaCat.RanPagos_CatCliente = txbRango.Text;
                    nuevaCat.TieMaximo_CatCliente = txbTiempoMaximo.Text;
                    SIGEEA_Cliente nuevoCliente = new SIGEEA_Cliente();
                    clienteMant.ModificarCliente(nuevoCliente, mantCliente.EditarCategoria(nuevaCat), nuevaPersona);
                }

                MessageBox.Show("La solicitud realizada se finalizó con éxito.");
            }
            catch
            {
                MessageBox.Show("Error al realizar la solicitud.");
            }
        }
        /// <summary>
        /// Modificar Cliente
        /// </summary>
        /// <param name="cliente"></param>
        /// <param name="creCliente"></param>
        /// <param name="persona"></param>
        public void ModificarCliente(SIGEEA_Cliente cliente, int pkCategoria, SIGEEA_Persona pPersona)
        {
            DataClasses1DataContext dc = new DataClasses1DataContext();

            SIGEEA_Cliente client = dc.SIGEEA_Clientes.First(c => c.FK_Id_Persona == pPersona.PK_Id_Persona);
            client.FK_Id_CatCliente = pkCategoria;
            PersonaMantenimiento nuevoMant = new PersonaMantenimiento();
            nuevoMant.ModificarPersona(pPersona);
            dc.SubmitChanges();
        }