private List <Vehicles> GetAllAvaliableVehicles(DateTime date) { try { using (var vehicleBusiness = new VehicleBusiness()) { var vehicles = vehicleBusiness.GetAll(); using (var rentedbusiness = new RentedVehicleBusiness()) { var rentedVehicles = rentedbusiness.GetAll(); foreach (var rentedvehicle in rentedVehicles) { List <DateTime> isntavaliabletimes = new List <DateTime>(); for (DateTime time = rentedvehicle.PickUpDate.Date; time <= rentedvehicle.DropOffDate.Date; time = time.AddDays(1)) { isntavaliabletimes.Add(time); } if (isntavaliabletimes.Contains(date)) { var removethisvehicle = vehicleBusiness.GetByID(rentedvehicle.RentId); vehicles.Remove(removethisvehicle); } } return(vehicles); } } } catch (Exception ex) { LogHelper.Log(LogTarget.File, ExceptionHelper.ExceptionToString(ex), true); throw new Exception("Request doesn't exists."); } }
private bool ApproveAndAdd(int ID) { try { using (var rentalRequesBusiness = new RentalRequestBusiness()) { RentalRequests rentalreq = rentalRequesBusiness.GetByID(ID); var rentingtime = Convert.ToInt32(rentalreq.RequestedDropOffDate.Date - rentalreq.RequestedPickUpDate.Date); using (var vehicleBusiness = new VehicleBusiness()) { Vehicles reqvehicle = vehicleBusiness.GetByID(rentalreq.RequestedVehicleId); using (var rentedvehicleBusiness = new RentedVehicleBusiness()) { RentedVehicles rentvehicle = new RentedVehicles() { RentalPrice = reqvehicle.DailyRentalPrice * rentingtime, DropOffDate = rentalreq.RequestedDropOffDate, PickUpDate = rentalreq.RequestedPickUpDate, VehiclesPickUpKm = reqvehicle.VehiclesInstantKm, VehiclesDropOffKm = reqvehicle.VehiclesInstantKm + (reqvehicle.KmLimitPerDay * rentingtime), SupplierCompanyId = rentalreq.RequestedSupplierCompanyId, RentedVehicleId = rentalreq.RequestedVehicleId, DriverCustomerId = rentalreq.RentalRequestCustomerId }; DeleteRequest(ID); return(rentedvehicleBusiness.Insert(rentvehicle)); } } } } catch (Exception ex) { LogHelper.Log(LogTarget.File, ExceptionHelper.ExceptionToString(ex), true); throw new Exception("Request doesn't exists."); } }