示例#1
0
 public void UpdateFriends(User user, List <int> friends)
 {
     using (var context = new BeaconContext())
     {
         try
         {
             foreach (var friend in friends)
             {
                 var userToAdd = context.Users.Where(u => u.FaceBookId == friend).FirstOrDefault();
                 if (userToAdd != null && !user.Friends.ToList().Contains(userToAdd))
                 {
                     user.Friends.ToList().Add(userToAdd);
                 }
                 else if (userToAdd == null && user.Friends.ToList().Contains(userToAdd))
                 {
                     user.Friends.ToList().Remove(userToAdd);
                 }
             }
             context.Entry(user).State = EntityState.Modified;
             context.SaveChanges();
         }
         catch
         {
             throw;
         }
     }
 }
        public bool PlaceBeacon(Beacon beacon)
        {
            var success = false;

            using (var context = new BeaconContext())
            {
                try
                {
                    var oldBeacon = GetBeaconByUserId(beacon.UserId);
                    context.Beacons.Remove(oldBeacon);
                    context.Entry(oldBeacon).State = EntityState.Deleted;
                    var buddies = context.Buddies.Where(b => b.BeaconId == oldBeacon.BeaconId);
                    context.Buddies.RemoveRange(buddies);
                    context.Beacons.Add(beacon);
                    context.Entry(beacon).State = EntityState.Added;
                    context.SaveChanges();
                    success = GetBeacon(beacon.BeaconId) != null && GetBeacon(oldBeacon.BeaconId) == null;
                }
                catch
                {
                    throw;
                }
            }
            return(success);
        }
 public void PostLogEntry(LogEntry entry)
 {
     using (var context = new BeaconContext())
     {
         context.LogEntries.Add(entry);
         context.Entry(entry).State = EntityState.Added;
         context.SaveChanges();
     }
 }
 public Beacon GetBeaconByUserId(int id)
 {
     using (var context = new BeaconContext())
     {
         try
         {
             return(context.Beacons.Where(b => b.UserId == id).FirstOrDefault());
         }
         catch
         {
             throw;
         }
     }
 }
示例#5
0
        public BeaconController(BeaconContext context)
        {
            _context = context;

            //ver depois se da para tirar

            /*if (_context.beaconItems.Count() == 0)
             * {
             *  // Create a new TodoItem if collection is empty,
             *  // which means you can't delete all TodoItems.
             *  _context.beaconItems.Add(new BeaconItem { Name = "Beacon1" });
             *  _context.SaveChanges();
             * }*/
        }
        public Beacon GetBeacon(int id)
        {
            var beacon = new Beacon();

            using (var context = new BeaconContext())
            {
                try
                {
                    beacon = context.Beacons.Find(id);
                }
                catch
                {
                    throw;
                }
            }
            return(beacon);
        }
        public IEnumerable <Beacon> GetBeacons()
        {
            var result = new List <Beacon>();

            using (var context = new BeaconContext())
            {
                try
                {
                    result = context.Beacons.ToList();
                }
                catch
                {
                    throw;
                }
            }
            return(result);
        }
 public void DeleteByBeaconId(int id)
 {
     using (var context = new BeaconContext())
     {
         try
         {
             var buddies = context.Buddies.Where(x => x.BeaconId == id);
             buddies.ToList().ForEach(x => context.Entry(x).State = EntityState.Deleted);
             context.RemoveRange(buddies);
             context.SaveChanges();
         }
         catch
         {
             throw;
         }
     }
 }
        public Buddy GetBuddy(int id)
        {
            var buddy = new Buddy();

            using (var context = new BeaconContext())
            {
                try
                {
                    buddy = context.Buddies.Find(id);
                }
                catch
                {
                    throw;
                }
                return(buddy);
            }
        }
