Пример #1
0
        public ActionResult <AirPlaneVM> GetById(int id)
        {
            var result = _airplaneService.Get(id);
            var obj    = _mapper.Map <AirPlaneVM>(result);

            return(obj);
        }
Пример #2
0
        public Result <Passenger> PassengerToAirPlane(PassengerToAirPlane passengerToAirPlane)
        {
            var result = new Result <Passenger>(_passengerToAirPlaneValidador.Validate <PassengerToAirPlane>(passengerToAirPlane));

            if (!result.Success)
            {
                return(result);
            }

            lock (objlock)
            {
                var airplane = _airplane.Get(passengerToAirPlane.AiplaneId);

                if (airplane == null || airplane?.ReservedSeats == airplane.QuantityOfSeats)
                {
                    throw new AirplaneControlException("Airplane without seats avaliable");
                }

                var passenger = _repository.Get(passengerToAirPlane.PassengerId);
                if (passenger == null)
                {
                    throw new AirplaneControlException("Passenger not exist");
                }

                if (passenger.AirplaneId > 0)
                {
                    throw new AirplaneControlException("Passenger already have a seat");
                }

                airplane.ReservedSeats = airplane.ReservedSeats + 1;

                passenger.Airplane = airplane;

                _repository.Update(passenger);

                return(new Result <Passenger>(passenger));
            }
        }
Пример #3
0
 public IEnumerable <Airplane> Get()
 {
     return(service.Get());
 }
Пример #4
0
 public async Task <IActionResult> GetAll()
 {
     return(Ok(await service.Get()));
 }