public void AddVehicleToGarage(string i_Owner, string i_Phone, VehicleInputData i_VehicleData) { VehicleCard newCard, foundCard; Vehicle newVehicle; try { foundCard = FindCardByLicense(i_VehicleData.m_LicenseNumber); } catch (KeyNotFoundException) { foundCard = null; } if (foundCard == null) { newVehicle = VehicleCreator.CreateNewVehicle(i_VehicleData); newCard = new VehicleCard(i_Owner, i_Phone, VehicleCard.eVehicleStatus.InService, newVehicle); m_Cards.Add(newCard); } else { foundCard.Status = VehicleCard.eVehicleStatus.InService; throw new VehicleAllreadyInGarageException(new Exception(), foundCard.Vehicle.LicenseNumber); } }
// Add new vehicle by type to the vehicle list, if the vehicle all ready exist, change his status to InRepair public void AddNewVehicle(string i_LicenseNumber, Enums.eVehicleType i_VehicleKind) { Vehicle NewVehicle; if (m_ListOfVehicles.ContainsKey(i_LicenseNumber)) { m_ListOfVehicles[i_LicenseNumber].VehicleStatus = Enums.eVehicleStatus.InRepair; throw new Exception("Vehicle all ready exist, status changed to in repair"); } else { NewVehicle = VehicleCreator.CreateNewVehicle(i_LicenseNumber, i_VehicleKind); m_ListOfVehicles.Add(i_LicenseNumber, NewVehicle); } }
public void InsertVehicle(string i_OwnerName, string i_OwnerPhone, eVehicleType i_VehicleType, string i_plateNumber) { bool isExist = false; foreach (string key in r_VehiclesStorage.Keys) { if (key == i_plateNumber) { r_VehiclesStorage[key].Status = eVehicleStatus.InProgress; throw new ArgumentException("Vehicle already in the garage! Changing vehicle status to 'In-Progress'"); } } if (isExist == false) { Vehicle i_NewVehicle = VehicleCreator.CreateNewVehicle(i_VehicleType, i_plateNumber); GarageVehicleInfo NewVehicleData = new GarageVehicleInfo(i_OwnerName, i_OwnerPhone, i_NewVehicle); r_VehiclesStorage.Add(i_plateNumber, NewVehicleData); } }