示例#1
0
        /// <summary>
        /// Edita el registro del usuario especificado
        /// </summary>
        /// <param name="nombre">Nombre del usuario</param>
        /// <param name="id">ID del usuario a editar</param>
        /// <param name="dni">DNI del usuario</param>
        /// <param name="email">Email del usuario</param>

        public void Editar(string nombre, int dni, string email, int id)
        {
            if (string.IsNullOrEmpty(nombre) || string.IsNullOrEmpty(email))
            {
                throw new Exception("Debe completar todos los campos");
            }

            Usuario previo,
                    oUsuario = _usuarios.BuscarPorId(id);

            if (oUsuario == null)
            {
                throw new Exception("No existe usuario con ese id");
            }

            previo = _usuarios.BuscarPorEmail(email);

            if (previo != null && previo.Id != id)
            {
                throw new Exception("Ya existe usuario con ese email");
            }

            previo = _usuarios.BuscarPorDni(dni);

            if (previo != null && previo.Id != id)
            {
                throw new Exception("Ya existe usuario con ese DNI");
            }

            oUsuario.Nombre = nombre;
            oUsuario.Email  = email;
            oUsuario.Dni    = dni;
            _usuarios.Editar(oUsuario);
        }
示例#2
0
        public void CambiarPassword(int usuario_id, string passVieja, string passNueva1, string passNueva2)
        {
            if (String.IsNullOrEmpty(passNueva1) || String.IsNullOrEmpty(passNueva2) || string.IsNullOrEmpty(passVieja))
            {
                throw new Exception("Debe completar todos los campos");
            }

            if (passNueva1 != passNueva2)
            {
                throw new Exception("El password ingresado y su confirmación no concuerdan");
            }

            Usuario oUsuario = _usuarios.BuscarPorId(usuario_id);

            if (oUsuario == null)
            {
                throw new Exception("No existe Usuario activo con ese id");
            }

            if (oUsuario.Password != passVieja)
            {
                throw new Exception("El password original no es correcto");
            }

            _usuarios.ActualizarPassword(usuario_id, passNueva1);
        }
        /// <summary>
        /// Agrega un rol estudiante en la DB. Si el usuario no existe, tambien lo crea.
        /// </summary>
        /// <param name="dni">DNI del estudiante</param>
        /// <param name="nombre">Nombre del estudiante</param>
        /// <param name="email">Email del estudiante</param>
        /// <param name="director_id">ID del director asociado que crea al estudiante.</param>

        public void Nuevo(int dni, string nombre, string email, int director_id)
        {
            if (String.IsNullOrEmpty(nombre) || String.IsNullOrEmpty(email))
            {
                throw new Exception("Debe completar todos los campos");
            }

            TipoRol oTipo    = _tipos.BuscarPorNombre("Estudiante");
            Usuario director = _usuarios.BuscarPorId(director_id),
                    oUser    = _usuarios.BuscarPorDni(dni);

            director.ListaRoles = roles.TraerActivos(director_id);

            Establecimiento oEstablecimiento = director.ListaRoles.First(p => p.Tipo.Nombre == "Director").Establecimiento;
            NivelEducativo  oNivel           = director.ListaRoles.First(p => p.Tipo.Nombre == "Director").Nivel;

            if (oUser == null)
            {
                if (_usuarios.BuscarPorEmail(email) != null)
                {
                    throw new Exception("Ya existe un estudiante con ese email");
                }

                oUser    = new Usuario(nombre, dni, email);
                oUser.Id = _usuarios.Nuevo(oUser);
            }

            if (roles.EsEstudiante(oUser.Id, _establecimientos_niveles.BuscarPorParametros(oEstablecimiento.Id, oNivel.Id)))
            {
                throw new Exception("Este usuario ya tiene el rol estudiante en su institucion.");
            }

            Rol oRol = new Rol(oTipo, oUser, oEstablecimiento, oNivel);

            roles.Nuevo(oRol);
        }