Ejemplo n.º 1
0
        public void CreateLanes(List <int> competitorsId, int contestId, Match match)
        {
            var database = new DataBaseRepo();

            var unitService = new MeasurementService();
            var unit        = unitService.WhatUnitDoYouNeedBro("spelare");
            //TODO Bygga upp serier genom lane, även få med båda spelarnas ID:n så att det skapas en separat serie per spelare.
            var quantity = (DatabaseHolder)database.Save
                               (new Quantity
            {
                Amount = 2,
                UnitId = unit.UnitId
            });

            if (quantity.ExecuteCodes == ExecuteCodes.SuccessToExecute)
            {
                var lane = new Lane
                {
                    UnitId     = unit.UnitId,
                    QuantityId = quantity.PrimaryKey
                };

                var primaryKeyLane = (DatabaseHolder)database.Save(lane);
                match.LaneId     = primaryKeyLane.PrimaryKey;
                match.QuantityId = quantity.PrimaryKey;
                match.UnitId     = unit.UnitId;
                var matchId = (DatabaseHolder)database.Save(match);
                if (matchId.ExecuteCodes != ExecuteCodes.FailedToExecute)
                {
                    lane.CreateSerie(primaryKeyLane.PrimaryKey, contestId, competitorsId);
                }
            }
        }
Ejemplo n.º 2
0
        public List <Match> SeeMatches(int contestId)
        {
            var database = new DataBaseRepo();
            var result   = database.GetAll(new Match()).Cast <Match>().ToList();

            return(result.Where(m => contestId == m.ContestId).ToList());
        }
Ejemplo n.º 3
0
        public void UpdateTable()
        {
            var contest = new Contest {
                ContestId = 1011, ManagerId = 4002, ContestTypeId = 1, TimePeriodId = 1, WinnerId = 2026
            };
            var database = new DataBaseRepo();
            var result   = database.Update(contest);

            Assert.Equal(ExecuteCodes.SuccessToExecute, result);
        }
Ejemplo n.º 4
0
        public Quantity CreateANewQuantity(int amount, int unitId)
        {
            DataBaseRepo database = new DataBaseRepo();
            var          result   = (DatabaseHolder)database.Save(new Quantity {
                Amount = amount, UnitId = unitId
            });
            var quantity = (Quantity)database.GetObject(result.PrimaryKey.ToString(), new Quantity());

            return(quantity);
        }
Ejemplo n.º 5
0
        public void GetWinner()
        {
            var database = new DataBaseRepo();
            var sut      = new BowlingSystem();
            var contest  = (Contest)database.GetObject("1011", new Contest());

            contest.WinnerId = 2026;
            var result = sut.GetWinnerOfContest(contest);

            Assert.Equal(contest.ContestId, result.ContestId);
        }
Ejemplo n.º 6
0
        public void SelectOne()
        {
            var timePeriod = new TimePeriod {
                TimePeriodId = 1, StartDate = DateTime.Now, EndDate = DateTime.Parse("2018-05-28 07:00")
            };
            //var party = new Party { Address="Vägen 12", IsMana,ger=false, LegalId="8705281425", Name="Test Testsson" };
            var dbRepo = new DataBaseRepo();
            var result = dbRepo.GetObject("1", timePeriod);

            Assert.Equal(timePeriod.ToString(), result.ToString());
        }
Ejemplo n.º 7
0
        public void SaveToTable()
        {
            //var timePeriod = new TimePeriod { StartDate=DateTime.Now, EndDate=DateTime.Parse("2018-05-28 07:00") };
            var party = new ContestType {
                Name = "Träningstävling"
            };
            var dbRepo = new DataBaseRepo();
            var result = (DatabaseHolder)dbRepo.Save(party);

            Assert.Equal(ExecuteCodes.SuccessToExecute, result.ExecuteCodes);
        }
Ejemplo n.º 8
0
        public Party CreateANewManager(string legalId, string name, string address, bool isManager = true)
        {
            var member = new Party {
                Address = address, IsManager = isManager, LegalId = legalId, Name = name
            };
            var dataBase       = new DataBaseRepo();
            var databaseHolder = (DatabaseHolder)dataBase.Save(member);

            member.PartyId = databaseHolder.PrimaryKey;
            return(member);
        }
Ejemplo n.º 9
0
        public void FindPartyWithKnownKey()
        {
            var party = new Party {
                Address = "Vägen 13", IsManager = false, LegalId = "8705281425", Name = "Test Testsson"
            };
            var dbRepo = new DataBaseRepo();
            //var result = dbRepo.Save(party);
            //var pk = ((DatabaseHolder)result).PrimaryKey;
            Party foundParty = (Party)dbRepo.GetObject("2026", new Party());

            Assert.Equal(2026, foundParty.PartyId);
        }
