private static void MergeMatchResult(MatchLn mtch) { try { MatchResultLn rslt = new MatchResultLn(); rslt.MatchId = mtch.MatchId; rslt.BtrMatchId = mtch.BtrMatchId; rslt.StartDate.Value = mtch.StartDate.Value; rslt.HomeCompetitorId.Value = mtch.HomeCompetitorId.Value; rslt.AwayCompetitorId.Value = mtch.AwayCompetitorId.Value; rslt.IsLiveBet.Value = mtch.IsLiveBet.Value; rslt.Score.Value = mtch.LiveMatchInfo.Score.Value; rslt.ExtendedState.Value = string.Empty; rslt.TeamWon = mtch.TeamWon.Value; var lGroups = mtch.ParentGroups.Clone(); GroupLn groupTournament = null; GroupLn groupSport = null; GroupLn groupCategory = null; foreach (var group in lGroups) { if (group.Type == GroupLn.GROUP_TYPE_GROUP_T) { groupTournament = group; } else if (group.Type == GroupLn.GROUP_TYPE_SPORT) { groupSport = group; } else if (group.Type == GroupLn.GROUP_TYPE_GROUP_C) { groupCategory = group; } } ExcpHelper.ThrowIf <RelatedLineObjectNotFoundException>(groupTournament == null, "Cannot find Tournament Group for {0} and {1}", mtch, rslt); ExcpHelper.ThrowIf <RelatedLineObjectNotFoundException>(groupSport == null, "Cannot find Sport Group for {0} and {1}", mtch, rslt); ExcpHelper.ThrowIf <RelatedLineObjectNotFoundException>(groupCategory == null, "Cannot find Category Group for {0} and {1}", mtch, rslt); rslt.TournamentGroupId.Value = groupTournament.GroupId; rslt.SportGroupId.Value = groupSport.GroupId; rslt.CategoryGroupId.Value = groupCategory.GroupId; LineSr.Instance.AllObjects.MatchResults.MergeLineObject(rslt); } catch (Exception excp) { m_logger.Excp(excp, "MergeMatchResult ERROR for {0}", mtch); } }
private bool ResultMatchFilter(MatchResultLn match) { if (match.Score.Value.Contains("-1:-1")) { return(false); } if (match.MatchLn != null) { return(false); } if (match.CategoryGroupId.Value == null) { return(false); } if (match.CategoryGroupId.Value == 0) { return(false); } if (SportsBarItems.Count > 1 && !SportsBarItems.ElementAt(0).IsChecked) { if (!ChangeTracker.SelectedDescriptors.Contains(match.MatchResultView.SportView.LineObject.GroupSport.SportDescriptor)) { return(false); } } if (match.IsLiveBet.Value && match.StartDate.Value.LocalDateTime < DateTime.Now.AddDays(-ChangeTracker.ResultsSelectedDay - 1).Date) { return(false); } var start = DateTime.Now.AddDays(-ChangeTracker.ResultsSelectedDay).Date; var end = DateTime.Now.AddDays(-ChangeTracker.ResultsSelectedDay).Date.AddHours(23).AddMinutes(59).AddSeconds(59); if (match.StartDate.Value.LocalDateTime > end) { return(false); } if (match.StartDate.Value.LocalDateTime < start) { return(false); } if (ids.Contains(match.BtrMatchId)) { return(false); } ids.Add(match.BtrMatchId); return(true); }
private static bool ResultFilter(MatchResultLn result) { if (result.StartDate.Value != null) { return(false); } if (result.StartDate.Value.LocalDateTime < resultExpireDate) { return(true); } return(false); }
private bool SportBarMatchFilter(MatchResultLn match) { if (match.Score.Value.Contains("-1:-1")) { return(false); } if (match.MatchLn != null) { return(false); } if (match.CategoryGroupId.Value == null) { return(false); } if (match.CategoryGroupId.Value == 0) { return(false); } if (match.IsLiveBet.Value && match.StartDate.Value.LocalDateTime < DateTime.Now.AddDays(-ChangeTracker.ResultsSelectedDay - 1).Date) { return(false); } var start = DateTime.Now.AddDays(-ChangeTracker.ResultsSelectedDay).Date; var end = DateTime.Now.AddDays(-ChangeTracker.ResultsSelectedDay).Date.AddHours(23).AddMinutes(59).AddSeconds(59); if (match.StartDate.Value.LocalDateTime > end) { return(false); } if (match.StartDate.Value.LocalDateTime < start) { return(false); } return(true); }