Exemplo n.º 1
0
        public async Task <IHttpActionResult> PutTipoRol(int id, TipoRol tipoRol)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tipoRol.IdTipoRol)
            {
                return(BadRequest());
            }

            db.Entry(tipoRol).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TipoRolExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Edit(int id, [Bind("TipoRolID,RolID,UsuarioID,FechaInicio")] TipoRol tipoRol)
        {
            if (id != tipoRol.TipoRolID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(tipoRol);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TipoRolExists(tipoRol.TipoRolID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["RolID"]     = new SelectList(_context.Rol, "RolID", "RolID", tipoRol.RolID);
            ViewData["UsuarioID"] = new SelectList(_context.Set <Usuario>(), "UsuarioID", "Contrasenia", tipoRol.UsuarioID);
            return(View(tipoRol));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Genera un objeto rol en base a un registro de la DB
        /// </summary>
        /// <param name="dr">Datarow de un datatable</param>
        /// <returns>Devuelve un objeto establecimiento</returns>

        private Rol ArmarObjeto(DataRow dr)
        {
            DateTime        dt;
            int             id = (int)dr["id"];
            Establecimiento oEstablecimiento = null;
            NivelEducativo  oNivel           = null;

            if (!(dr["establecimiento_nivel_id"] is DBNull))
            {
                int        idCombinado = (int)dr["establecimiento_nivel_id"];
                List <int> ids         = _establecimientos_niveles.Buscar(idCombinado);
                oEstablecimiento = _establecimientos.BuscarPorId(ids[0]);
                oNivel           = _niveles.BuscarPorId(ids[1]);
            }

            Usuario oUsuario = _usuarios.BuscarPorId((int)dr["usuario_id"]);
            TipoRol oRol     = _tipo_roles.BuscarPorId((int)dr["tipo_id"]);

            if (dr["borrado"] is DBNull)
            {
                dr["borrado"] = "9/9/9999";
            }

            DateTime.TryParse(dr["borrado"].ToString(), out dt);

            return(new Rol(id, oRol, oUsuario, oEstablecimiento, oNivel, dt));
        }
Exemplo n.º 4
0
        /// <summary>
        /// Marca como activo el rol especificado
        /// </summary>
        /// <param name="id">ID del rol a activar</param>

        public void Reactivar(int id)
        {
            TipoRol oRol = _roles.BuscarPorId(id);

            if (oRol == null)
            {
                throw new Exception("No existe rol con ese ID");
            }

            _roles.Reactivar(id);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Busca el rol con el ID especificado
        /// </summary>
        /// <param name="id">ID del rol a buscar</param>
        /// <returns>Devuelve un objeto rol</returns>

        public TipoRol BuscarPorId(int id)
        {
            TipoRol oRol = _roles.BuscarPorId(id);

            if (oRol == null)
            {
                throw new Exception("No existe rol con ese ID");
            }

            return(oRol);
        }
Exemplo n.º 6
0
        public async Task <IHttpActionResult> GetTipoRol(int id)
        {
            TipoRol tipoRol = await db.TipoRols.FindAsync(id);

            if (tipoRol == null)
            {
                return(NotFound());
            }

            return(Ok(tipoRol));
        }
Exemplo n.º 7
0
        public async Task <IHttpActionResult> PostTipoRol(TipoRol tipoRol)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.TipoRols.Add(tipoRol);
            await db.SaveChangesAsync();

            return(CreatedAtRoute("DefaultApi", new { id = tipoRol.IdTipoRol }, tipoRol));
        }
Exemplo n.º 8
0
 public Usuario(string id, string nombre, string apellido, DateTime fechaNacimiento, Multimedia fotoPerfil, TipoSexo tipoSexo, string correoElectronico, string ciudad, string pais, TipoRol rol)
 {
     this.id                = id;
     this.nombre            = nombre;
     this.apellido          = apellido;
     this.fechaNacimiento   = fechaNacimiento;
     this.fotoPerfil        = fotoPerfil;
     this.tipoSexo          = tipoSexo;
     this.correoElectronico = correoElectronico;
     this.ciudad            = ciudad;
     this.pais              = pais;
     this.rol               = rol;
 }
Exemplo n.º 9
0
        public async Task <IActionResult> Create([Bind("TipoRolID,RolID,UsuarioID,FechaInicio")] TipoRol tipoRol)
        {
            if (ModelState.IsValid)
            {
                _context.Add(tipoRol);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["RolID"]     = new SelectList(_context.Rol, "RolID", "RolID", tipoRol.RolID);
            ViewData["UsuarioID"] = new SelectList(_context.Set <Usuario>(), "UsuarioID", "Contrasenia", tipoRol.UsuarioID);
            return(View(tipoRol));
        }
Exemplo n.º 10
0
        public async Task <IHttpActionResult> DeleteTipoRol(int id)
        {
            TipoRol tipoRol = await db.TipoRols.FindAsync(id);

            if (tipoRol == null)
            {
                return(NotFound());
            }

            db.TipoRols.Remove(tipoRol);
            await db.SaveChangesAsync();

            return(Ok(tipoRol));
        }
Exemplo n.º 11
0
            public AtributosUsuario(int id)
            {
                Random random = new Random();

                this.id           = "" + (10000 + id);
                nombre            = "NombreUsuario " + id;
                apellido          = "ApellidosUsuario " + id;
                fechaNacimiento   = DateTime.Now;
                fotoPerfil        = new Multimedia("" + id, "foto" + id, id + "kb", "url/" + id, "imagen", "jpg");
                tipoSexo          = TipoSexo.Hombre;
                correoElectronico = "usuario" + id + "@historian.com";
                ciudad            = "ciudadUsuario " + id;
                pais = "paisUsuario " + id;
                rol  = TipoRol.Usuario;
            }
Exemplo n.º 12
0
        /// <summary>
        /// Crea un objeto rol y lo guarda en la DB
        /// </summary>
        /// <param name="nombre">Nombre del rol</param>

        public void Nuevo(string nombre)
        {
            if (string.IsNullOrEmpty(nombre))
            {
                throw new Exception("El nombre no puede estar vacío");
            }

            if (_roles.BuscarPorNombre(nombre) != null)
            {
                throw new Exception("Ya existe un rol con ese nombre");
            }

            TipoRol oRol = new TipoRol(nombre);

            _roles.Agregar(oRol);
        }
Exemplo n.º 13
0
        /// <summary>
        /// Crea un nuevo objeto rol y lo guarda en la DB.
        /// </summary>
        /// <param name="usuario_id">ID del usuario asociado</param>
        /// <param name="tipoRol_id">ID del tipo de rol asociado</param>
        /// <param name="establecimiento_id">ID del establecimiento asociado</param>
        /// <param name="nivel_id">ID del nivel educativo asociado</param>

        public void Nuevo(int usuario_id, int tipo_id, int establecimiento_id, int nivel_id)
        {
            Rol             oRol;
            NivelEducativo  oNivel           = niveles.BuscarPorId(nivel_id);
            Establecimiento oEstablecimiento = establecimientos.BuscarPorId(establecimiento_id);
            Usuario         oUsuario         = usuarios.BuscarPorId(usuario_id);
            TipoRol         oTipo            = tipo_roles.BuscarPorId(tipo_id);

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

            if (oTipo == null)
            {
                throw new Exception("No existe un tipo de rol con ese ID");
            }

            if (oNivel == null)
            {
                throw new Exception("El establecimiento no tiene asociado ese nivel educativo");
            }

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

            if (establecimientos_niveles.BuscarPorParametros(oEstablecimiento.Id, oNivel.Id) == 0)
            {
                throw new Exception("No existe dupla Establecimiento/Nivel como la que elegiste");
            }

            oRol = new Rol(oTipo, oUsuario, oEstablecimiento, oNivel);
            int _id = _roles.Nuevo(oRol);

            this.GenerarQr(_id);
        }
Exemplo n.º 14
0
        /// <summary>
        /// Edita el registro del rol especificada
        /// </summary>
        /// <param name="nombre">Nombre del rol</param>
        /// <param name="id">ID del rol a editar</param>

        public void Editar(string nombre, int id)
        {
            if (string.IsNullOrEmpty(nombre))
            {
                throw new Exception("El nombre no puede estar vacío");
            }

            TipoRol oRol   = _roles.BuscarPorId(id),
                    previo = _roles.BuscarPorNombre(nombre);

            if (previo != null)
            {
                throw new Exception("Otro rol ya uso ese nombre");
            }

            if (oRol == null)
            {
                throw new Exception("No existe rol con ese ID");
            }

            oRol.Nombre = nombre;
            _roles.Editar(oRol);
        }
Exemplo n.º 15
0
        /// <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);
        }
 public ContadorHistorias(string id, string nombre, string apellido, DateTime fechaNacimiento, Multimedia fotoPerfil, TipoSexo tipoSexo, string correoElectronico, string ciudad, string pais, TipoRol rol) :
     base(id, nombre, apellido, fechaNacimiento, fotoPerfil, tipoSexo, correoElectronico, ciudad, pais, rol)
 {
 }
Exemplo n.º 17
0
 public static Usuario CrearUsuario(String id, String nombre, String apellido, DateTime fechaNacimiento, Multimedia fotoPerfil, TipoSexo tipoSexo, String correoElectronico, String ciudad, String pais, TipoRol rol, List <Multimedia> certificado, String descripcionExperiencia)
 {
     return(rol switch
     {
         TipoRol.Historiador => new Historiador(id, nombre, apellido, fechaNacimiento, fotoPerfil, tipoSexo, correoElectronico, ciudad, pais, rol, certificado, descripcionExperiencia),
         TipoRol.Usuario => new Usuario(id, nombre, apellido, fechaNacimiento, fotoPerfil, tipoSexo, correoElectronico, ciudad, pais, rol),
         TipoRol.ContadorHistorias => new ContadorHistorias(id, nombre, apellido, fechaNacimiento, fotoPerfil, tipoSexo, correoElectronico, ciudad, pais, rol),
         _ => null,
     });
Exemplo n.º 18
0
 public Historiador(string id, string nombre, string apellido, DateTime fechaNacimiento, Multimedia fotoPerfil, TipoSexo tipoSexo, string correoElectronico, string ciudad, string pais, TipoRol rol, List <Multimedia> certificado, string descripcionExperiencia) :
     base(id, nombre, apellido, fechaNacimiento, fotoPerfil, tipoSexo, correoElectronico, ciudad, pais, rol)
 {
     this.certificado            = certificado;
     this.descripcionExperiencia = descripcionExperiencia;
     this.autorizado             = false;
     this.sitiosHistoricos       = new List <SitioHistorico>();
 }
Exemplo n.º 19
0
        /// <summary>
        /// Metodo que le permite a un usuario registrar sus datos personales la primera vez que ingresa al sistema
        /// </summary>
        /// <param name="accessToken">Token generado por el API de Google</param>
        /// <param name="nombre">nombre del usuario</param>
        /// <param name="apellido">apellido del usuario</param>
        /// <param name="fechaNacimiento">fecha de nacimiento del usuario</param>
        /// <param name="fotoPerfiL">foto de perfil del usuario</param>
        /// <param name="sexo">sexo del usuario</param>
        /// <param name="ciudad">ciudad de origen del usuario</param>
        /// <param name="pais">pais del usuario</param>
        /// <param name="rol">rol del nuevo usuario</param>
        /// <returns>True si se registro correctamente</returns>
        public bool registrarDatosUsuario(String accessToken, String nombre, String apellido, DateTime fechaNacimiento, Multimedia fotoPerfiL, TipoSexo sexo, String ciudad, String pais, TipoRol rol)
        {
            GoogleUserOutputData usuario = obtenerInformacionGoogle(accessToken);

            Usuario usuarioBuscado = buscarUsuario(usuario.id);

            if (usuarioBuscado != null)
            {
                throw new UsuarioException("El usuario ya existe");
            }

            Usuario nuevoUsuario = new Usuario(usuario.id, nombre, apellido, fechaNacimiento, fotoPerfiL, sexo, usuario.email, ciudad, pais, rol);

            IRepositorioUsuario repositorioUsuarios = FabricaRepositoriosUsuarios.CrearRepositorioUsuarios("json");

            repositorioUsuarios.guardarUsuario(nuevoUsuario);

            return(true);
        }
        private List <NotificacionViewModel> ObtenerListaNotificacion(DataTable tabla, TipoRol rol)
        {
            var lista = new List <NotificacionViewModel>();

            foreach (DataRow fila in tabla.Rows)
            {
                lista.Add(new NotificacionViewModel
                {
                    IdPrecliente    = Convert.ToInt32(fila["id_precliente"].ToString()),
                    Rol             = rol,
                    NombreComercial = fila["nombre_comercial"].ToString().Trim(),
                    IdNotificacion  = Convert.ToInt32(fila["id_notificacion_usuario"].ToString()),
                    Estatus         = (EstatusCliente)Enum.Parse(typeof(EstatusCliente), fila["estatus"].ToString()),
                    Descripcion     = fila["Notificacion"].ToString()
                });
            }

            return(lista);
        }
Exemplo n.º 21
0
 public Rol(int codigo, TipoRol tipo)
 {
     this.Codigo = codigo;
     this.Tipo   = tipo;
 }
Exemplo n.º 22
0
 public NotificacionViewModel ObtenerVistaControladorByRolEstatus(TipoRol rol, EstatusCliente estatus)
 {
     return(ListaAnalisis().Find(l => l.Rol == rol && l.Estatus == estatus));
 }