public static void Main() { var doctors = new Dictionary <string, List <string> >(); var hospital = new Hospital(); string command; while ((command = Console.ReadLine()) != "Output") { var tokens = command.Split(); var departament = tokens[0]; var patient = tokens[3]; var fullName = $"{tokens[1]} {tokens[2]}"; if (!doctors.ContainsKey(fullName)) { CreateNewDoctor(doctors, fullName); } if (!hospital.Departments.Any(d => d.Name == departament)) { hospital.CreateNewDepartment(departament); } var freeRoom = hospital.FindRoom(departament); if (freeRoom != null) { AddPatientToDoctor(doctors, patient, fullName); hospital.AddPatient(departament, freeRoom, patient); } } while ((command = Console.ReadLine()) != "End") { var args = command.Split(); Print(doctors, hospital, args); } }
public void Run() { string command = Console.ReadLine(); while (command != "Output") { string[] tokens = command.Split(); var departament = tokens[0]; var firstName = tokens[1]; var lastName = tokens[2]; var patient = tokens[3]; var fullName = firstName + " " + lastName; hospital.AddDepartaments(departament); hospital.AddDoctors(firstName, lastName); hospital.AddPatient(departament, fullName, patient); command = Console.ReadLine(); } command = Console.ReadLine(); while (command != "End") { var arguments = command.Split(" "); if (arguments.Length == 1) { var departamentName = arguments[0]; var departament = hospital.Departments.FirstOrDefault(d => d.Name == departamentName); Console.WriteLine(departament); } else { bool isRoom = int.TryParse(arguments[1], out int result); if (isRoom) { var departamentName = arguments[0]; var departament = hospital.Departments.FirstOrDefault(d => d.Name == departamentName); var currentRoom = departament.Rooms[result - 1]; Console.WriteLine(currentRoom); } else { var firsName = arguments[0]; var lastName = arguments[1]; var fullName = firsName + " " + lastName; var doctor = hospital.Doctors.FirstOrDefault(d => d.FullName == fullName); Console.WriteLine(doctor); } } command = Console.ReadLine(); } }
public void Run() { string command = Console.ReadLine(); while (command != "Output") { string[] inputArgs = command.Split(); string departament = inputArgs[0]; string firstName = inputArgs[1]; string secondName = inputArgs[2]; string patient = inputArgs[3]; string fullName = firstName + " " + secondName; hospital.AddDoctor(firstName, secondName); hospital.AddDepartment(departament); hospital.AddPatient(fullName, departament, patient); command = Console.ReadLine(); } command = Console.ReadLine(); while (command != "End") { string[] args = command.Split(" ", StringSplitOptions.RemoveEmptyEntries); if (args.Length == 1) { string departmentName = args[0]; Department department = hospital.Departments .FirstOrDefault(x => x.Name == departmentName); Console.WriteLine(department); } else if (args.Length == 2) { bool isRoom = int.TryParse(args[1], out int targetRoom); if (isRoom) { string departmentName = args[0]; Room room = hospital.Departments .FirstOrDefault(x => x.Name == departmentName).Rooms[targetRoom - 1]; Console.WriteLine(room); } else { string fullname = args[0] + " " + args[1]; Doctor doctor = hospital.Doctors.FirstOrDefault(x => x.FullName == fullname); Console.WriteLine(doctor); } } command = Console.ReadLine(); } }