public object AddGroupUser(UpdateGroupMemberDto model) { var group = _context.Groups.Include(u => u.Users).FirstOrDefault(x => x.Id == model.GroupId); if (group == null) { return(BadRequest("Group does not exists")); } var user = _context.Users.FirstOrDefault(x => x.IdentityGuid == model.IdentityGuid) ?? new UserProfile(); var idemUser = new IdemService().GetUser(model.IdentityGuid); if (idemUser != null) { user.EmailAddress = idemUser.EmailAddress; user.FirstName = idemUser.Firstname; user.LastName = idemUser.Lastname; user.IdentityGuid = idemUser.IdentityGuid; user.FullName = $"{user.FirstName} {user.LastName}"; } _context.Users.AddOrUpdate(user); group.Users.Add(user); _context.SaveChanges(); var applications = new IdemService().GetUserApplications(user.EmailAddress); if (!applications.Any(x => x.ApplicationViewKey == Constants.ApplicationName)) { WorkEmailer.RequestAccess(user, _currentUsername); } return(Ok(user)); }