Example #1
0
        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);
        }
Example #2
0
        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;
        }