|
@@ -7,6 +7,7 @@ use rust_decimal::prelude::ToPrimitive;
|
|
|
use serde::{Deserialize, Serialize};
|
|
use serde::{Deserialize, Serialize};
|
|
|
use serde_json::Value;
|
|
use serde_json::Value;
|
|
|
use tracing::{info};
|
|
use tracing::{info};
|
|
|
|
|
+use crate::db_connector::get_exchanges_json;
|
|
|
use crate::msv::generate_msv;
|
|
use crate::msv::generate_msv;
|
|
|
use crate::params_utils::{get_array, get_str, parse_str_to_decimal};
|
|
use crate::params_utils::{get_array, get_str, parse_str_to_decimal};
|
|
|
use crate::symbol_filter::get_final_symbols;
|
|
use crate::symbol_filter::get_final_symbols;
|
|
@@ -89,7 +90,7 @@ async fn get_indicator(query: web::Json<Value>) -> impl Responder {
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
let json_string = serde_json::to_string(&response).unwrap();
|
|
let json_string = serde_json::to_string(&response).unwrap();
|
|
|
- return HttpResponse::BadRequest().content_type("application/json").body(json_string)
|
|
|
|
|
|
|
+ return HttpResponse::Ok().content_type("application/json").body(json_string)
|
|
|
}
|
|
}
|
|
|
Some(indicator) => {
|
|
Some(indicator) => {
|
|
|
indicator
|
|
indicator
|
|
@@ -113,11 +114,19 @@ async fn get_indicator(query: web::Json<Value>) -> impl Responder {
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
let json_string = serde_json::to_string(&response).unwrap();
|
|
let json_string = serde_json::to_string(&response).unwrap();
|
|
|
- HttpResponse::BadRequest().content_type("application/json").body(json_string)
|
|
|
|
|
|
|
+ HttpResponse::Ok().content_type("application/json").body(json_string)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+#[post("/ia/get_exchanges")]
|
|
|
|
|
+async fn get_exchanges() -> impl Responder {
|
|
|
|
|
+ let response = get_exchanges_json().await;
|
|
|
|
|
+
|
|
|
|
|
+ let json_string = serde_json::to_string(&response).unwrap();
|
|
|
|
|
+ HttpResponse::Ok().content_type("application/json").body(json_string)
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
pub fn run_server(port: u32, running: Arc<AtomicBool>) {
|
|
pub fn run_server(port: u32, running: Arc<AtomicBool>) {
|
|
|
let addr = format!("0.0.0.0:{}", port);
|
|
let addr = format!("0.0.0.0:{}", port);
|
|
|
info!("指标服务绑定地址:{}", addr);
|
|
info!("指标服务绑定地址:{}", addr);
|
|
@@ -135,6 +144,7 @@ pub fn run_server(port: u32, running: Arc<AtomicBool>) {
|
|
|
.wrap(cors)
|
|
.wrap(cors)
|
|
|
.service(get_symbols_by_filter)
|
|
.service(get_symbols_by_filter)
|
|
|
.service(get_indicator)
|
|
.service(get_indicator)
|
|
|
|
|
+ .service(get_exchanges)
|
|
|
})
|
|
})
|
|
|
.bind(addr)
|
|
.bind(addr)
|
|
|
.expect("Bind port error")
|
|
.expect("Bind port error")
|