bangumi_api/module/user/
model.rs

1use serde::{Deserialize, Serialize};
2use serde_repr::{Deserialize_repr, Serialize_repr};
3
4#[derive(Debug, Serialize, Deserialize)]
5pub struct UserPublic {
6    pub id: u32,
7    pub url: String,
8    pub username: String,
9    pub nickname: String,
10    pub user_group: UserGroup,
11    pub avatar: Avatar,
12    pub sign: String,
13}
14
15#[derive(Debug, Serialize, Deserialize)]
16pub struct User {
17    pub id: u32,
18    pub url: String,
19    pub username: String,
20    pub nickname: String,
21    pub user_group: UserGroup,
22    pub avatar: Avatar,
23    pub sign: String,
24    pub email: String,
25    pub reg_time: String,
26    pub time_offset: u32,
27}
28
29#[derive(Debug, Serialize, Deserialize)]
30pub struct Avatar {
31    pub large: String,
32    pub medium: String,
33    pub small: String,
34}
35
36#[derive(Debug, Serialize, Deserialize)]
37#[serde(rename_all = "lowercase")]
38pub enum AvatarType {
39    Small,
40    Medium,
41    Large,
42}
43
44/// 用户组
45#[repr(u8)]
46#[derive(Debug, Serialize_repr, Deserialize_repr)]
47pub enum UserGroup {
48    Admin = 1,
49    BangumiAdmin = 2,
50    DoujinAdmin = 3,
51    MutedUser = 4,
52    BlockedUser = 5,
53    WikiAdmin = 9,
54    User = 10,
55    WikiUser = 11,
56}