chore: optimize parquet fields
This commit is contained in:
@@ -64,6 +64,20 @@ pub struct UserMusicDetail {
|
||||
|
||||
/// DX 分数
|
||||
pub deluxscore_max: i64,
|
||||
/// - D = 0,
|
||||
/// - C = 1,
|
||||
/// - B = 2,
|
||||
/// - BB = 3,
|
||||
/// - BBB = 4,
|
||||
/// - A = 5,
|
||||
/// - AA = 6,
|
||||
/// - AAA = 7,
|
||||
/// - S = 8,
|
||||
/// - S_PLUS = 9,
|
||||
/// - SS = 10,
|
||||
/// - SS_PLUS = 11,
|
||||
/// - SSS = 12,
|
||||
/// - SSS_PLUS = 13
|
||||
pub score_rank: i64,
|
||||
|
||||
/// 理论次数
|
||||
@@ -71,6 +85,21 @@ pub struct UserMusicDetail {
|
||||
pub ext_num2: i64,
|
||||
}
|
||||
|
||||
#[cfg_attr(feature = "parquet", derive(parquet_derive::ParquetRecordWriter))]
|
||||
pub struct UserMusicDetailFlatten {
|
||||
pub user_id: u32,
|
||||
pub music_id: u32,
|
||||
pub level: u8,
|
||||
pub play_count: u32,
|
||||
pub achievement: u32,
|
||||
pub combo_status: u8,
|
||||
pub sync_status: u8,
|
||||
pub deluxscore_max: u16,
|
||||
pub score_rank: u8,
|
||||
pub ext_num1: u32,
|
||||
pub ext_num2: u32,
|
||||
}
|
||||
|
||||
impl Display for UserMusicDetail {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
if let Some(music_title) = query_music(self.music_id).map(|i| &i.name) {
|
||||
@@ -119,3 +148,35 @@ impl Display for UserMusicDetail {
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
impl UserMusicDetailFlatten {
|
||||
pub fn new(
|
||||
user_id: u32,
|
||||
UserMusicDetail {
|
||||
music_id,
|
||||
level,
|
||||
play_count,
|
||||
achievement,
|
||||
combo_status,
|
||||
sync_status,
|
||||
deluxscore_max,
|
||||
score_rank,
|
||||
ext_num1,
|
||||
ext_num2,
|
||||
}: UserMusicDetail,
|
||||
) -> Self {
|
||||
Self {
|
||||
user_id,
|
||||
music_id,
|
||||
level: level as _,
|
||||
sync_status: sync_status as _,
|
||||
deluxscore_max: deluxscore_max as _,
|
||||
score_rank: score_rank as _,
|
||||
play_count: play_count as _,
|
||||
achievement: achievement as _,
|
||||
combo_status: combo_status as _,
|
||||
ext_num1: ext_num1 as _,
|
||||
ext_num2: ext_num2 as _,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,9 @@ pub use get_user_rating_api::{
|
||||
};
|
||||
|
||||
mod get_user_music_api;
|
||||
pub use get_user_music_api::{GetUserMusicApi, GetUserMusicApiResp, UserMusic, UserMusicDetail};
|
||||
pub use get_user_music_api::{
|
||||
GetUserMusicApi, GetUserMusicApiResp, UserMusic, UserMusicDetail, UserMusicDetailFlatten,
|
||||
};
|
||||
|
||||
mod get_user_region_api;
|
||||
pub use get_user_region_api::{
|
||||
|
||||
Reference in New Issue
Block a user