public static List <WarRanking> SelectRankingsByClanWarId(int id, bool sortedByPick)
        {
            List <WarRanking> rankings = new List <WarRanking>();

            using (var dbContext = new HouseOfClansEntities())
            {
                rankings = dbContext.WarRankings.Where(p => p.clanWarId == id && !p.optOut).ToList();

                if (sortedByPick)
                {
                    List <ClanWarPick> warMapMembers  = ClanWarPicksManager.SelectAllByWarId(id).ToList();
                    List <WarRanking>  sortedRankings = new List <WarRanking>();

                    warMapMembers.ForEach(delegate(ClanWarPick sortedPick)
                    {
                        WarRanking sortedRanking = rankings.Where(p => p.clanUserId == sortedPick.clanUserId).FirstOrDefault();

                        if (sortedRanking != null && sortedRanking.clanWarId == id)
                        {
                            sortedRankings.Add(sortedRanking);
                        }
                    });

                    rankings = new List <WarRanking>();
                    rankings = sortedRankings;
                }
            }

            return(rankings);
        }
Esempio n. 2
0
        public static ClanMemberStatsViewModel ConvertToClanMemberStats(WarRanking ranking)
        {
            ClanMemberStatsViewModel stats = new ClanMemberStatsViewModel();

            stats.Id               = ranking.id;
            stats.ClanWarId        = ranking.clanWarId;
            stats.ClanGroupId      = ranking.clanGroupId;
            stats.HasHeroicDefense = ranking.heroicDefense;
            stats.HasHeroicAttack  = ranking.heroicAttack;
            stats.AttacksDefended  = ranking.attacksDefended;
            stats.AttacksOn        = ranking.attacksOn;
            stats.Note             = ranking.note;
            stats.AddedOn          = ranking.addedOn;
            stats.UpdatedOn        = ranking.updatedOn;
            stats.ClanUserId       = ranking.clanUserId;
            stats.Stars            = ranking.stars;
            stats.OptOut           = ranking.optOut;
            stats.Xp               = ranking.xp;
            stats.AttackWin        = ranking.attackWin;
            stats.AttackOn         = ranking.attackOn;

            stats.TotalHeroicDefense = Convert.ToInt16(ranking.heroicDefense);
            stats.TotalHeroicAttack  = Convert.ToInt16(ranking.heroicAttack);

            return(stats);
        }
        public ActionResult Edit(ClanWarUpsertViewModel clanWar)
        {
            ActionResult result = View();

            try
            {
                ClanUser clanUser  = HttpContext.GetCurrentLoginInformation();
                int      clanWarId = ClanWarManager.Upsert(clanWar, clanUser.id);

                if (clanWarId > 0)
                {
                    //Insert member picks
                    //vv List<WarRanking> rankings = new List<WarRanking>();
                    List <ClanWarPickViewModel> picks       = new List <ClanWarPickViewModel>();
                    List <ClanUser>             clanMembers = ClanUserManager.SelectAllByClanId(clanWar.ClanId);
                    short i = 1;

                    foreach (ClanUser member in clanMembers)
                    {
                        WarRanking ranking = new WarRanking()
                        {
                            clanUserId = member.id,
                            clanWarId  = clanWarId
                        };

                        //vv rankings.Add(ranking);

                        ClanWarPickViewModel pick = new ClanWarPickViewModel()
                        {
                            ClanUserId            = member.id,
                            ClanMemberWarPosition = i,
                            ClanWarId             = clanWarId,
                            PickVS = i
                        };

                        picks.Add(pick);
                        i++;
                    }

                    //vv RankingsManager.Upsert(rankings);
                    ClanWarPicksManager.Upsert(picks);
                }
                //TODO //vv an Else here should display a message stating that the war was not inserted (and no exception apparently)

                result = RedirectToAction("Index");
            }
            catch
            {
                result = View(clanWar);
            }

            return(result);
        }
Esempio n. 4
0
        public static WarRanking ConvertToWarRanking(ClanMemberStatsViewModel stats)
        {
            WarRanking ranking = new WarRanking();

            ranking.id              = stats.Id;
            ranking.clanWarId       = stats.ClanWarId;
            ranking.clanGroupId     = stats.ClanGroupId;
            ranking.heroicDefense   = stats.HasHeroicDefense;
            ranking.heroicAttack    = stats.HasHeroicAttack;
            ranking.attacksDefended = stats.AttacksDefended;
            ranking.attacksOn       = stats.AttacksOn;
            ranking.note            = stats.Note;
            ranking.addedOn         = stats.AddedOn;
            ranking.updatedOn       = stats.UpdatedOn;
            ranking.clanUserId      = stats.ClanUserId;
            ranking.stars           = stats.Stars;
            ranking.optOut          = stats.OptOut;
            ranking.xp              = stats.Xp;
            ranking.attackWin       = stats.AttackWin;
            ranking.attackOn        = stats.AttackOn;

            return(ranking);
        }
        public static WarRanking ConvertToWarRanking(ClanMemberStatsViewModel stats)
        {
            WarRanking ranking = new WarRanking();
            ranking.id				= stats.Id;
            ranking.clanWarId		= stats.ClanWarId;
            ranking.clanGroupId		= stats.ClanGroupId;
            ranking.heroicDefense	= stats.HasHeroicDefense;
            ranking.heroicAttack	= stats.HasHeroicAttack;
            ranking.attacksDefended = stats.AttacksDefended;
            ranking.attacksOn		= stats.AttacksOn;
            ranking.note			= stats.Note;
            ranking.addedOn			= stats.AddedOn;
            ranking.updatedOn		= stats.UpdatedOn;
            ranking.clanUserId		= stats.ClanUserId;
            ranking.stars			= stats.Stars;
            ranking.optOut			= stats.OptOut;
            ranking.xp				= stats.Xp;
            ranking.attackWin		= stats.AttackWin;
            ranking.attackOn		= stats.AttackOn;

            return ranking;
        }
        public static ClanMemberStatsViewModel ConvertToClanMemberStats(WarRanking ranking)
        {
            ClanMemberStatsViewModel stats = new ClanMemberStatsViewModel();
            stats.Id				= ranking.id;
            stats.ClanWarId			= ranking.clanWarId;
            stats.ClanGroupId		= ranking.clanGroupId;
            stats.HasHeroicDefense	= ranking.heroicDefense;
            stats.HasHeroicAttack	= ranking.heroicAttack;
            stats.AttacksDefended	= ranking.attacksDefended;
            stats.AttacksOn			= ranking.attacksOn;
            stats.Note				= ranking.note;
            stats.AddedOn			= ranking.addedOn;
            stats.UpdatedOn			= ranking.updatedOn;
            stats.ClanUserId		= ranking.clanUserId;
            stats.Stars				= ranking.stars;
            stats.OptOut			= ranking.optOut;
            stats.Xp				= ranking.xp;
            stats.AttackWin			= ranking.attackWin;
            stats.AttackOn			= ranking.attackOn;

            stats.TotalHeroicDefense	= Convert.ToInt16(ranking.heroicDefense);
            stats.TotalHeroicAttack		= Convert.ToInt16(ranking.heroicAttack);

            return stats;
        }