예제 #1
0
        private void btnNegar_Click(object sender, EventArgs e)
        {
            ActualizarSeleccionado();

            if (PatenteHabilitadaSeleccionada != null)
            {
                if (UsuarioSeleccionado.Patentes.Any(patUsu => patUsu.IdPatente == PatenteHabilitadaSeleccionada.IdPatente))
                {
                    UsuarioSeleccionado.Patentes.Where(pat => pat.IdPatente == PatenteHabilitadaSeleccionada.IdPatente).FirstOrDefault().Negada = true;
                }

                var permitido = patenteBLL.CheckeoPatenteParaBorrar(PatenteHabilitadaSeleccionada, UsuarioSeleccionado, aBMUsuario.ObtenerUsuariosBd(), true);

                if (permitido)
                {
                    patenteBLL.NegarPatente(PatenteHabilitadaSeleccionada.IdPatente, UsuarioSeleccionado.UsuarioId);
                }
                else
                {
                    MessageBox.Show("Imposible Negar esta patente");
                }

                ActualizarUsuarioSeleccionado();

                CargarListas();
            }
        }
예제 #2
0
        private void btnQuitar_Click(object sender, EventArgs e)
        {
            ActualizarSeleccionado();

            var permitir = patenteBLL.CheckeoPatenteParaBorrar(PatenteUsuarioSeleccionada, UsuarioSeleccionado, aBMUsuario.ObtenerUsuariosBd());

            if (permitir)
            {
                if (UsuarioSeleccionado.Patentes.Any(patUsu => patUsu.IdPatente == PatenteUsuarioSeleccionada.IdPatente))
                {
                    UsuarioSeleccionado.Patentes.RemoveAll(PatUsu => PatUsu.IdPatente == PatenteUsuarioSeleccionada.IdPatente);
                }

                patenteBLL.BorrarPatentesUsuario(new List <int>()
                {
                    PatenteUsuarioSeleccionada.IdPatente
                }, UsuarioSeleccionado.UsuarioId);

                PatUsuario.ClearSelected();
            }
            else
            {
                Alert.ShowSimpleAlert("Al menos un usuario debe tener asignada esta patente", "MSJ015");
            }

            CargarListas();
        }
예제 #3
0
        private void lstPatentes_ItemCheck(object sender, ItemCheckEventArgs e)
        {
            if (!checkeadapat)
            {
                var patenteSel = new Patente();

                if (FamiliaNueva)
                {
                    FamiliaNueva = false;

                    patenteSel = (Patente)lstPatentes.SelectedItem;

                    AsignarPatente(familia.FamiliaId, patenteSel.IdPatente);
                }
                else
                {
                    patenteSel = (Patente)lstPatentes.SelectedItem;

                    var patentes = patenteBLL.ConsultarPatenteFamilia(familia.FamiliaId);

                    if (patentes.Exists(x => x.IdPatente == patenteSel.IdPatente))
                    {
                        var usuarios = familiaBLL.ObtenerUsuariosPorFamilia(familia.FamiliaId);

                        if (usuarios.Count > 0)
                        {
                            foreach (var usuario in usuarios)
                            {
                                usuario.Patentes.AddRange(usuarioBLL.ObtenerPatentesDeUsuario(usuario.UsuarioId));

                                foreach (var familia in usuario.Familia)
                                {
                                    familia.Patentes = familiaBLL.ObtenerPatentesFamilia(familia.FamiliaId);
                                }
                                if (patenteBLL.CheckeoPatenteParaBorrar(patenteSel, usuario, usuarioBLL.TraerUsuariosConPatentesYFamilias(), true))
                                {
                                    BorrarPatente(familia.FamiliaId, patenteSel.IdPatente);
                                }
                                else
                                {
                                    MessageBox.Show("No se puede quitar esta patente a la familia");
                                    RecargarGrilla();
                                    e.NewValue = e.CurrentValue;
                                }
                            }
                        }
                        else
                        {
                            BorrarPatente(familia.FamiliaId, patenteSel.IdPatente);
                        }
                    }
                    else
                    {
                        AsignarPatente(familia.FamiliaId, patenteSel.IdPatente);
                    }
                }
            }
        }