public async Task <IHttpActionResult> GetOrientation(int ID)
        {
            TrackerOrientationsHandler   TOH    = new TrackerOrientationsHandler(db);
            TrackerOrientation           TO     = TOH.GetTrackerOrientation(ID);
            KeyValuePair <DateTime, int> result = new KeyValuePair <DateTime, int>(TO.TimeStamp, TO.Orientation);

            return(Ok(result));
        }
Ejemplo n.º 2
0
        public TrackerOrientation GetTrackerOrientation(int id)
        {
            var trackerLoc            = from b in db.TrackerOrientations where b.Tracker.ID == id select b;
            var trackerOrientation    = trackerLoc.OrderByDescending(x => x.TimeStamp).First();
            TrackerOrientation result = new TrackerOrientation(trackerOrientation.ID, trackerOrientation.TimeStamp, trackerOrientation.Tracker, trackerOrientation.Orientation);

            return(result);
        }
        public async Task <IHttpActionResult> PutOrientation()
        {
            Heading newHeading                    = JsonConvert.DeserializeObject <Heading>(Request.Content.ReadAsStringAsync().Result);
            TrackerOrientationsHandler TOH        = new TrackerOrientationsHandler(db);
            TrackersHandler            TH         = new TrackersHandler(db);
            Tracker            tracker            = TH.GetTracker(newHeading.ID);
            TrackerOrientation trackerOrientation = new TrackerOrientation(DateTime.Now, tracker, newHeading.Orientation);

            TOH.PutOrientation(trackerOrientation);
            return(Ok());
        }
Ejemplo n.º 4
0
        public void PutOrientation(TrackerOrientation tO)
        {
            var trackerOrientations = db.TrackerOrientations.Where(x => x.Tracker.ID == tO.Tracker.ID);

            if (trackerOrientations.Count() == 0)
            {
                db.TrackerOrientations.Add(tO);
            }
            else
            {
                var trackerOrientation = trackerOrientations.First();
                trackerOrientation.Orientation     = tO.Orientation;
                trackerOrientation.TimeStamp       = tO.TimeStamp;
                db.Entry(trackerOrientation).State = EntityState.Modified;
            }
            try
            {
                db.SaveChanges();
            }
            catch (System.Data.Entity.Infrastructure.DbUpdateConcurrencyException)
            {
                throw;
            }
        }