public ClanCreateResult ClanCreate(ClanCreateRequest request)
        {
            int userId;

            this.TryGetUserId(out userId);

            Clan newClan = new Clan
            {
                Name        = request.Name,
                Tag         = request.Tag,
                Description = request.Description
            };

            _clanRepository.CreateAsync(newClan).Wait();
            var leaderMembership = new ClanMembership
            {
                ClanId = newClan.ClanId,
                UserId = userId,
                Role   = 1
            };

            _clanMembershipRepository.CreateAsync(leaderMembership).Wait();

            var leaderBaseData = _userBaseDataRepository.GetByUserIdAsync(userId).Result;

            return(new ClanCreateResult
            {
                Result = new ServiceResult <UserBaseData>
                {
                    Data = leaderBaseData
                }
            });
        }
 public GetUsersBaseDataResult GetUsersBaseData(GetUsersBaseDataRequest request)
 {
     return(new GetUsersBaseDataResult
     {
         Result = new ServiceResult <List <UserBaseData> >
         {
             Data = request.Users.Select(u => _userBaseDataRepository.GetByUserIdAsync(u.Id).Result).ToList()
         }
     });
 }