You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1007 B
39 lines
1007 B
class UserModel {
|
|
String name; // 用户名
|
|
String avatar; // 头像
|
|
String id;
|
|
//final String deviceName;
|
|
String membershipLevel; // 会员等级
|
|
|
|
UserModel({
|
|
required this.name,
|
|
required this.avatar,
|
|
required this.id,
|
|
//required this.deviceName,
|
|
required this.membershipLevel,
|
|
});
|
|
|
|
Map<String, dynamic> toJson() => {
|
|
'name': name,
|
|
'avatar': avatar,
|
|
'id': id,
|
|
//'deviceName': deviceName,
|
|
'membershipLevel': membershipLevel,
|
|
};
|
|
|
|
factory UserModel.fromJson(Map<String, dynamic> json) => UserModel(
|
|
name: json['name'] ?? '未设置昵称',
|
|
avatar: json['avatar'] ?? '',
|
|
id: json['id'] ?? '',
|
|
//deviceName: json['deviceName'] ?? '',
|
|
membershipLevel: json['membershipLevel'] ?? '普通会员',
|
|
);
|
|
|
|
factory UserModel.defaultUser() => UserModel(
|
|
name: '未设置昵称',
|
|
avatar: '',
|
|
id: 'DeepSound_${DateTime.now().millisecondsSinceEpoch.toString()}',
|
|
//deviceName: '',
|
|
membershipLevel: '普通会员',
|
|
);
|
|
}
|