public List <Line> GetLines() { ITrackEntryRepository trackEntriesRepo = _repoManager.TrackEntryRepository; IEnumerable <TrackEntry> trackEntries = trackEntriesRepo.GetAll(); List <Line> resultingLines = new List <Line>(); List <StopVisit> visits = _repoManager.StopVisitRepository.BetweenDates(DateTimeOffset.MinValue, DateTimeOffset.Now).ToList(); foreach (StopVisit sv in visits) { TrackEntry tEntry = trackEntriesRepo.Get(sv.NextTrackId); if (tEntry != null) { IEnumerable <PositionEntry> entries = _repoManager.PositionEntryRepository.FilterPeriodAccuracy(tEntry.StartTime, tEntry.EndTime, 100); Line line = new Line(); foreach (var entry in entries) { line.Positions.Add(new Position(entry.Latitude, entry.Longitude)); } line.FillColor = Color.Blue; resultingLines.Add(line); } } return(resultingLines); }
public DataResolver(IRepoManager repoManager, IStopResolver stopResolver) { _repoManager = repoManager ?? throw new ArgumentNullException(nameof(repoManager)); _stopResolver = stopResolver ?? throw new ArgumentNullException(nameof(stopResolver)); _positionEntryRepository = _repoManager.PositionEntryRepository; _trackEntryRepository = _repoManager.TrackEntryRepository; _stopVisitRepository = _repoManager.StopVisitRepository; _stopRepository = _repoManager.StopRepository; _accuracy = 10000; }