not all audio file has result files
Seto Elkahfi committed
Aug 1, 2024 at 18:51 UTC
84802b6b7962c732327f4a4d9d9b9e4b9dd8f6c7
3 files changed
+29
-9
frontend/splitfire-desktop/src-tauri/src/command/player_prepare.rs
+27
-7
@@ -57,13 +57,33 @@ pub async fn player_prepare(provider_id: String) -> PreparePlayerResponse {
57
}
58
59
async fn prepare_result_files(audio_file: AudioFile) -> PreparePlayerResponse {
60
- save_result_files(&audio_file.id.to_string(), &audio_file.results).await;
61
- download_result_files(audio_file.id.to_string(), audio_file.results).await;
62
- prepare_players(audio_file.id.to_string()).await;
63
- PreparePlayerResponse {
64
- status: TauriResponse::Success,
65
- message: "Success".to_string(),
66
- audio_file_name: Some(audio_file.name),
60
+ debug!("Preparing result files: {:?}", audio_file);
61
+ match audio_file.results {
62
+ Some(results) => {
63
+ if results.is_empty() {
64
+ return PreparePlayerResponse {
65
+ status: TauriResponse::Error,
66
+ message: "No results found.".to_string(),
67
+ audio_file_name: Some(audio_file.name),
68
+ };
69
+ }
70
+ save_result_files(&audio_file.id.to_string(), &results).await;
71
+ download_result_files(audio_file.id.to_string(), results).await;
72
+ prepare_players(audio_file.id.to_string()).await;
73
+ PreparePlayerResponse {
74
+ status: TauriResponse::Success,
75
+ message: "Success".to_string(),
76
+ audio_file_name: Some(audio_file.name),
77
+ }
78
+ }
79
+ None => {
80
+ return PreparePlayerResponse {
81
+ status: TauriResponse::Error,
82
+ message: "No results found.".to_string(),
83
+ audio_file_name: Some(audio_file.name),
84
+ };
85
+ }
86
+
87
}
88
}
89
frontend/splitfire-desktop/src-tauri/src/models/content.rs
+1
-1
@@ -12,7 +12,7 @@ pub struct ContentCarouselResponse {
12
#[derive(Serialize, Deserialize)]
13
#[derive(Debug)]
14
pub struct CarouselResponse {
15
- code: i32,
15
+ pub code: i32,
16
pub message: String,
17
pub audio_files: Vec<SongProvider>,
18
}
frontend/splitfire-desktop/src-tauri/src/models/player.rs
+1
-1
@@ -39,7 +39,7 @@ pub struct AudioFile {
39
pub id: i32,
40
pub name: String,
41
pub status: Status,
42
- pub results: Vec<ResultFile>,
42
+ pub results: Option<Vec<ResultFile>>,
43
}
44
45
#[derive(Serialize, Deserialize)]