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); }
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); }
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); }
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); }
protected bool?validateToken(UsuarioRes objUsuario, string tokenSesion) { //SecurityHelper.ValidateTimeToken(tokenSesion); return(objBusinessLogin.validarTokenConBd(objUsuario)); }