fixed bug with indiware one-line ZusatzInfo
bumped version to 0.8.0-dev
This commit is contained in:
parent
9a31bf8221
commit
5114be327a
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "api"
|
||||
version = "0.7.6"
|
||||
version = "0.8.0-dev"
|
||||
edition = "2018"
|
||||
license = "AGPL-3.0-or-later"
|
||||
authors = ["Denys Konovalov <denys.konovalov@protonmail.com>"]
|
||||
|
@ -91,7 +91,7 @@ pub async fn get_timetable(_conn: DbConn, url: String) -> Vec<Timetable> {
|
||||
let empty_list = serde_json::Value::Array(vec![]);
|
||||
let empty_obj = serde_json::Value::Object(Map::new());
|
||||
let empty_vec = Vec::new();
|
||||
let info_list = xml
|
||||
let info_value = xml
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.get("VpMobil")
|
||||
@ -99,13 +99,15 @@ pub async fn get_timetable(_conn: DbConn, url: String) -> Vec<Timetable> {
|
||||
.get("ZusatzInfo")
|
||||
.unwrap_or(&empty_obj)
|
||||
.get("ZiZeile")
|
||||
.unwrap_or(&empty_list)
|
||||
.as_array()
|
||||
.unwrap_or(&empty_vec);
|
||||
.unwrap_or(&empty_list);
|
||||
let mut info = String::new();
|
||||
for item in info_list {
|
||||
info.push_str(item.as_str().unwrap_or("\r\n"));
|
||||
info.push_str("\r\n");
|
||||
if info_value.is_array() {
|
||||
for item in info_value.as_array().unwrap_or(&empty_vec) {
|
||||
info.push_str(item.as_str().unwrap_or("\r\n"));
|
||||
info.push_str("\r\n");
|
||||
}
|
||||
} else if info_value.is_string() {
|
||||
info.push_str(info_value.as_str().unwrap_or(""));
|
||||
}
|
||||
let response = TimetableData {
|
||||
count: plan.len(),
|
||||
@ -159,7 +161,7 @@ pub async fn get_class_timetable(_conn: DbConn, class: String, url: String) -> T
|
||||
let empty_list = serde_json::Value::Array(vec![]);
|
||||
let empty_obj = serde_json::Value::Object(Map::new());
|
||||
let empty_vec = Vec::new();
|
||||
let info_list = xml
|
||||
let info_value = xml
|
||||
.as_object()
|
||||
.unwrap()
|
||||
.get("VpMobil")
|
||||
@ -167,13 +169,15 @@ pub async fn get_class_timetable(_conn: DbConn, class: String, url: String) -> T
|
||||
.get("ZusatzInfo")
|
||||
.unwrap_or(&empty_obj)
|
||||
.get("ZiZeile")
|
||||
.unwrap_or(&empty_list)
|
||||
.as_array()
|
||||
.unwrap_or(&empty_vec);
|
||||
.unwrap_or(&empty_list);
|
||||
let mut info = String::new();
|
||||
for item in info_list {
|
||||
info.push_str(item.as_str().unwrap_or("\r\n"));
|
||||
info.push_str("\r\n");
|
||||
if info_value.is_array() {
|
||||
for item in info_value.as_array().unwrap_or(&empty_vec) {
|
||||
info.push_str(item.as_str().unwrap_or("\r\n"));
|
||||
info.push_str("\r\n");
|
||||
}
|
||||
} else if info_value.is_string() {
|
||||
info.push_str(info_value.as_str().unwrap_or(""));
|
||||
}
|
||||
let mut response = TimetableData {
|
||||
count: 0,
|
||||
|
Reference in New Issue
Block a user