Ejemplo n.º 10
0
        public void GetListFromSearch()
        {
            var party = new Party {
                PartyId = 2026, Address = "Vägen 13", IsManager = false, LegalId = "8705281425", Name = "Test Testsson"
            };
            var dbRepo = new DataBaseRepo();
            var list   = new List <Party>();

            list.Add(party);
            var foundPartyList = dbRepo.GetAll(new Party());
            var list2          = foundPartyList.Cast <Party>().ToList();

            Assert.Equal(party, list2[0]);
        }
Ejemplo n.º 11
0
        public Contest GetWinnerOfContest(Contest contest)
        {
            var result   = 0;
            var database = new DataBaseRepo();

            var players = database
                          .GetAll(new ContestParticipants())
                          .Cast <ContestParticipants>()
                          .Where(p => contest.ContestId == p.ContestId)
                          .ToList();

            var series = database
                         .GetAll(new Serie())
                         .Cast <Serie>()
                         .Where(s => contest.ContestId == s.ContestId)
                         .ToList();

            var scores = database.GetAll(new Score())
                         .Cast <Score>()
                         .ToList();

            var higherScore  = 0;
            var currentScore = 0;

            foreach (var serie in series)
            {
                var listOfSerieIdsAndPartyIds = new Dictionary <int, int>();
                if (players.FirstOrDefault(p => serie.PartyId == p.CompetitorId) != null)
                {
                    listOfSerieIdsAndPartyIds.Add(serie.PartyId, serie.SerieId);
                }

                if (listOfSerieIdsAndPartyIds.Count != 0)
                {
                    foreach (var item in listOfSerieIdsAndPartyIds)
                    {
                        var quantity = (Quantity)database.GetObject(scores.First(sco => item.Value == sco.SerieId).QuantityId.ToString(), new Quantity());
                        higherScore = quantity.Amount;
                        if (higherScore > currentScore)
                        {
                            currentScore = higherScore;
                            result       = item.Key;
                        }
                    }
                }
            }
            contest.WinnerId = result;
            database.Update(contest);
            return(contest);
        }
Ejemplo n.º 12
0
        public Unit WhatUnitDoYouNeedBro(string unitName)
        {
            Unit         unit     = new Unit();
            DataBaseRepo database = new DataBaseRepo();

            foreach (Unit item in database.GetAll(new Unit()).Cast <Unit>().ToList())
            {
                if (item.Name.ToLower() == unitName.ToLower())
                {
                    unit = item;
                }
            }
            return(unit);
        }
Ejemplo n.º 13
0
        public void CreateANewContest(int[] competitors, int managerId, int timePeriodId, int contestTypeId)
        {
            var compId   = new List <int>();
            var database = new DataBaseRepo();
            var contest  = new Contest
            {
                ContestTypeId = contestTypeId,
                ManagerId     = managerId,
                TimePeriodId  = timePeriodId,
                WinnerId      = 0
            };
            var databaseHolder = (DatabaseHolder)database.Save(contest);

            for (int i = 0; i < competitors.Length; i++)
            {
                ContestParticipants contestParticipants = new ContestParticipants
                {
                    ContestId    = databaseHolder.PrimaryKey,
                    CompetitorId = competitors[i]
                };
                database.Save(new ContestParticipants());
                compId.Add(competitors[i]);
                if (compId.Count == 2 && i > 0)
                {
                    var match = new Match {
                        ContestId = databaseHolder.PrimaryKey
                    };
                    match.CreateLanes(compId, databaseHolder.PrimaryKey, match);
                    compId.Clear();
                }
                if (i % 2 == 1 && i == competitors.Length)
                {
                    databaseHolder = (DatabaseHolder)database.Save(contest);
                    var match   = new Match();
                    var matchId = (DatabaseHolder)database.Save(match);
                    match.MatchId = matchId.PrimaryKey;
                    match.CreateLanes(compId, databaseHolder.PrimaryKey, match);
                    compId.Clear();
                }
            }
        }
Ejemplo n.º 14
0
        //public Match Match { get; set; }
        //public Score Score { get; set; }
        //public List<Serie> Series { get; set; }

        public void CreateSerie(int laneId, int contestId, List <int> compIds)
        {
            var measurementService = new MeasurementService();
            var unit     = measurementService.WhatUnitDoYouNeedBro("poäng");
            var quantity = measurementService.CreateANewQuantity(0, unit.UnitId);
            var database = new DataBaseRepo();

            for (int i = 0; i < compIds.Count; i++)//To get three series and three scores.
            {
                for (int j = 3; j > 0; j--)
                {
                    var serie = new Serie {
                        LaneId = laneId, PartyId = compIds[i], TurnCounter = 10, ContestId = contestId
                    };
                    var dataHolderSerie = (DatabaseHolder)database.Save(serie);
                    var score           = new Score {
                        LaneId = laneId, UnitId = unit.UnitId, QuantityId = quantity.QuantityId, SerieId = dataHolderSerie.PrimaryKey
                    };
                    var dataHolderScore = (DatabaseHolder)database.Save(score);
                }

                //serie.PlayRound(dataHolderScore.PrimaryKey);
            }
        }