コード例 #1
0
        public Resultado DesasignarDocenteSala(Docente docente, Sala sala, UsuarioLogueado usuarioLogueado)
        {
            var salasDocente = docente.Salas != null?docente.Salas.ToList() : new List <Sala>();

            if (salasDocente.Any(x => x.Id == sala.Id) == true)
            {
                salasDocente.Remove(sala);
            }

            docente.Salas = salasDocente.ToArray();

            return(new Resultado());
        }
コード例 #2
0
        public Resultado DesasignarHijoPadre(Hijo hijo, Padre padre, UsuarioLogueado usuarioLogueado)
        {
            var hijosPadre = padre.Hijos != null?padre.Hijos.ToList() : new List <Hijo>();

            if (hijosPadre.Any(x => x.Id == hijo.Id) == true)
            {
                hijosPadre.Remove(hijo);
            }

            padre.Hijos = hijosPadre.ToArray();

            return(new Resultado());
        }
コード例 #3
0
        public Resultado EliminarDocente(int id, Docente docenteeliminada, UsuarioLogueado usuariologueado)
        {
            CrearArchivos();
            LeerDocentes();
            Resultado verificacion = VerificarUsuarioLogeado(Roles.Directora, usuariologueado);

            if (verificacion.EsValido)
            {
                var docente = ObtenerDocentePorId(usuariologueado, id);
                ListaDocentes.Remove(docente);
                GuardarDocente(ListaDocentes);
            }
            return(verificacion);
        }
コード例 #4
0
        public Resultado EliminarDirectora(int id, Directora directoraeliminada, UsuarioLogueado usuariologueado)
        {
            CrearArchivos();
            LeerDirectoras();
            Resultado verificacion = VerificarUsuarioLogeado(Roles.Directora, usuariologueado);

            if (verificacion.EsValido)
            {
                var directora = ObtenerDirectoraPorId(usuariologueado, id);
                ListaDirectoras.Remove(directora);
                GuardarDirectora(ListaDirectoras);
            }
            return(verificacion);
        }
コード例 #5
0
        public Resultado EliminarDocente(int id, Docente docente, UsuarioLogueado usuarioLogueado)
        {
            Resultado Controlador = new Resultado();

            if (usuarioLogueado.Roles.Contains(Roles.Directora))
            {
                Controlador = Principal.Instance.BajaDocente(id, docente);
            }
            else
            {
                Controlador.Errores.Add("No tiene permisos para eliminar a un Docente.");
            }
            return(Controlador);
        }
コード例 #6
0
        public Resultado EliminarAlumno(int id, Hijo hijo, UsuarioLogueado usuarioLogueado)
        {
            Resultado Controlador = new Resultado();

            if (usuarioLogueado.RolSeleccionado != Roles.Directora && usuarioLogueado.RolSeleccionado != Roles.Docente)
            {
                Controlador.Errores.Add("No tiene permisos para eliminar un Alumno");
                return(Controlador);
            }

            Controlador = Principal.Instance.BajaAlumno(id, hijo);

            return(Controlador);
        }
コード例 #7
0
        public Resultado EliminarAlumno(int id, Hijo hijo, UsuarioLogueado usuariologueado)
        {
            LeerHijos();

            var resultado = VerificarUsuarioLogeado(Roles.Directora, usuariologueado);

            if (resultado.EsValido)
            {
                var hijoeliminado = ObtenerAlumnoPorId(usuariologueado, id);
                ListaHijos.Remove(hijoeliminado);
            }
            GuardarHijos(ListaHijos);
            return(resultado);
        }
コード例 #8
0
        public Resultado AltaAlumno(Hijo hijo, UsuarioLogueado usuarioLogueado)
        {
            CrearArchivos();
            LeerHijos();
            var resultado = VerificarUsuarioLogeado(Roles.Directora, usuarioLogueado);

            if (resultado.EsValido)
            {
                hijo.Id = ListaHijos.Count() + 1;
                ListaHijos.Add(hijo);
            }
            GuardarHijos(ListaHijos);
            return(resultado);
        }
コード例 #9
0
        public Resultado EditarDirectora(int id, Directora directora, UsuarioLogueado usuarioLogueado)
        {
            Resultado Controlador = new Resultado();

            if (usuarioLogueado.Roles.Contains(Roles.Directora))
            {
                Controlador = Principal.Instance.ModificarDirectora(id, directora);
            }
            else
            {
                Controlador.Errores.Add("No tiene permisos para editar a una Directora.");
            }
            return(Controlador);
        }
