Skip to content

Edenm210/FlightControl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FLIGHTS WEB APPLICATION

A web application that allows the user to view the active flights and to upload or delete flights from server.

SERVER SIDE:

  • uses Microsoft SQlite EF Core for the database.
  • The database stores the flights and additional servers that the server connects to.
  • The server synchronizes with other servers and receives additional flights from them.
  • The server receives and sends json files.

HTTP command:

  • GET /api/Flights?relative_to=<DATE_TIME> The server return a list of all the flights in the database that are active at the time given, and the position of the flights at that time.
  • GET /api/Flights?relative_to=<DATE_TIME>&sync_all Like the previous, with the addition of all the active flights in the servers that it is synchronized with.
  • POST /api/FlightPlan Gives the server a new flightPlan to save in the database. The flight plan is a jzon file in the body
  • GET /api/FlightPlan/{id} The server returns a flighPlan with the given flight ID.
  • DELETE /api/FlightPlan/{id} The server erases the flight with the given ID from the database.
  • GET /api/servers The server return a list of the other servers it is synchronized with.
  • POST /api/servers Gives the server a new server to synchronize with.
  • DELETE /api/servers/{id} delete a server

CLIENT SIDE

  • The webpage was designed using css and bootstrap
  • Presents all the active flights in a table, separating internal and external flights.
  • Shows the current position of the flights on the map.
  • If a flight is clicked, in the table or the map, the complete route of the flight is shown.
  • Option of adding new flights.
  • Option of deleting an internal flight from the server

JSON FILES EXAMPLES:

  • flightPlan: { "passengers": 216, "company_name": "SwissAir", "initial_location": { "longitude": 32.244, "latitude": 31.12, "date_time": "2020-01-01T07:00:00Z" }, "segments": [ { "longitude": 33.234, "latitude": 31.18, "timespan_seconds": 800 }, { "longitude": 34.234, "latitude": 33.18, "timespan_seconds": 700 } ] }

  • flight: { "flight_id": "[FLIGHT_ID]", "longitude": 33.244, "latitude": 31.12, "passengers": 216, "company_name": "SwissAir", "date_time": "2020-12-26T23:56:21Z", "is_external": false }

  • server: "serverId": "[SERVER_ID]", "serverURL": "www.server.com" }


COMMENTS:

  • All the times in the program are relative to UTC.
  • The client cannot access outside servers (add or remove).
  • The calculations of the current position of the flights assumes a flat plain.

About

Flight Control Web

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published