public ScreenerSummaryViewModel GetApplicantList(SSOApplicationUser currentUser)
        {
            var corpApplicantIds     = _screenerRepository.GetCorporationApplicants(currentUser.CorporationId).Select(s => s.CharacterId);
            var allianceApplicantIds = _screenerRepository.GetAllianceApplicants(currentUser.AllianceId).Select(s => s.CharacterId);

            var idList = new IdList()
            {
                Ids = corpApplicantIds.Concat(allianceApplicantIds).Distinct().ToList()
            };

            if (idList.Ids.Count > 0)
            {
                var models = idList.GetCharacterNames();
                return(new ScreenerSummaryViewModel()
                {
                    CorporateApplications = models.CharacterDetail.Where(w => corpApplicantIds.Contains(w.Id) &&
                                                                         !w.Id.Equals(currentUser.CorporationId)).ToList(),
                    AllianceApplications = models.CharacterDetail.Where(w => allianceApplicantIds.Contains(w.Id) &&
                                                                        !w.Id.Equals(currentUser.AllianceId)).ToList()
                });
            }
            return(new ScreenerSummaryViewModel()
            {
                CorporateApplications = new System.Collections.Generic.List <ESI.Models.Character.Summary>(),
                AllianceApplications = new System.Collections.Generic.List <ESI.Models.Character.Summary>()
            });
        }
 public ApplicantViewModel GetApplicantDetails(SSOApplicationUser currentUser, long characterId)
 {
     if (!_screenerRepository.GetCorporationApplicants(currentUser.CorporationId).Any(w => w.CharacterId == characterId) &&
         !_screenerRepository.GetAllianceApplicants(currentUser.AllianceId).Any(w => w.CharacterId == characterId))
     {
         throw new UnauthorizedAccessException();
     }
     return(_applicantService.GetCharacterViewModel(characterId));
 }
        public SSOApplicationUser CreateUser(string userId)
        {
            var toon = new ESI.Models.Character.Detail(Convert.ToInt64(userId));

            var siteUser = new SSOApplicationUser()
            {
                Id            = userId,
                UserName      = toon.Name,
                CorporationId = toon.CorporationId,
                AllianceId    = toon.AllianceId
            };

            siteUser.GenerateUser();
            return(siteUser);
        }
Esempio n. 4
0
        public static void GenerateUser(this SSOApplicationUser self)
        {
            var group = new Group();

            using (var context = new DatabaseContext())
            {
                if (context.GroupMemberships.Any(w => w.EntityTypeId == (int)EntityType.Corporation && w.EntityId == self.CorporationId))
                {
                    group.Id = context.GroupMemberships.First(w => w.EntityTypeId == (int)EntityType.Corporation &&
                                                              w.EntityId == self.CorporationId).GroupId;
                }
                else if (self.AllianceId.HasValue && context.GroupMemberships.Any(w => w.EntityTypeId == (int)EntityType.Alliance && w.EntityId == self.AllianceId))
                {
                    group.Id = context.GroupMemberships.First(w => w.EntityTypeId == (int)EntityType.Alliance &&
                                                              w.EntityId == self.AllianceId).GroupId;
                }
                group = context.Groups.First(w => w.Id == group.Id && !w.Disabled);
            }
            self.GroupId       = group.Id;
            self.GroupName     = group.Name;
            self.DefaultRegion = group.DefaultRegion;
        }