コード例 #10
0
        public UsuarioLogueado ObtenerUsuario(string email, string clave)
        {
            //Comprueba que exista el usuario
            Usuario usuario = ListaUsuarios.Where(x => x.Email == email).FirstOrDefault();

            if (usuario != null)
            {
                Clave cclave = ListaClaves.Where(x => x.Email == email).FirstOrDefault();
                if (cclave != null)
                {
                    if (cclave.ClaveIngreso == clave)
                    {
                        UsuarioLogueado logeado = new UsuarioLogueado();
                        logeado.Apellido = usuario.Apellido;
                        logeado.Email    = email;
                        logeado.Nombre   = usuario.Nombre;
                        logeado.Roles    = cclave.Roles;

                        //Pregunta que tipo de rol cumple para poder asignarlo
                        if (logeado.Roles.Contains(Roles.Directora))
                        {
                            logeado.RolSeleccionado = Roles.Directora;
                        }
                        if (logeado.Roles.Contains(Roles.Docente))
                        {
                            logeado.RolSeleccionado = Roles.Docente;
                        }
                        if (logeado.Roles.Contains(Roles.Padre))
                        {
                            logeado.RolSeleccionado = Roles.Padre;
                        }

                        return(logeado);
                    }
                    else
                    {
                        return(null);
                    }
                }
                else
                {
                    return(null);
                }
            }
            else
            {
                return(null);
            }
        }
コード例 #11
0
        public Resultado EliminarPadre(int id, Padre padreeliminado, UsuarioLogueado usuariologueado)
        {
            CrearArchivos();
            LeerPadres();

            Resultado verificacion = VerificarUsuarioLogeado(Roles.Directora, usuariologueado);

            if (verificacion.EsValido)
            {
                var padre = ObtenerPadrePorId(usuariologueado, id);
                ListaPadres.Remove(padre);
                GuardarPadre(ListaPadres);
            }
            return(verificacion);
        }
コード例 #12
0
ファイル: MenuAdmin.cs プロジェクト: davila23/utn-gdd
        public MenuAdmin(UsuarioLogueado usuario)
        {
            InitializeComponent();
            userLog = usuario;
            String query = "SELECT FUNCIONALIDADES.Func_Desc FROM HOTEL_CUATRIVAGOS.FUNCIONALIDADES_X_ROL FR, HOTEL_CUATRIVAGOS.FUNCIONALIDADES, HOTEL_CUATRIVAGOS.ROLES R" +
                           " WHERE FR.Func_Id = FUNCIONALIDADES.Func_Id" +
                           " AND R.Rol_Id = FR.Rol_Id" +
                           " AND R.Rol_Desc ='" + usuario.getRolAsignado() + "'";
            DataTable funcionalidades = usuario.getConexion().consulta(query);

            foreach (DataRow func in funcionalidades.Rows)
            {
                listaFuncionalidades.Add(func[0].ToString());
            }
        }
コード例 #13
0
        //---------------------------Asignar/Desasignar---------------------------------------------

        public Resultado AsignarDocenteSala(Docente docente, Sala sala, UsuarioLogueado usuarioLogueado)
        {
            Resultado NuevoResultado = new Resultado();

            if (usuarioLogueado.RolSeleccionado == Roles.Directora)
            {
                var salasDocente = docente.Salas != null?docente.Salas.ToList() : new List <Sala>()
                {
                };

                if (salasDocente.Any(x => x.Id == sala.Id) == false)
                {
                    salasDocente.Add(sala);
                    //agrega una sala al archivo de sala, si es que no existe dicha sala
                    var Listasalaencontrada = LeerSalas();
                    if (Listasalaencontrada == null)
                    {
                        LeerSalas();
                        ListaSalas.Add(sala);
                        GuardarSalas(ListaSalas);
                    }
                    else
                    {
                        var salaencontrada = Listasalaencontrada.Where(x => x.Id == sala.Id).FirstOrDefault();
                        if (salaencontrada == null)
                        {
                            LeerSalas();
                            ListaSalas.Add(sala);
                            GuardarSalas(ListaSalas);
                        }
                    }
                }
                else
                {
                    NuevoResultado.Errores.Add("No se encontro la sala");
                }
                docente.Salas = salasDocente.ToArray();

                LeerDocentes();
                ListaDocentes.Find(x => x.Id == docente.Id).Salas = docente.Salas; //obtiene el docente a asignar y le asigna las salas
                GuardarDocentes(ListaDocentes);                                    //guarda los cambios
            }
            else
            {
                NuevoResultado.Errores.Add("No tiene permiso para asignar");
            }
            return(NuevoResultado);
        }
