souvik0306 commited on
Commit
12401d0
·
1 Parent(s): e49efed

Refactor check_route function: Update result output format

Browse files
Files changed (1) hide show
  1. app.py +45 -15
app.py CHANGED
@@ -34,22 +34,52 @@ def check_route(airport_selections, aircraft_type):
34
  feasibility_result = check_route_feasibility(optimal_route, trip_distance, aircraft_specs)
35
  map_html = create_route_map(airports_dict, lat_long_dict, optimal_route, feasibility_result["Refuel Sectors"])
36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  if feasibility_result["Can Fly Entire Route"]:
38
- result = {
39
- "Optimal Route": " -> ".join(optimal_route) + f" -> {optimal_route[0]}",
40
- "Total Round Trip Distance": f"{optimal_distance} km",
41
- "Round Trip Fuel Required (kg)": feasibility_result["Total Fuel Required (kg)"],
42
- "Round Trip Flight Time (hrs)": feasibility_result["Total Flight Time (hrs)"],
43
- "Can Fly Entire Route": "Yes",
44
- "Sector Details": feasibility_result["Sector Details"]
45
- }
 
 
 
 
 
 
46
  else:
47
- result = {
48
- "Optimal Route": " -> ".join(optimal_route) + f" -> {optimal_route[0]}",
49
- "Total Round Trip Distance": f"{optimal_distance} km",
50
- "Can Fly Entire Route": "No, refueling required in one or more sectors.",
51
- "Sector Details": feasibility_result["Sector Details"]
52
- }
 
 
 
 
53
 
54
  return result, map_html
55
 
@@ -63,7 +93,7 @@ with gr.Blocks(theme=gr.themes.Default()) as demo:
63
  airport_selector = gr.Dropdown(airport_options, multiselect=True, label="Select Airports (IATA - Name)")
64
  aircraft_selector = gr.Dropdown(aircraft_options, label="Select Aircraft Type")
65
  check_button = gr.Button("Check Route Feasibility")
66
- result_output = gr.JSON(label="Feasibility Result (Route, Fuel, Refueling Info)")
67
 
68
  with gr.Column():
69
  gr.Markdown("## Route Map")
 
34
  feasibility_result = check_route_feasibility(optimal_route, trip_distance, aircraft_specs)
35
  map_html = create_route_map(airports_dict, lat_long_dict, optimal_route, feasibility_result["Refuel Sectors"])
36
 
37
+ sector_details_html = """
38
+ <table border="1" style="border-collapse: collapse; width: 100%;">
39
+ <tr>
40
+ <th>Sector</th>
41
+ <th>Fuel Required (kg)</th>
42
+ <th>Flight Time (hrs)</th>
43
+ <th>Refuel Required</th>
44
+ </tr>
45
+ """
46
+ for sector in feasibility_result["Sector Details"]:
47
+ sector_details_html += f"""
48
+ <tr>
49
+ <td>{sector['Sector']}</td>
50
+ <td>{sector['Fuel Required (kg)']}</td>
51
+ <td>{sector['Flight Time (hrs)']}</td>
52
+ <td>{sector['Refuel Required']}</td>
53
+ </tr>
54
+ """
55
+ sector_details_html += "</table>"
56
+
57
  if feasibility_result["Can Fly Entire Route"]:
58
+ result = f"""
59
+ <h3>Optimal Route</h3>
60
+ <p>{" -> ".join(optimal_route) + f" -> {optimal_route[0]}"}</p>
61
+ <h3>Total Round Trip Distance</h3>
62
+ <p>{optimal_distance} km</p>
63
+ <h3>Round Trip Fuel Required (kg)</h3>
64
+ <p>{feasibility_result["Total Fuel Required (kg)"]}</p>
65
+ <h3>Round Trip Flight Time (hrs)</h3>
66
+ <p>{feasibility_result["Total Flight Time (hrs)"]}</p>
67
+ <h3>Can Fly Entire Route</h3>
68
+ <p>Yes</p>
69
+ <h3>Sector Details</h3>
70
+ {sector_details_html}
71
+ """
72
  else:
73
+ result = f"""
74
+ <h3>Optimal Route</h3>
75
+ <p>{" -> ".join(optimal_route) + f" -> {optimal_route[0]}"}</p>
76
+ <h3>Total Round Trip Distance</h3>
77
+ <p>{optimal_distance} km</p>
78
+ <h3>Can Fly Entire Route</h3>
79
+ <p>No, refueling required in one or more sectors.</p>
80
+ <h3>Sector Details</h3>
81
+ {sector_details_html}
82
+ """
83
 
84
  return result, map_html
85
 
 
93
  airport_selector = gr.Dropdown(airport_options, multiselect=True, label="Select Airports (IATA - Name)")
94
  aircraft_selector = gr.Dropdown(aircraft_options, label="Select Aircraft Type")
95
  check_button = gr.Button("Check Route Feasibility")
96
+ result_output = gr.HTML(label="Feasibility Result (Route, Fuel, Refueling Info)")
97
 
98
  with gr.Column():
99
  gr.Markdown("## Route Map")