public List <AppUser> SearchUsers(UserSC search) { var result = new List <AppUser>(); try { var query = Context.AppUser .Where(u => u.IsDeleted != true && u.IsSysAdmin != true) .Include(u => u.JobTitle) .Include(u => u.Department) .AsQueryable(); query = query.Where(u => u.Department.IsActive == true); if (search != null) { if (!string.IsNullOrWhiteSpace(search.Name)) { query = query.Where(u => u.FullName != null && u.FullName.Contains(search.Name)); } if (!string.IsNullOrWhiteSpace(search.Email)) { query = query.Where(u => u.Email != null && u.Email.Contains(search.Email)); } if (!string.IsNullOrWhiteSpace(search.PhoneNumber)) { query = query.Where(u => u.PhoneNumber != null && u.PhoneNumber.Contains(search.PhoneNumber)); } if (search.Role?.Count > 0 && !search.Role.Contains(0)) { query = query.Where(u => u.LnkUserRole.Any(lnk => search.Role.Contains(lnk.RoleId))); } if (search.JobTitle?.Count > 0 && !search.JobTitle.Contains(0)) { query = query.Where(u => search.JobTitle.Contains(u.JobTitleId.GetValueOrDefault())); } if (search.Department?.Count > 0 && !search.Department.Contains(0)) { query = query.Where(u => search.Department.Contains(u.DepartmentId.GetValueOrDefault())); } if (search.Status > 0) { query = query.Where(u => (search.Status == 1 && u.IsActive == true) || (search.Status == 2 && u.IsActive != true)); } } result = query.ToList(); } catch { } return(result.OrderByDescending(p => p.Id).ToList()); }
public IActionResult Login([FromQuery, Required, StringLength(30)] string username, [FromQuery, Required] string password) { // Realiza el login. El token será nulo si la contraseña es incorrecta. string token = new UserSC().Login(username, password); if (token != null) { return(Ok(new { Token = token })); } else { return(Unauthorized()); } }
public PartialViewResult _UserList(UserSC search) { var users = UnitOfWork.UserBL.SearchUsers(search); var model = users.Select(u => { var roles = UnitOfWork.RoleBL.GetUserRoles(u.Id); var Branches = UnitOfWork.BranchBL.GetUserBranches(u.Id); return(new UserVM(u) { Branch = string.Join(", ", Branches.Select(r => r.Name).ToArray()), Roles = string.Join(", ", roles.Select(r => r.Name).ToArray()), }); }).ToList(); return(PartialView(model)); }
public PartialViewResult _UserList(UserSC search) { if (!LoggedIsSystemAdmin) { search.Department.Add(LoggedUserDepartmentId); } var users = UnitOfWork.AppUserBL.SearchUsers(search); var model = users.Select(u => { var roles = UnitOfWork.RoleBL.GetUserRoles(u.Id); return(new UserVM(u) { Roles = string.Join(", ", roles.Select(r => r.Name).ToArray()), }); }).ToList(); return(PartialView(model)); }
public FileResult ExportUsers(UserSC search) { var users = UnitOfWork.AppUserBL.SearchUsers(search); var allUsers = UnitOfWork.AppUserBL.GetAll(); var data = users.Select(u => { var roles = UnitOfWork.RoleBL.GetUserRoles(u.Id); return(new UserExportModel(u) { Roles = string.Join(", ", roles.Select(r => r.Name).ToArray()), CreatedBy = allUsers.FirstOrDefault(p => p.Id == u.CreatedBy)?.FullName, LastModifiedBy = allUsers.FirstOrDefault(p => p.Id == u.LastModifiedBy)?.FullName, }); }).ToArray(); if (data?.Length > 0) { var dt = Helper.GenerateDataTable(data); using (XLWorkbook wb = new XLWorkbook()) { wb.Worksheets.Add(dt, "Users"); using (MemoryStream stream = new MemoryStream()) { var now = DateTime.Now; var sb = new StringBuilder(); sb.Append(now.ToShortDateString()) .Append('_') .Append(now.ToShortTimeString()); var nowString = sb.ToString(); wb.SaveAs(stream); return(File(stream.ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", $"Users_{nowString}.xlsx")); } } } else { return(null); } }
public static void Usuarios() { var UserQry = new UserSC().GetUser(); var output = UserQry.ToList(); }