示例#1
0
        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);
        }
示例#2
0
        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);
        }