示例#10
0
        public User GetUser(int id)
        {
            var user = new User();

            using (var context = new BeaconContext())
            {
                try
                {
                    user = context.Users.Find(id);
                }
                catch
                {
                    throw;
                }
            }
            return(user);
        }
        public IEnumerable <Buddy> GetBuddiesByBeacon(int id)
        {
            var result = new List <Buddy>();

            using (var context = new BeaconContext())
            {
                try
                {
                    result = context.Buddies.Where(x => x.BeaconId == id).ToList();
                }
                catch
                {
                    throw;
                }
            }
            return(result);
        }
        public IEnumerable <Beacon> GetBeaconsByCoords(GeoCoordinate center, int distance)
        {
            var result = new List <Beacon>();
            int radius = distance * 100;

            using (var context = new BeaconContext())
            {
                try
                {
                    var beacons = context.Beacons.Where(x => x.GeoCoordinate.GetDistanceTo(center) < radius).ToList();
                    result = beacons.ToList();
                }
                catch
                {
                    throw;
                }
            }
            return(result);
        }
示例#13
0
        public bool SaveUser(User user)
        {
            var result = false;

            using (var context = new BeaconContext())
            {
                try
                {
                    context.Users.Add(user);
                    context.Entry(user).State = EntityState.Added;
                    context.SaveChanges();
                    result = GetUser(user.UserId) != null;
                }
                catch
                {
                    throw;
                }
            }
            return(result);
        }
        public bool PostBuddy(Buddy buddy)
        {
            var result = false;

            using (var context = new BeaconContext())
            {
                try
                {
                    context.Buddies.Add(buddy);
                    context.Entry(buddy).State = EntityState.Added;
                    context.SaveChanges();
                    result = context.Buddies.Find(buddy.BuddyId) != null;
                }
                catch
                {
                    throw;
                }
                return(result);
            }
        }
        public bool PutBuddy(Buddy buddy)
        {
            var result = false;

            using (var context = new BeaconContext())
            {
                try
                {
                    context.Buddies.Attach(buddy);
                    context.Entry(buddy).State = EntityState.Modified;
                    context.SaveChanges();
                    result = true;
                }
                catch
                {
                    throw;
                }
                return(result);
            }
        }
示例#16
0
        public bool DeleteUser(int id)
        {
            var result = false;

            using (var context = new BeaconContext())
            {
                try
                {
                    var user = context.Users.Find(id);
                    context.Users.Remove(user);
                    context.Entry(user).State = EntityState.Deleted;
                    context.SaveChanges();
                    result = GetUser(id) == null;
                }
                catch
                {
                    throw;
                }
            }
            return(result);
        }
        public bool DeleteBeacon(int id)
        {
            var success = false;

            using (var context = new BeaconContext())
            {
                try
                {
                    var beacon = context.Beacons.Find(id);
                    context.Beacons.Remove(beacon);
                    context.Entry(beacon).State = EntityState.Deleted;
                    context.SaveChanges();
                    success = GetBeacon(beacon.BeaconId) == null;
                }
                catch
                {
                    throw;
                }
            }
            return(success);
        }
        public bool PutBeacon(int id, int drinks)
        {
            var success = false;

            using (var context = new BeaconContext())
            {
                try
                {
                    var beacon = context.Beacons.Find(id);
                    context.Beacons.Attach(beacon);
                    beacon.DrinkCounter         = drinks;
                    context.Entry(beacon).State = EntityState.Modified;
                    context.SaveChanges();
                    success = context.Beacons.Find(id).DrinkCounter == drinks;
                }
                catch
                {
                    throw;
                }
            }
            return(success);
        }
示例#19
0
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            // Check to see if the token is valid
            string tokenValue = filterContext.HttpContext.Request.Query["Token"];

            if (tokenValue == null)
            {
                filterContext.Result = new UnauthorizedResult();
                return;
            }

            // Validate Token
            using (var db = new BeaconContext())
            {
                var result = db.Token.FirstOrDefault(t => t.Value == tokenValue);

                if (result == null)
                {
                    filterContext.Result = new UnauthorizedResult();
                }
            }
        }
示例#20
0
 public BeaconDbInitializer(BeaconContext context)
 {
     _context = context;
 }
 public TokensController(BeaconContext context)
 {
     _context = context;
 }
示例#22
0
		public BeaconService(BeaconContext context, IBeaconConverter converter)
		{
			_context = context;
			_converter = converter;
		}