コード例 #14
0
        public Resultado MarcarNotaComoLeida(Nota nota, UsuarioLogueado usuarioLogueado)
        {
            CrearArchivos();
            LeerNotas();
            //FALTA VALIDAR QUE EL USUARIO PUEDA LLEGAR A LA NOTA
            Resultado resultado = VerificarUsuarioLogeado(Roles.Padre, usuarioLogueado);

            if (resultado.EsValido)
            {
                ListaNotas.Find(x => x.Id == nota.Id).Leida = true;
            }

            GuardarNotas(ListaNotas);

            return(resultado);
        }
コード例 #15
0
        public Resultado MarcarNotaComoLeida(Nota nota, UsuarioLogueado usuarioLogueado)
        {
            Resultado NuevoResultado = new Resultado();

            if (usuarioLogueado.RolSeleccionado == Roles.Padre) //Solo si tiene rol padre puede responder una nota
            {
                LeerNotas();
                ListaNotas.Find(x => x.Id == nota.Id).Leida = true; //encuentra la nota y la marca como leida
                GuardarNotas(ListaNotas);
            }
            else
            {
                NuevoResultado.Errores.Add("No tiene los permisos necesarios");
            }
            return(NuevoResultado);
        }
コード例 #16
0
        private void btnBuscar_Click(object sender, EventArgs e)
        {
            publNegocio = new PublicacionesNegocio(SqlServerDBConnection.Instance());

            String TipoPublicacion = (cbxTipo.SelectedItem as ComboboxItem) != null ? (cbxTipo.SelectedItem as ComboboxItem).Text : null;
            String Id_Publicacion  = tbxCod.Text != "" ? tbxCod.Text : null;
            String Descripcion     = tbxDesc.Text != "" ? tbxDesc.Text : null;
            String userID          = null;

            if (UsuarioLogueado.Instance().rol != "Administrador")
            {
                userID = UsuarioLogueado.Instance().userId;
            }

            dataGridView1.DataSource = publNegocio.BuscarPublicaciones(Id_Publicacion, TipoPublicacion, Descripcion, userID);
        }
コード例 #17
0
        public Grilla <Hijo> ObtenerAlumnos(UsuarioLogueado usuarioLogueado, int paginaActual, int totalPorPagina, string busquedaGlobal)
        {
            CrearArchivos();
            LeerHijos();

            var listagrilla = ListaHijos
                              .Where(x => string.IsNullOrEmpty(busquedaGlobal) || x.Nombre.Contains(busquedaGlobal) || x.Apellido.Contains(busquedaGlobal))
                              .Skip(paginaActual * totalPorPagina).Take(totalPorPagina).ToArray();

            GuardarHijos(ListaHijos);
            return(new Grilla <Hijo>
            {
                Lista = listagrilla,
                CantidadRegistros = ListaHijos.Count(),
            });
        }
コード例 #18
0
        public Directora ObtenerDirectoraPorId(UsuarioLogueado usuarioLogueado, int id)
        {
            CrearArchivos();
            LeerDirectoras();
            var directora = new Directora();

            if (VerificarUsuarioLogeado(Roles.Directora, usuarioLogueado).EsValido)
            {
                directora = ListaDirectoras.Where(x => x.Id == id).FirstOrDefault();
            }
            else
            {
                directora = null;
            }
            GuardarDirectora(ListaDirectoras);
            return(directora);
        }
