Exemplo n.º 1
0
        public override List <Team> Play()
        {
            List <Team> roundResult = new List <Team>();

            DividedIntoGroup();
            List <Match> matchesInGroup = new List <Match>();

            foreach (string groupID in groups)
            {
                matchesInGroup = MatchList.Where(match => match.Tag == groupID).ToList();
                foreach (Match match in matchesInGroup)
                {
                    match.RandomPlay(rand);
                }
                // Create 3rd match
                Match final = new Match()
                {
                    TeamA = matchesInGroup[0].Winner,
                    TeamB = matchesInGroup[1].Winner,
                    Date  = DateTime.Now,
                    Tag   = groupID
                };
                final.RandomPlay(rand);
                roundResult.Add(final.Winner);
            }
            return(roundResult);
        }
Exemplo n.º 2
0
 public void MatchSearch(object obj = null) =>
 Task.Factory.StartNew(() =>
 {
     MatchResetInput();
     if (!String.IsNullOrEmpty(MatchSearchText))
     {
         var searchList = MatchSearchText.Split(' ');
         if (searchList.Count() > 0)
         {
             foreach (var item in searchList)
             {
                 if (!String.IsNullOrEmpty(item))
                 {
                     var text  = item?.ToUpper()?.Trim(' ') ?? "";
                     MatchList = MatchList.Where(
                         x => (x.CustomerGln?.ToUpper()?.Contains(text) ?? false) ||
                         (x.IdPriceType?.ToUpper()?.Contains(text) ?? false) ||
                         (x.InsertDatetime?.ToUpper()?.Contains(text) ?? false) ||
                         (x.PriceTypeName?.ToUpper()?.Contains(text) ?? false)
                         ).ToList();
                 }
             }
         }
     }
 });
Exemplo n.º 3
0
        public override List <Team> Play()
        {
            List <Team> roundResult = new List <Team>();

            DividedIntoGroup();
            List <Match> matchesInGroup = new List <Match>();

            foreach (string groupID in groups)
            {
                matchesInGroup = MatchList.Where(match => match.Tag == groupID).ToList();
                foreach (Match match in matchesInGroup)
                {
                    match.Play(rand);
                }

                List <Team> scored = CalculateTotalScore(matchesInGroup);
                roundResult.Add(scored.Where(t => t.TotalScore == scored.Max(t1 => t1.TotalScore)).ToList()[0]);
            }
            return(roundResult);
        }
Exemplo n.º 4
0
        private async void UpdateMatches(object sender, EventArgs e)
        {
            try
            {
                var newUpdates = await TinderHelper.GetUpdates(SerializationHelper.GetLastUpdate());

                if (newUpdates.Matches.Count != 0)
                {
                    SerializationHelper.UpdateLastUpdate(newUpdates.LastActivityDate);

                    foreach (var newMatch in newUpdates.Matches)
                    {
                        var matchToUpdate = MatchList.Where(item => item.Id == newMatch.Id).FirstOrDefault();

                        // There's an update to an existing match
                        if (matchToUpdate != null)
                        {
                            // Adds new messages the to list
                            foreach (var newMessage in newMatch.Messages)
                            {
                                if (!matchToUpdate.Messages.Contains(newMessage))
                                {
                                    matchToUpdate.Messages.Add(newMessage);
                                }
                            }

                            if (!UpdatedMatches.Contains(matchToUpdate))
                            {
                                UpdatedMatches.Add(matchToUpdate);
                            }

                            matchToUpdate.LastActivityDate = newMatch.LastActivityDate;

                            new Task(() => SerializationHelper.SerializeMatch(matchToUpdate)).Start();
                        }
                        // There's a new match
                        else
                        {
                            new Task(() => SerializationHelper.SerializeMatch(newMatch)).Start();
                            MatchList.Insert(0, newMatch);
                            NewMatchList.Add(newMatch);
                        }
                    }
                }

                if (newUpdates.Blocks.Count != 0)
                {
                    foreach (var unmatched in newUpdates.Blocks)
                    {
                        var match = MatchList.Where(x => x.Id == unmatched).FirstOrDefault();
                        if (match != null)
                        {
                            SerializationHelper.MoveMatchToUnMatched(match);
                            MatchList.Remove(match);
                            MessageBox.Show(match.Person.Name + " unmatched you");
                        }
                    }
                }

                FilterVM.SortMatchList();
            }
            catch (TinderRequestException ex)
            {
                MessageBox.Show(ex.Message);
            }
        }