public async Task <List <User> > GetUsersBasedOnRoleAsync(UserBranches userBranches) { List <User> userList = new List <User>(); var userRoles = await userRolesRepository.GetUserRolesAsync(userBranches.BranchId, userBranches.UserId); foreach (var item in userRoles) { if (item.RoleId == ConstRoles.Admin) { UserFilter userFilter = new UserFilter(); var users = await userRepository.GetByPredicateAsync(X => X.ID != userBranches.UserId); userList = users.ToList(); return(userList); } else if (item.RoleId == ConstRoles.SuperViser) { var branch = await branchRepository.GetBranchAsync(userBranches.BranchId); var zone = await zoneRepository.GetZoneInfoByZoneIDAsync(branch.ZoneID); var branches = await zoneRepository.GetProvinceBranchesByProvinceCode(zone.OSTANCode); var users = await userRepository.GetUsereOfBranches(branches); users = users.Where(X => X.ID != userBranches.UserId); userList = users.ToList(); return(userList); } else { // var users = await userRepository.GetUsereOfBranche(userBranches.BranchId); //users = users.Where(X => X.ID != userBranches.UserId); //userList = users.ToList(); } } return(null); }
public async Task <Zone> GetZoneInfoByZoneIDAsync(int zoneID) { return(await _zoneRepository.GetZoneInfoByZoneIDAsync(zoneID)); }