feat: dxrating payload dump

This commit is contained in:
mokurin000
2025-08-01 18:42:01 +08:00
parent 4cf7fd1ee9
commit 7b4dfbe5b2
3 changed files with 15 additions and 3 deletions

View File

@@ -15,6 +15,7 @@ pub use get_user_data_api::{GetUserDataApi, GetUserDataApiResp};
mod get_user_rating_api; mod get_user_rating_api;
pub use get_user_rating_api::dxrating::{ pub use get_user_rating_api::dxrating::{
DataVersion,
DxCalculatedEntries, // entries DxCalculatedEntries, // entries
DxLevelName, // level name DxLevelName, // level name
DxMusicRecord, DxMusicRecord,

View File

@@ -88,4 +88,6 @@ pub enum RatingFormat {
/// dxrating.net format /// dxrating.net format
DxRatingNet, DxRatingNet,
/// dxrating.net image gen payload
DxRatingPayload,
} }

View File

@@ -15,9 +15,9 @@ use sdgb_api::{
MaiVersionExt, Sdgb1_40, Sdgb1_50, MaiVersionExt, Sdgb1_40, Sdgb1_50,
methods::APIMethod, methods::APIMethod,
model::{ model::{
DxCalculatedEntries, GetUserDataApi, GetUserDataApiResp, GetUserPreviewApi, DataVersion, DxCalculatedEntries, DxRatingNet, GetUserDataApi, GetUserDataApiResp,
GetUserPreviewApiResp, GetUserRatingApi, GetUserRatingApiResp, Ping, PingResp, GetUserPreviewApi, GetUserPreviewApiResp, GetUserRatingApi, GetUserRatingApiResp, Ping,
UserLogoutApi, UserLogoutApiResp, PingResp, UserLogoutApi, UserLogoutApiResp,
}, },
}, },
}; };
@@ -95,6 +95,15 @@ async fn main() -> Result<(), Box<dyn snafu::Error>> {
records.append(&mut data.b15); records.append(&mut data.b15);
json_display(records)?; json_display(records)?;
} }
(false, RatingFormat::DxRatingPayload) => {
let data = DxCalculatedEntries::from_user_rating_lossy(&rating.user_rating);
let payload = DxRatingNet {
calculated_entries: data,
version: DataVersion::Prism,
region: "_generic",
};
json_display(payload)?;
}
} }
} }
commands::Commands::Logout { user_id, timestamp } => { commands::Commands::Logout { user_id, timestamp } => {