Пример #1
0
        public List <IngenieroRes> ListarIngenieros(UsuarioRes objUsuario)
        {
            var response = default(List <IngenieroRes>);

            try
            {
                var ingenieros = context.Persona
                                 .Include(e => e.Empleado)
                                 .AsQueryable();
                if (objUsuario.Perfil == "A")
                {
                    ingenieros = ingenieros.Where(e => e.Empleado.JefeId != default(int?));
                }
                else
                {
                    ingenieros = ingenieros.Where(e => e.Empleado.JefeId == objUsuario.PersonaId);
                }

                response = ingenieros
                           .Select(e => new IngenieroRes(e))
                           .ToList();
            }
            catch {
                response = null;
            }
            return(response);
        }
Пример #2
0
        public bool?validarTokenConBd(UsuarioRes objUsuario)
        {
            bool?response = false;

            try
            {
                var usuario = context.Usuario
                              .Include(e => e.Persona)
                              .ThenInclude(e => e.Empleado)
                              .FirstOrDefault(x => x.UsuarioId == objUsuario.UsuarioId);

                if (usuario == null)
                {
                    throw new ExceptionHelper(401, "El usuario no existe.");
                }
                if (usuario.Token != objUsuario.SessionToken)
                {
                    throw new ExceptionHelper(401, "Sesion invalida, comuniquese con un administrador");
                }
                response = true;
            }
            catch
            {
                response = null;
            }
            return(response);
        }
Пример #3
0
        public UsuarioRes Loguearse(string username, string psw)
        {
            var response = default(UsuarioRes);

            try
            {
                var usuario = context.Usuario
                              .Include(e => e.Persona)
                              .ThenInclude(e => e.Empleado)
                              .Where(e => e.UsuarioId == username && e.Psw == psw)
                              .SingleOrDefault(x => x.UsuarioId == username);
                if (usuario is null)
                {
                    throw new Exception();
                }
                usuario.Token = SecurityHelper.GenerateToken(usuario);
                context.SaveChanges();
                response = new UsuarioRes(usuario, true);
            }
            catch
            {
                response = null;
            }
            return(response);
        }
Пример #4
0
        public List <OrdenesIngenieroRes> ListarOrdenesDeIngeniero(UsuarioRes objUsuario)
        {
            var response = default(List <OrdenesIngenieroRes>);

            try
            {
                var Ordenes = context.Orden
                              .Include(e => e.Empleado)
                              .ThenInclude(e => e.EmpleadoNavigation)
                              .Include(e => e.OrdenDetalle)
                              .ThenInclude(e => e.OrdenServicio)
                              .ThenInclude(e => e.Servicio)
                              .Include(e => e.OrdenDetalle)
                              .ThenInclude(e => e.Ejemplar)
                              .Include(e => e.LugarPersonas)
                              .ThenInclude(e => e.Lugar)
                              .Include(e => e.Empleado)
                              .Include(e => e.LugarPersonas.Cliente)
                              .ThenInclude(e => e.ClienteNavigation)
                              .AsQueryable();
                if (objUsuario.Perfil == "S")
                {
                    var subditos = context.Empleado.Where(e => e.JefeId == objUsuario.PersonaId)
                                   .Select(e => e.EmpleadoId)
                                   .ToList();
                    Ordenes = Ordenes.Where(e => subditos.Contains(e.EmpleadoId) || e.EmpleadoId == objUsuario.PersonaId);
                }
                else if (objUsuario.Perfil == "I")
                {
                    Ordenes = Ordenes.Where(e => e.EmpleadoId == objUsuario.PersonaId);
                }

                response = Ordenes.Select(e => new OrdenesIngenieroRes(e)).ToList();
            }
            catch {
                response = null;
            }
            return(response);
        }
Пример #5
0
 protected bool?validateToken(UsuarioRes objUsuario, string tokenSesion)
 {
     //SecurityHelper.ValidateTimeToken(tokenSesion);
     return(objBusinessLogin.validarTokenConBd(objUsuario));
 }