public Logger(Parking parking, int interaval) { timer = new InternalTimer(interaval, WriteLogFile); Parking = parking; if (File.Exists(fileName)) { File.Delete(fileName); } }
//Поиск машины на парковке по номеру public static bool SeachCarOnParking(Parking parking, string carNum) { if (parking[carNum]?.Number != null) { return(true); } else { Console.WriteLine($"Автомобиля с номером {carNum} на парковке нет!"); Console.WriteLine(); return(false); } }
public bool Action() { var flag = true; var value = GetAndValidateInputInt(0, 8); Console.Clear(); switch (value) { case 1: Console.WriteLine($"Total revenue: {_parking.GetTotalRevenue()}"); break; case 2: Console.WriteLine($"Revenue for the last minute:{Parking.AmountForTheLastMinute()}"); break; case 3: Console.WriteLine($"Free spaces: {_parking.GetNumberOfFreePlaces()}.\nBusy spaces: {Parking.GetNumberOfBusyPlaces()}."); break; case 4: AddCarMenuItem(); break; case 5: RemoveCarMenuItem(); break; case 6: TopUpCarBalanceMenuItem(); break; case 7: DisplayTransactionsForTheLastMinuteMenuItem(); break; case 8: DisplayTransactionsFileMenuItem(); break; default: flag = false; break; } if (flag) { EndOfParagraph(); } return(flag); }
static void Main(string[] args) { // Initialize the repository Parking parking = new Parking("Underground parking garage", 5); // Initialize entity Car volvo = new Car("Volvo", "XC70", 2010); // Print Car Console.WriteLine(volvo); // Volvo XC70 (2010) // Add Car parking.Add(volvo); // Remove Car Console.WriteLine(parking.Remove("Volvo", "XC90")); // False Console.WriteLine(parking.Remove("Volvo", "XC70")); // True Car peugeot = new Car("Peugeot", "307", 2011); Car audi = new Car("Audi", "S4", 2005); parking.Add(peugeot); parking.Add(audi); // Get Latest Car Car latestCar = parking.GetLatestCar(); Console.WriteLine(latestCar); // Peugeot 307 (2011) //parking.Remove("Peugeot", "307"); //parking.Remove("Audi", "S4"); //Car latestCar1 = parking.GetLatestCar(); //Console.WriteLine(latestCar1); // Get Car Car audiS4 = parking.GetCar("Audi", "S4"); Console.WriteLine(audiS4); // Audi S4 (2005) // Count Console.WriteLine(parking.Count); // 2 // Get Statistics Console.WriteLine(parking.GetStatistics()); // The cars are parked in Underground parking garage: // Peugeot 307(2011) // Audi S4(2005) }
private void TopUpCarBalanceMenuItem() { var busyPlaces = Parking.GetNumberOfBusyPlaces(); if (busyPlaces == 0) { Console.WriteLine("There are no cars in the parking."); } else { Console.WriteLine( $"To top up car balance, please, enter the number of this car from 1 to {busyPlaces}:"); var numberOfCar = GetAndValidateInputInt(1, busyPlaces); Console.WriteLine("Enter the amount of money:"); var money = GetAndValidateInputDecimal(); Console.WriteLine($"The balance is topped up. The new balance: {_parking.TopUp(numberOfCar, money)}"); } }
static void Main(string[] args) { Parking parking = new Parking("Underground parking garage", 5); Car volvo = new Car("Volvo", "XC70", 2010); Console.WriteLine(volvo); parking.Add(volvo); Console.WriteLine(parking.Remove("Volvo", "XC90")); Console.WriteLine(parking.Remove("Volvo", "XC70")); Car peugeot = new Car("Peugeot", "307", 2011); Car audi = new Car("Audi", "S4", 2005); parking.Add(peugeot); parking.Add(audi); Console.WriteLine(parking.GetStatistics()); Console.WriteLine(parking.GetLatestCar()); Console.WriteLine(parking.GetCar("Audi", "S4")); }
static void Main(string[] args) { var poc = new Parking <Car>(90); var soc = new Parking <Boat>(12); var toc = new Parking <Truck>(15); Car golf = new Car { Make = "Golf", Model = "MK 6 GTD" }; Boat agro = new Boat { Name = "Titanic", Besplatno = false }; Truck scania = new Truck { Make = "Scania", Model = "Scania 580" }; poc.ParkVehicles(golf); poc.LeaveVehicle(golf); Console.WriteLine(); soc.ParkVehicles(agro); soc.LeaveVehicle(agro); Console.WriteLine(); toc.ParkVehicles(scania); toc.LeaveVehicle(scania); Console.ReadLine(); }
static void Main(string[] args) { Parking poc = new Parking(100); Car astra = new Car { Make = "Opel", Model = "Astra" }; Boat yamaha = new Boat { Name = "YamahaBoat", BesPlatno = true, }; poc.ParkVehicle(astra); Console.WriteLine(astra.Make + " " + astra.Model + " parked :" + astra.IsParked); astra.LeaveParking(); Console.WriteLine(astra.Make + " " + astra.Model + " parked :" + astra.IsParked); poc.ParkBoat(yamaha); Console.WriteLine(yamaha.Name + " " + " ima li platno :" + yamaha.BesPlatno + "\nparked :" + yamaha.IsParked); yamaha.LeaveParking(); Console.WriteLine(yamaha.Name + " " + " ima li platno :" + yamaha.BesPlatno + "\nparked :" + yamaha.IsParked); }
public Menu(Parking parking) { Parking = parking; }
public void LeaveParking(Parking <IVehicle> parking) { Parking.LeaveVehicle(this); // throw new NotImplementedException(); }
public void LeaveParking() { Parking.LeaveVehicle(this); }
private static async void OnTimedEventForTransactionsLogging(Object source, ElapsedEventArgs e) => await Parking.WriteToTransactionsFileAsync();
public static void ShowMenu() { int id, sum = 0; string buf; bool check = false; while (true) { PrintMenuTemplate(); buf = Console.ReadLine(); Console.Clear(); switch (buf) { case "1": Car car = new Car(); Console.WriteLine("Please enter car type(Passenger(0),Truck(1),Bus(2),Motorcycle(3)): "); while (!check) { try { car.Type = (CarTypes)Enum.Parse(typeof(CarTypes), Console.ReadLine()); if (int.TryParse(Convert.ToString(car.Type), out int a)) { Console.WriteLine("Not valid car type. Car type can not contains number. Please try again."); } else { check = true; } } catch (ArgumentException) { Console.WriteLine("Not valid car type. Please try again."); } catch (OverflowException) { Console.WriteLine("Not valid car type. Car type can not contains number. Please try again."); } } check = false; Console.WriteLine("Please enter car id: "); while (!Int32.TryParse(Console.ReadLine(), out id)) { Console.WriteLine("Enter valid id please: "); } ; car.Id = id; Parking.AddCar(car); break; case "2": Console.WriteLine("Please enter car id: "); while (!Int32.TryParse(Console.ReadLine(), out id)) { Console.WriteLine("Enter valid id please: "); } ; Parking.RemoveCar(id); break; case "3": Console.WriteLine("Please enter car id: "); while (!Int32.TryParse(Console.ReadLine(), out id)) { Console.WriteLine("Enter valid id please: "); } ; Console.WriteLine("Input sum please: "); while (!Int32.TryParse(Console.ReadLine(), out sum)) { Console.WriteLine("Enter valid sum please: "); } ; Car c = Parking.Cars.Find(cars => cars.Id == id); if (c == null) { Console.WriteLine("No such car at parking"); } else { c.Balance += sum; } break; case "4": Parking.PrintTransactions(); break; case "5": Settings.LogReader(); break; case "6": Console.WriteLine("Total parking balance:{0}", Parking.Balance); break; case "7": Console.WriteLine("Current parking balance:{0}", Parking.CurrentBalance); break; case "8": Console.WriteLine("Free parking spaces: {0}", Parking.ParkingSpace); break; case "9": Console.WriteLine("Occupied parking spaces: {0}/{1}", Settings.parkingSpaceLimit - Parking.ParkingSpace, Settings.parkingSpaceLimit); break; case "10": Environment.Exit(0); return; default: Console.WriteLine("Please enter only existing menu option numbers!"); break; } } }
//Initialize settings and create parking. public static void Start() { bool actions = true; int action = 0; bool choise = true; Console.WriteLine("Hi! It`s program which simulate work of parking... To open main menu, press any button:"); Console.ReadKey(); Console.Clear(); Console.WriteLine("To start work with parking, please initialize Settings and Parking. Press any key, to start..."); Console.ReadKey(); Console.Clear(); Console.WriteLine("-----Initializing settings-----"); Console.WriteLine("Make choise to set settings. If you do not choose some field it will accept the default value."); while (actions) { Console.WriteLine("1) Set timeout."); Console.WriteLine("2) Set prices for parking."); Console.WriteLine("3) Set parking space."); Console.WriteLine("4) Set fine."); Console.WriteLine("5) Show default values."); Console.WriteLine("6) Complete the settings.\n"); Console.WriteLine("Enter your choise: "); action = InputValue(); Console.Clear(); switch (action) { case 1: Console.WriteLine("Enter timeout:"); timeOut = InputValue(); Console.WriteLine("Done!"); Console.ReadKey(); break; case 2: Console.WriteLine("Enter prices for parking through spaces (Bus, Truck, Passenger, Motorcycle)"); while (choise) { string[] data = Console.ReadLine().Split(); try { pricesForParking[CarType.Bus] = int.Parse(data[0]); pricesForParking[CarType.Truck] = int.Parse(data[1]); pricesForParking[CarType.Passenger] = int.Parse(data[2]); pricesForParking[CarType.Motorcycle] = int.Parse(data[3]); choise = false; } catch { Console.WriteLine("Error! Can`t read your choise! Please, try again!"); } } Console.WriteLine("Done!"); Console.ReadKey(); break; case 3: Console.WriteLine("Enter parking space:"); parkingSpace = InputValue(); Console.WriteLine("Done!"); Console.ReadKey(); break; case 4: Console.WriteLine("Enter fine:"); fine = InputValue(); Console.WriteLine("Done!"); Console.ReadKey(); break; case 5: Settings.Show(); Console.ReadKey(); break; case 6: Settings.SetSettings(timeOut, pricesForParking, parkingSpace, fine); Console.WriteLine("Settings sets succesfull!"); Console.ReadKey(); actions = false; break; } Console.Clear(); } Parking.Initialzie(); Console.WriteLine("To start work with parking press any button..."); Console.ReadKey(); Console.Clear(); Parking.Instance.Start(); }
public static void Main(string[] args) { var cars = new List <Car>() { new Car() { Name = "Ford", Number = "E003KM150" }, new Car() { Name = "Suzuki", Number = "E886KP190" } }; var parking = new Parking(); foreach (var car in cars) { parking.Add(car); } Parking.CarsOnParking(parking);//Машины на парковке //Марки машин на парковке foreach (var carName in parking.GetNames()) { Console.WriteLine($"{carName} "); } Console.WriteLine(); //Поиск машины на парковке по номеру Console.WriteLine("Введите номер искомого автомобиля"); var seachNum = Console.ReadLine(); if (Parking.SeachCarOnParking(parking, seachNum)) { Console.WriteLine($"На парковке есть автомобиль: {parking[seachNum].Name} номер {parking[seachNum].Number}"); Console.WriteLine(); } //Выезд автомобиля Console.WriteLine("Введите номер выезжающего автомобиля"); var outNum = Console.ReadLine(); if (Parking.SeachCarOnParking(parking, outNum)) { parking.GoOut(parking[outNum]); } Parking.CarsOnParking(parking); //Машины на парковке //Въезд нового автомобиля Console.WriteLine("Введите номер нового автомобиля"); var num = Console.ReadLine(); Console.WriteLine("Введите марку нового автомобиля"); var name = Console.ReadLine(); //Console.WriteLine(); //parking[parking.Count - 1] = new Car() { Name = name, Number = num }; parking.Add(new Car() { Name = name, Number = num }); //Console.WriteLine($"Въехал новый автомобиль: {parking[parking.Count - 1]}"); //Console.WriteLine(); Parking.CarsOnParking(parking); //Машины на парковке }
static void Main(string[] args) { // Generate Car`s Parking and Cars Parking <Car> carParking = new Parking <Car>(2); Car astra = new Car { Make = "Opel", Model = "Astra" }; Car fiat = new Car { Make = "Fiat", Model = "Punto" }; Car suzuki = new Car { Make = "Suzuki", Model = "Swift" }; Console.WriteLine(); Console.WriteLine("Parking cars:"); Console.WriteLine(); carParking.ParkVehicle(astra); carParking.ParkVehicle(fiat); carParking.ParkVehicle(suzuki); Console.WriteLine(); Console.WriteLine("Cars leaving parking: "); Console.WriteLine(); carParking.LeaveVehicle(suzuki); astra.LeaveParking(); astra.EnterParking(carParking); Console.WriteLine(); Console.WriteLine("Parking cars:"); Console.WriteLine(); carParking.ParkVehicle(suzuki); //Generate Boat and Boat`s Parking Parking <Boat> boatParking = new Parking <Boat>(1); Boat Milena = new Boat(); Milena.Name = "Milena"; Boat BlackPearl = new Boat(); BlackPearl.Name = "BlackPearl"; Console.WriteLine(); Console.WriteLine("Parking boats"); Console.WriteLine(); boatParking.ParkVehicle(Milena); boatParking.ParkVehicle(BlackPearl); }
static void Main(string[] args) { Parking myParking = new Parking(); Console.WriteLine("Hello in my parking lot!'\n" + "1) Find out the current balance of parking\n" + "2) The amount of money earned in the last minute\n" + "3) Find out the number of free / busy places in the parking lot\n" + "4) Show all transactions in the last minute\n" + "5) Print the entire Transaction history (after reading the data from the Transactions.log file)\n" + "6) Display the list of all vehicles\n" + "7) Createthe vehicle\n" + "8) Remove parking vehicle\n" + "9) Refill the balance of a particular vehicle\n"); string input; do { input = Console.ReadLine(); switch (input) { case "1": Console.WriteLine(myParking.Balance); break; case "2": myParking.EarnedMoneyForLastMinute(); break; case "3": myParking.ShowPlaces(); break; case "4": myParking.ShowLastTransactions(); break; case "5": myParking.ShowAllTransactions(); break; case "6": myParking.ShowCar(); break; case "7": myParking.addCar(); break; case "8": myParking.RemoveCar(); break; case "9": myParking.AddMoney(); break; } } while (true); }