public ParkingTicket GetParkingTicket(Vehicle vehicle) { var ticket = new ParkingTicket(vehicle); var spot = FindParkingSpotInAnyFloors(vehicle); ticket.Spot = spot; spot.Floor.AssignSpot(spot, vehicle); ticket.Save(); return(ticket); }
public bool ProcessPayment(ParkingTicket ticket, Payment payment) { var result = payment.ProcessPayment(); if (result) { ticket.Status = ParkingTicketStatus.Paid; ticket.Spot.Floor.ReleseSpot(ticket.Spot); ticket.Save(); return(true); } return(false); }