1+ use crate :: api:: helper;
12use crate :: api:: state:: ApiStateData ;
23use actix_web:: HttpResponse ;
3- use chrono:: Utc ;
4+ use chrono:: { DateTime , Utc } ;
45use datafeed_cache_shared:: datafeed:: {
56 DatafeedAtis , DatafeedController , DatafeedMilitaryRating , DatafeedPilot , DatafeedPilotRating ,
67 DatafeedServer ,
@@ -11,7 +12,6 @@ use datafeed_cache_shared::response::{
1112use serde:: Serialize ;
1213use std:: borrow:: Cow ;
1314use std:: ops:: Deref ;
14- use crate :: api:: helper;
1515
1616#[ actix_web:: get( "" ) ]
1717async fn get_datafeed ( data : ApiStateData ) -> HttpResponse {
@@ -202,6 +202,7 @@ async fn get_stats(data: ApiStateData) -> HttpResponse {
202202 len_pilots_ger : usize ,
203203 len_controllers_ger : usize ,
204204 failed : bool ,
205+ last_update : Option < DateTime < Utc > > ,
205206 }
206207
207208 let read_lock = data. shared_state . read ( ) . await ;
@@ -211,9 +212,7 @@ async fn get_stats(data: ApiStateData) -> HttpResponse {
211212 let ger_controllers = helper:: get_ger_controllers ( & status. data ) ;
212213
213214 let ( len_pilots, len_controllers) = match & status. data {
214- Some ( df) => {
215- ( df. pilots . len ( ) , df. controllers . len ( ) )
216- } ,
215+ Some ( df) => ( df. pilots . len ( ) , df. controllers . len ( ) ) ,
217216 None => ( 0 , 0 ) ,
218217 } ;
219218
@@ -223,6 +222,10 @@ async fn get_stats(data: ApiStateData) -> HttpResponse {
223222 len_pilots_ger : ger_pilots. len ( ) ,
224223 len_controllers_ger : ger_controllers. len ( ) ,
225224 failed : status. failed ,
225+ last_update : match status. data {
226+ Some ( df) => Some ( df. general . update_timestamp ) ,
227+ None => None ,
228+ } ,
226229 } )
227230}
228231
0 commit comments