コード例 #19
0
        //---------------------------ABM Padres---------------------------------------------

        public Resultado AltaPadreMadre(Padre padre, UsuarioLogueado usuarioLogueado)
        {
            Resultado NuevoResultado = new Resultado();
            Usuario   nuevousuario   = null;

            padre.Id = LeerUsuarios().Count + 1;

            //Pregunto si tiene el Roll de Directora
            if (usuarioLogueado.RolSeleccionado == Roles.Directora)
            {
                if (LeerUsuarios() != null) //Busco si existe el Padre
                {
                    nuevousuario = LeerUsuarios().Where(x => x.Email == padre.Email).FirstOrDefault();
                }

                if (nuevousuario == null)//No existe, cargo uno nuevo
                {
                    Clave NuevaClave = new Clave();
                    NuevaClave.Id    = padre.Id;
                    NuevaClave.Email = padre.Email;
                    NuevaClave.Roles = new Roles[] { Roles.Padre };

                    LeerClaves();
                    ListaClaves.Add(NuevaClave); //Cargo la nueva clave generada
                    GuardarClaves(ListaClaves);

                    LeerUsuarios();
                    ListaUsuarios.Add(padre); //Cargo un nuevo usuario
                    GuardarUsuarios(ListaUsuarios);

                    LeerPadres();
                    ListaPadres.Add(padre); //Cargo un nuevo padre
                    GuardarPadres(ListaPadres);
                }
                else
                {
                    NuevoResultado.Errores.Add("El usuario ya existe");
                }
            }
            else
            {
                NuevoResultado.Errores.Add("No tiene permiso");
            }

            return(NuevoResultado);
        }
コード例 #20
0
        public Resultado EditarAlumno(int id, Hijo hijoeditado, UsuarioLogueado usuariologueado)
        {
            CrearArchivos();
            LeerHijos();

            var resultado = VerificarUsuarioLogeado(Roles.Directora, usuariologueado);

            if (resultado.EsValido)
            {
                var hijo = ObtenerAlumnoPorId(usuariologueado, id);
                ListaHijos.Remove(hijo);
                ListaHijos.Add(hijoeditado);
                GuardarHijos(ListaHijos);
            }

            return(resultado);
        }
コード例 #21
0
 public Sala[] ObtenerSalasPorInstitucion(UsuarioLogueado usuarioLogueado)
 {
     Sala[] salita = null;
     if (usuarioLogueado.RolSeleccionado == Roles.Directora) //Si es director se retornan todas las salas
     {
         salita = ListaSalas.ToArray();
     }
     else
     {
         if (usuarioLogueado.RolSeleccionado == Roles.Docente) //Si es docente se retorna solo la sala correspondiente
         {
             Docente docente = ListaDocentes.Where(x => x.Email == usuarioLogueado.Email).FirstOrDefault();
             salita = docente.Salas;
         }
     }
     return(salita);
 }
コード例 #22
0
        public Hijo ObtenerAlumnoPorId(UsuarioLogueado usuarioLogueado, int id)
        {
            CrearArchivos();
            LeerHijos();
            var hijo = new Hijo();

            if (VerificarUsuarioLogeado(Roles.Directora, usuarioLogueado).EsValido)
            {
                hijo = ListaHijos.Single(x => x.Id == id);
            }
            else
            {
                hijo = null;
            }
            GuardarHijos(ListaHijos);
            return(hijo);
        }
コード例 #23
0
        public Docente ObtenerDocentePorId(UsuarioLogueado usuarioLogueado, int id)
        {
            CrearArchivos();
            LeerDocentes();
            var docente = new Docente();

            if (VerificarUsuarioLogeado(Roles.Directora, usuarioLogueado).EsValido)
            {
                docente = ListaDocentes.Where(x => x.Id == id).FirstOrDefault();
            }
            else
            {
                docente = null;
            }
            GuardarDocente(ListaDocentes);
            return(docente);
        }
コード例 #24
0
        public Padre ObtenerPadrePorId(UsuarioLogueado usuarioLogueado, int id)
        {
            CrearArchivos();
            LeerPadres();
            var padre = new Padre();

            if (VerificarUsuarioLogeado(Roles.Directora, usuarioLogueado).EsValido)
            {
                padre = ListaPadres.Where(x => x.Id == id).FirstOrDefault();
            }
            else
            {
                padre = null;
            }
            GuardarPadre(ListaPadres);
            return(padre);
        }
コード例 #25
0
        public Hijo[] ObtenerPersonas(UsuarioLogueado usuarioLogueado)
        {
            switch (usuarioLogueado.RolSeleccionado)
            {
            case Roles.Padre:
                return(_alumnos.Where(x => x.Id == 1 || x.Id == 2).ToArray());

            case Roles.Directora:
                return(_alumnos.ToArray());

            case Roles.Docente:
                return(_alumnos.Where(x => x.Sala.Id == 2 || x.Sala.Id == 4).ToArray());

            default:
                throw new Exception("Rol no implementado");
            }
        }
