Beispiel #1
0
        public async Task <ActionResult <IList <AirlineDTO> > > GetAllWaitingAirlines()
        {
            LoginToken <Administrator> token            = GetLoginToken();
            IList <AirlineCompany>     airlineCompanies = null;

            try
            {
                airlineCompanies = await Task.Run(() => { return(m_facade.GetWaitingAirlines(token)); });
            }
            catch (AdministratorDoesntHaveSanctionException ex)
            {
                return(StatusCode(403, $"{{ error: \"{ex.Message}\" }}"));
            }
            catch (WasntActivatedByAdministratorException ex)
            {
                return(StatusCode(401, $"{{ error: \"{ex.Message}\" }}"));
            }
            if (airlineCompanies.Count == 0)
            {
                return(StatusCode(204, "{ }"));
            }
            IList <AirlineDTO> airlineDTOs = new List <AirlineDTO>();

            foreach (AirlineCompany airline in airlineCompanies)
            {
                AirlineDTO airlineDTO = m_mapper.Map <AirlineDTO>(airline);
                airlineDTOs.Add(airlineDTO);
            }
            return(Ok(JsonConvert.SerializeObject(airlineDTOs)));
        }
Beispiel #2
0
        public async Task <ActionResult <AirlineCompany> > CreateAirlineCompany([FromBody] AirlineDTO airline)
        {
            LoginToken <Administrator> token          = GetLoginToken();
            AirlineCompany             airlineCompany = m_mapper.Map <AirlineCompany>(airline);
            long id = 0;

            try
            {
                id = await Task.Run(() => { return(m_facade.CreateNewAirline(token, airlineCompany)); });
            }
            catch (AdministratorDoesntHaveSanctionException ex)
            {
                return(StatusCode(403, $"{{ error: \"{ex.Message}\" }}"));
            }
            catch (DuplicateDetailsException ex)
            {
                return(StatusCode(401, $"{{ error: \"{ex.Message}\" }}"));
            }
            catch (WasntActivatedByAdministratorException ex)
            {
                return(StatusCode(401, $"{{ error: \"{ex.Message}\" }}"));
            }
            airline.Id      = id;
            airline.User_Id = airline.User.Id;
            return(Created($"api/Administrator/CreateAirlineCompany/{id}", JsonConvert.SerializeObject(airline)));
        }
        public async Task <IHttpActionResult> GetAirline(int id)
        {
            Airline a = await db.Airline.FindAsync(id);

            if (a == null)
            {
                return(NotFound());
            }

            AirlineDTO airline = new AirlineDTO
            {
                Id      = a.Id,
                Name    = a.Name,
                Origin  = a.Origin,
                Flights = a.Flights.Select(b => new FlightDTO()

                {
                    Id         = b.Id,
                    Code       = b.Code,
                    DestPlace  = b.DestPlace,
                    FlightDate = b.FlightDate
                }

                                           ).ToList()
            };

            return(Ok(airline));
        }
Beispiel #4
0
        public async Task <ActionResult <Customer> > CreateNewWaitingAirline([FromBody] AirlineDTO airline)
        {
            long           id;
            AirlineCompany airlineCompany = m_mapper.Map <AirlineCompany>(airline);

            try
            {
                id = await Task.Run(() => m_facade.AddNewWaitingAirline(airlineCompany));
            }
            catch (DuplicateDetailsException ex)
            {
                return(StatusCode(400, $"{ex.Message}"));
            }
            airlineCompany.Id = id;
            return(Created($"api/Anonymous/CreateNewWaitingAirline/{id}", JsonConvert.SerializeObject(airlineCompany)));
        }
        public async Task <ActionResult> UpdateAirlineDetails([FromBody] AirlineDTO airline)
        {
            LoginToken <AirlineCompany> token = GetLoginToken();
            AirlineCompany airlineCompany     = m_mapper.Map <AirlineCompany>(airline);

            try
            {
                await Task.Run(() => m_facade.MofidyAirlineDetails(token, airlineCompany));
            }
            catch (WrongCredentialsException ex)
            {
                return(StatusCode(403, $"{{ error: \"{ex.Message}\" }}"));
            }
            catch (WasntActivatedByCustomerException ex)
            {
                return(StatusCode(401, $"{{ error: \"{ex.Message}\" }}"));
            }
            return(Ok());
        }
Beispiel #6
0
        public async Task <ActionResult <AirlineCompany> > RejectAirline([FromBody] AirlineDTO airline)
        {
            LoginToken <Administrator> token          = GetLoginToken();
            AirlineCompany             airlineCompany = m_mapper.Map <AirlineCompany>(airline);

            try
            {
                await Task.Run(() => m_facade.RejectWaitingAirline(token, airlineCompany));
            }
            catch (AdministratorDoesntHaveSanctionException ex)
            {
                return(StatusCode(403, $"{{ error: \"{ex.Message}\" }}"));
            }
            catch (WasntActivatedByAdministratorException ex)
            {
                return(StatusCode(401, $"{{ error: \"{ex.Message}\" }}"));
            }
            return(Ok());
        }