Created by KfirYehuda, stavih19 and BenAzoulayDev
Link to Repository
In this Project we will build an airplane control system, which is required to monitor active flights and allows to enter News Flight. The flight plan describes the take-off time of the aircraft from a particular point on Earth as well Consists of a list of waypoints where the plane passes and the estimated time it reaches each point. During the exercise Assume the flights are running as planned and the air traffic control system advertises its location at any given time according to plan Fed to him. The built airplane control system will be synchronized with other air control systems so that users can also track the status of flights entered into their system and other flights entered into Exterior control systems.
The built in app is a Web app, all user actions can be done from a single page in the browser. The display And the user interface logic is implemented dynamically on the client side (ViewModel, View), while all functionality Required (Model) can be accessed by the client through resources (REST) that the server will expose via HTTP protocol
- Using Core NET.ASP to create a modern Web application.
- Creating REST-based API using WebAPI
- Client design is based on bootstrap design directories and css principles
- Creating an ES8-based client-side app
- Unit tests and Dependency Injection
Action | Path | Description |
---|---|---|
GET | /api/Flights?relative_to=<DATE_TIME> | Returns an array in the body containing the states of all flights The activity entered directly to the current server (is_external = false) relative to the time specified in the request. |
GET | /api/Flights?relative_to=<DATE_TIME>&sync_all | Like the previous one, only that returns all the flights the server can Find out, both directly from him and from external servants Which is in sync with them. |
POST | /api/FlightPlan | Feeds to serve a new flight plan, the flight plan Detailed by an appropriate object in the body of the request. |
GET | api/FlightPlan/{id} | Returns the flight plan with the particular ID |
DELETE | /api/Flights/{id} | Deletes a flight with a specific ID previously entered to the server Current. |
GET | /api/servers | Returns the list of external servers you have served, Syncing information from them |
POST | /api/servers | Take an external server Listen from internal flight of the external server and display the external server flight in external flights |
DELETE | /api/servers/{id} | Deletes a server from the list of external servers |
{
"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
}
{
"passengers": 216,
"company_name": "SwissAir",
"initial_location": {
"longitude": 33.244,
"latitude": 31.12,
"date_time": "2020-12-26T23:56:21Z"
},
"segments": [
{
"longitude": 33.234,
"latitude": 31.18,
"timespan_seconds": 650
},
/*... more segments...*/
]
}
"ServerId": "[SERVER_ID]",
"ServerURL": "www.server.com"
The application run in an environment where 10 windows is installed with the latest version of 4 NET (version 6.4 And above) The compilation works on 2019 studio visual. ASP.NET Core 3.1 WebAPI
Will be Added in the future...
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.