public bool FreeParkingSpace()
 {
     using (var context = new SpaceParkContext())
     {
         return(parkingSpaces.Where(p => p.OccupyingSpaceship == null) != null);
     }
 }
Example #2
0
 public static bool PersonExistInDb(Person person)
 {
     using (var context = new SpaceParkContext())
     {
         bool uniquePerson = context.Person.Where(p => p.Name == person.Name).FirstOrDefault() == null;
         return(uniquePerson);
     }
 }
Example #3
0
 public static void AddPersonToDb(Person person)
 {
     using (var context = new SpaceParkContext())
     {
         context.Add(person.ToDbModel());
         context.SaveChanges();
     }
 }
 public static void AddSpaceShipToDb(Spaceship spaceship, Person person)
 {
     using (var context = new SpaceParkContext())
     {
         var spaceshipModel = context.Spaceship.Where(s => s.SpaceshipID == spaceship.SpaceshipID).First();
         spaceshipModel.Person = person.ToDbModel();
         context.SaveChanges();
     }
 }
 public static void DeleteSpaceshipFromDb(Spaceship spaceship)
 {
     using (var context = new SpaceParkContext())
     {
         var s = context.Spaceship.Single(s => s.SpaceshipID == spaceship.SpaceshipID);
         s.Person = null;
         context.Update(s);
         context.SaveChanges();
     }
 }
Example #6
0
        public static void DeletePersonFromDb(Person person)
        {
            using (var context = new SpaceParkContext())
            {
                var p = context.Person.Single(a => a.Name == person.Name);

                context.Remove(p);
                context.SaveChanges();
            }
        }
Example #7
0
        public static async Task <PersonModel> CreateModelFromDb(int id)
        {
            PersonModel person = null;

            using (var context = new SpaceParkContext())
            {
                person = await context.Person.Where(s => s.PersonID == id).FirstOrDefaultAsync <PersonModel>();
            }

            return(person);
        }
        public static async Task <List <Spaceship> > GetSpaceShipsAsync()
        {
            SpaceParkContext context    = new SpaceParkContext();
            List <Spaceship> spaceships = new List <Spaceship>();
            var ids = context.Spaceship.Select(s => s.SpaceshipID).ToList();

            for (int i = 0; i < ids.Count; i++)
            {
                SpaceshipModel model = await SpaceshipModel.CreateModelFromDb(ids[i]);

                Spaceship spaceship = model.CreateObjectFromModel();
                spaceships.Add(spaceship);
            }
            return(spaceships);
        }
        public static async Task <List <ParkingSpace> > GetParkingSpaceAsync()
        {
            SpaceParkContext    context       = new SpaceParkContext();
            List <ParkingSpace> parkingSpaces = new List <ParkingSpace>();
            var ids = context.Person.Select(s => s.PersonID).ToList();

            for (int i = 0; i < ids.Count; i++)
            {
                ParkingSpaceModel model = await ParkingSpaceModel.CreateModelFromDb(ids[i]);

                ParkingSpace parkingspace = model.CreateObjectFromModel();
                parkingSpaces.Add(parkingspace);
            }
            return(parkingSpaces);
        }
Example #10
0
        //Methods
        public static async Task <ParkingSpaceModel> CreateModelFromDb(int id)
        {
            ParkingSpaceModel parkingSpace = null;

            using (var context = new SpaceParkContext())
            {
                parkingSpace = await context.Parkingspace.FindAsync(id);

                if (parkingSpace.SpaceshipID.HasValue)
                {
                    parkingSpace.Spaceship = SpaceshipModel.CreateModelFromDb(parkingSpace.SpaceshipID.Value).Result;
                }
            }

            return(parkingSpace);
        }
Example #11
0
        public static async Task <SpaceshipModel> CreateModelFromDb(string name)
        {
            SpaceshipModel spaceShip = null;

            using (var context = new SpaceParkContext())
            {
                spaceShip = await context.Spaceship.FirstAsync(s => s.Person == null && s.Name == name);

                if (spaceShip.PersonID.HasValue)
                {
                    spaceShip.Person = PersonModel.CreateModelFromDb(spaceShip.PersonID.Value).Result;
                }
            }

            return(spaceShip);
        }
Example #12
0
        public static async Task <SpaceshipModel> CreateModelFromDb(int id)
        {
            SpaceshipModel spaceShip = null;

            using (var context = new SpaceParkContext())
            {
                spaceShip = await context.Spaceship.FindAsync(id);

                if (spaceShip.PersonID.HasValue)
                {
                    spaceShip.Person = PersonModel.CreateModelFromDb(spaceShip.PersonID.Value).Result;
                }
            }

            return(spaceShip);
        }
        public static async Task <ParkingSpace[]> GetParkingSpaceAsync(int count)
        {
            SpaceParkContext context = new SpaceParkContext();

            ParkingSpace[] parkingSpaces = new ParkingSpace[count];
            var            ids           = context.Parkingspace.Select(s => s.ParkingSpaceID).ToList();

            for (int i = 0; i < ids.Count && i < count; i++)
            {
                ParkingSpaceModel model = await ParkingSpaceModel.CreateModelFromDb(ids[i]);

                ParkingSpace parkingspace = model.CreateObjectFromModel();
                parkingSpaces[i] = parkingspace;
            }
            return(parkingSpaces);
        }
        public bool DepartSpaceShip(Spaceship spaceship, Person person)
        {
            using (var context = new SpaceParkContext())
            {
                ParkingSpace parkingSpace = parkingSpaces.Where(p => p.OccupyingSpaceship.SpaceshipID == spaceship.SpaceshipID).First();
                parkingSpace.OccupyingSpaceship = null;
                var parkSpace = context.Parkingspace.Where(p => p.ParkingSpaceID == parkingSpace.ParkingSpaceID).First();
                parkSpace.Spaceship   = null;
                parkSpace.SpaceshipID = null;

                context.SaveChanges();
                Spaceship.DeleteSpaceshipFromDb(spaceship);
                //Person.DeletePersonFromDb(person);
                return(true);
            }
        }
        public void ParkSpaceship(Person person, Spaceship spaceship)
        {
            if (parkingSpaces.Length < 1)
            {
                return;
            }

            Person.AddPersonToDb(person);

            using (var context = new SpaceParkContext())
            {
                ParkingSpace parkingSpace = parkingSpaces.Where(p => p.OccupyingSpaceship == null).FirstOrDefault();
                parkingSpace.OccupyingSpaceship = spaceship;
                var parkSpace = context.Parkingspace.Where(p => p.ParkingSpaceID == parkingSpace.ParkingSpaceID).First();
                var s         = context.Spaceship.Where(s => s.SpaceshipID == spaceship.SpaceshipID).First();
                var p         = context.Person.Where(p => p.Name == person.Name).First();
                p.Spaceship         = s;
                parkSpace.Spaceship = s;

                context.SaveChanges();
            }
        }