コード例 #1
0
 public void Persist(Airplane airplane)
 {
     if (!airplane.IsValidAirplane())
     {
         throw new AirplaneValidationException();
     }
     _airplaneRepository.Add(airplane);
     _airplaneRepository.Save();
 }
コード例 #2
0
        public bool AssignSeat(Airplane airplane, Seat seat)
        {
            var airplaneSelected = _airplaneRecoverService.RecoverPlane(airplane);

            if (airplaneSelected.IsValidAirplane())
            {
                if (airplaneSelected.CanAssignSeat(seat))
                {
                    airplaneSelected.Seats.Find(x => x.Row == seat.Row && x.Column == seat.Column).Available = AvailabilityEnum.Booked;
                    _airplaneRepository.Edit(airplaneSelected);
                    _airplaneRepository.Save();
                    return(true);
                }
            }
            return(false);
        }