static void MakeReservation() { int numberOfMaternityRooms = 0; int numberOfRestRoom4HoursRooms = 0; int numberOfBirthRoomsRooms = 0; using (BirthClinicPlanningContext numberOfRooms = new BirthClinicPlanningContext()) { numberOfMaternityRooms = numberOfRooms.MaternityRooms.Count(); numberOfRestRoom4HoursRooms = numberOfRooms.RestRoom4Hours.Count(); numberOfBirthRoomsRooms = numberOfRooms.BirthRooms.Count(); } bool notTrue = true; while (notTrue) { string choice = Console.ReadLine(); switch (choice) { case "a": Console.WriteLine($"Vælg et id mellem 1 og {numberOfMaternityRooms}:"); notTrue = false; break; case "b": Console.WriteLine( $"Vælg et id mellem {numberOfMaternityRooms + 1} og {numberOfRestRoom4HoursRooms + numberOfMaternityRooms}:"); notTrue = false; break; case "c": Console.WriteLine( $"Vælg et id mellem {numberOfMaternityRooms + numberOfRestRoom4HoursRooms + 1} og {numberOfBirthRoomsRooms + numberOfMaternityRooms + numberOfRestRoom4HoursRooms}:"); notTrue = false; break; default: Console.WriteLine($"Vælg et gyldigt bogstav"); break; } } int choice1 = int.Parse(Console.ReadLine()); Reservation newReservation = new Reservation(); newReservation.RoomId = choice1; Console.WriteLine($"Vælg en start dato for din reservation."); newReservation.ReservationStartDate = ReservationDate(); Console.WriteLine($"Vælg en s**t dato for din reservation."); newReservation.ReservationEndDate = ReservationDate(); using (BirthClinicPlanningContext makeReservation = new BirthClinicPlanningContext()) { makeReservation.Add(newReservation); makeReservation.SaveChanges(); } }
public DatabaseSearch(BirthClinicPlanningContext context) { _context = context; }
static void NewBirth(DatabaseSearch dbSearch) { int numberOfMaternityRooms = 0; int numberOfRestRoom4HoursRooms = 0; int numberOfBirthRoomsRooms = 0; using (BirthClinicPlanningContext numberOfRooms = new BirthClinicPlanningContext()) { numberOfMaternityRooms = numberOfRooms.MaternityRooms.Count(); numberOfRestRoom4HoursRooms = numberOfRooms.RestRoom4Hours.Count(); numberOfBirthRoomsRooms = numberOfRooms.BirthRooms.Count(); } Console.WriteLine($"Vælg en start dato for din fødsel."); Birth newBirth = new Birth(); newBirth.PlannedStartDate = ReservationDate(); Console.WriteLine($"Vælg en s**t dato for din fødsel."); newBirth.PlannedEndDate = ReservationDate(); Console.WriteLine($"Vælg et fødselserum mellem {numberOfMaternityRooms + numberOfRestRoom4HoursRooms + 1} og {numberOfBirthRoomsRooms + numberOfMaternityRooms + numberOfRestRoom4HoursRooms}: "); int choice3 = int.Parse(Console.ReadLine()); bool notDone = true; List <Works> workers = new List <Works>(); while (notDone) { Console.WriteLine("Tryk enter for at gå videre og 'e' for at afslutte"); if (Console.ReadKey().Key != ConsoleKey.E) { Works clinicianWorks = new Works(); clinicianWorks.Birth = newBirth; Console.WriteLine($"Vælg et ledig personale: "); dbSearch.ShowAvaliableClinciansAndRoomsForNextFiveDays(); Console.WriteLine("Indtast et Id på et ledig personale"); int choice4 = int.Parse(Console.ReadLine()); clinicianWorks.EmployeeId = choice4; workers.Add(clinicianWorks); } else { notDone = false; } } using (BirthClinicPlanningContext makeBirth = new BirthClinicPlanningContext()) { makeBirth.Add(newBirth); foreach (var works in workers) { makeBirth.Add(works); } makeBirth.SaveChanges(); } }
static void AddData() { using (BirthClinicPlanningContext context = new BirthClinicPlanningContext()) { Birth b1 = new Birth(); b1.PlannedStartDate = DateTime.Now; b1.PlannedEndDate = DateTime.Now.AddDays(1); Birth b2 = new Birth(); b2.PlannedStartDate = DateTime.Now.AddDays(4); b2.PlannedEndDate = DateTime.Now.AddDays(5); Birth b3 = new Birth(); b3.PlannedStartDate = DateTime.Now.AddDays(1); b3.PlannedEndDate = DateTime.Now.AddDays(2); Mother m1 = new Mother("Simone Schou Jensen"); Father f1 = new Father("Simon Bjermand Kjær"); Child c1 = new Child(); c1.Birth = b1; RelativesChild rc1 = new RelativesChild(); rc1.Child = c1; rc1.Relatives = m1; Works w1 = new Works(); w1.Birth = b1; w1.EmployeeId = 27; Clinicians e1 = context.Clinicians.Find(27); e1.BirthRoomId = 1; context.Update(e1); Clinicians e2 = context.Clinicians.Find(1); e2.BirthRoomId = 2; context.Update(e1); Works w2 = new Works(); w2.Birth = b2; w2.EmployeeId = 1; Reservation r1 = context.Reservations.Find(28); r1.Relatives = m1; r1.ReservationStartDate = DateTime.Now; r1.ReservationEndDate = DateTime.Now.AddDays(2); r1.RoomId = 28; context.Update(r1); Reservation r2 = context.Reservations.Find(1); r2.Relatives = m1; r2.ReservationStartDate = DateTime.Now.AddDays(2); r2.ReservationEndDate = DateTime.Now.AddDays(3); r2.RoomId = 1; context.Update(r2); Reservation r3 = context.Reservations.Find(13); r3.Relatives = m1; r3.ReservationStartDate = DateTime.Now; r3.ReservationEndDate = DateTime.Now.AddDays(3); r3.RoomId = 13; context.Update(r3); context.Add(b1); context.Add(b2); context.Add(b3); context.Add(c1); context.Add(m1); context.Add(f1); context.Add(rc1); context.Add(w1); context.Add(w2); context.SaveChanges(); } }
static void Main(string[] args) { //AddData(); BirthClinicPlanningContext context = new BirthClinicPlanningContext(); DatabaseSearch dbSearch = new DatabaseSearch(context); DatabaseAlterData dbAlter = new DatabaseAlterData(context); bool running = true; Console.WriteLine("Velkommen til BirthClinicPlanning!\n"); while (running) { Console.WriteLine("Vælg en af følgende muligheder: "); Console.WriteLine("1. Vis planlagte fødsler"); Console.WriteLine("2. Vis ledige rum for de kommende fire dage"); Console.WriteLine("3. Vis information om igangværende fødsler"); Console.WriteLine("4. Vis information om hvilerum i brug"); Console.WriteLine("5. Vis reserverede fødselsrum"); Console.WriteLine("6. Vis klinikere tilkoblet fødsler"); Console.WriteLine("7. Marker en fødsel som færdig"); Console.WriteLine("8. Annuller en reservation på et rum"); Console.WriteLine("9. Opret en fødsel"); Console.WriteLine("10. Opret en ny reservation"); Console.WriteLine("11. Luk programmet\n"); string input = Console.ReadLine(); switch (int.Parse(input)) { case 1: dbSearch.ShowPlannedBirths(); break; case 2: dbSearch.ShowAvaliableClinciansAndRoomsForNextFiveDays(); break; case 3: dbSearch.ShowInfoAboutOngoingBirths(); break; case 4: dbSearch.ShowInfoAboutRestRoomsInUse(); break; case 5: Console.WriteLine("Indtast fødsels id:"); int id1 = int.Parse(Console.ReadLine()); Console.WriteLine(""); dbSearch.ShowReservedRooms(id1); break; case 6: Console.WriteLine("Indtast fødsels id:"); int id2 = int.Parse(Console.ReadLine()); Console.WriteLine(""); dbSearch.ShowCliniciansAssignedBirths(id2); break; case 7: Console.WriteLine("Indtast fødsels id:"); int id3 = int.Parse(Console.ReadLine()); dbAlter.EndBirth(id3); break; case 8: Console.WriteLine("Indtast reservations id:"); int id4 = int.Parse(Console.ReadLine()); dbAlter.CancelReservation(id4); break; case 9: NewBirth(dbSearch); break; case 10: Console.WriteLine("Lav en reservation i en af disse rumtyper: \n a: Maternityroom \n b: Restroom (4 hours) \n c: Birthroom \n"); MakeReservation(); break; case 11: running = false; break; default: Console.WriteLine("Forkert input. Vælg et tal mellem 1 og 7.\n"); break; } } }
public DatabaseAlterData(BirthClinicPlanningContext context) { _context = context; }