コード例 #26
0
        public Resultado EditarPadreMadre(int id, Padre padre, UsuarioLogueado usuarioLogueado)
        {
            Resultado NuevoResultado = new Resultado();

            if (usuarioLogueado.RolSeleccionado == Roles.Docente)
            {
                Padre NuevoPadre = ObtenerPadrePorId(usuarioLogueado, id);
                NuevoPadre = padre;

                Clave NuevaClave = LeerClaves().Where(x => x.Id == id).FirstOrDefault();
                NuevaClave.Email = padre.Email;

                Usuario nuevoUsuario = new Usuario()
                {
                    Id       = id,
                    Nombre   = padre.Nombre,
                    Apellido = padre.Apellido,
                    Email    = padre.Email
                };

                // Busca el padre y lo borra de los archivos
                LeerPadres().RemoveAll(x => x.Id == padre.Id);
                LeerUsuarios().RemoveAll(x => x.Id == padre.Id);
                LeerClaves().RemoveAll(x => x.Id == padre.Id);

                // Busca el padre y lo guarda en los archivos
                LeerPadres();
                LeerUsuarios();
                LeerClaves();

                ListaPadres.Add(NuevoPadre);
                ListaUsuarios.Add(nuevoUsuario);
                ListaClaves.Add(NuevaClave);

                GuardarPadres(ListaPadres);
                GuardarUsuarios(ListaUsuarios);
                GuardarClaves(ListaClaves);
            }
            else
            {
                NuevoResultado.Errores.Add("No tiene permisos para editar");
            }

            return(NuevoResultado);
        }
コード例 #27
0
        protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            if (User.Identity.IsAuthenticated)
            {
                var cookie = filterContext.HttpContext.Request.Cookies[FormsAuthentication.FormsCookieName];

                if (cookie != null)
                {
                    var data = FormsAuthentication.Decrypt(cookie.Value).UserData;

                    ViewBag.User = usuarioLogueado = JsonConvert.DeserializeObject <UsuarioLogueado>(data);
                }
            }

            ViewBag.NombreGrupo = CreateService().ObtenerNombreGrupo();

            base.OnActionExecuting(filterContext);
        }
コード例 #28
0
 public ABMHotel(UsuarioLogueado user, List <string> listaFunc)
 {
     InitializeComponent();
     desactivarBotones();
     usuario = user;
     if (listaFunc.Contains("Alta de Hotel"))
     {
         btnAlta.Enabled = true;
     }
     if (listaFunc.Contains("Baja de Hotel"))
     {
         btnBaja.Enabled = true;
     }
     if (listaFunc.Contains("Modificacion de Hotel"))
     {
         btnModif.Enabled = true;
     }
 }
コード例 #29
0
ファイル: ABMUsuario.cs プロジェクト: davila23/utn-gdd
 public ABMUsuario(UsuarioLogueado userLog, List <string> listaFunc)
 {
     InitializeComponent();
     desactivarBotones();
     conexion = userLog.getConexion();
     if (listaFunc.Contains("Alta de usuario"))
     {
         btnAlta.Enabled = true;
     }
     if (listaFunc.Contains("Baja de usuario"))
     {
         btnBajar.Enabled = true;
     }
     if (listaFunc.Contains("Modificacion de usuario"))
     {
         btnModificar.Enabled = true;
     }
 }
コード例 #30
0
        public static Resultado PermisosDirectora(Roles rol, UsuarioLogueado usuarioLogueado) //Acá para ver si tiene los permisos necesarios y si existe en la DB
        {
            Resultado result = new Resultado();

            if ((int)rol != 1)
            {
                result.Errores.Add("Error 403: Permisos insuficientes");
            }
            else
            {
                List <LogicaDirectora> Directora = Archivo.Instancia.Leer <LogicaDirectora>();
                if (Directora == null || Directora.Count() == 0 || Directora.Find(x => x.Email == usuarioLogueado.Email) == null)
                {
                    result.Errores.Add("Error 404: Directora no encontrada en la base de datos.");
                }
            }
            return(result);
        }