user_entity.dart
2.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
import 'dart:convert';
import 'package:wow_english/generated/json/base/json_field.dart';
import 'package:wow_english/generated/json/user_entity.g.dart';
@JsonSerializable()
class UserEntity {
late int id;
late String name;
/// 一定有也必须要有
String? token;
//late int expireTime;
int? age;
/// 性别:0男, 1女
int? gender;
String? avatarUrl;
late String phoneNum;
/// 用户信息是否填写 0.未填写 1.已经填写
int? fillUserInfo;
/// 当前模块Id
int? nowCourseModuleId;
/// 有效时间,VIP,为null没有
String? effectiveDate;
/// 有效天数
int? validDay;
/// 游戏权限
bool? valid;
UserEntity();
factory UserEntity.fromJson(Map<String, dynamic> json) => $UserEntityFromJson(json);
Map<String, dynamic> toJson() => $UserEntityToJson(this);
@override
String toString() {
return jsonEncode(this);
}
Map<String, dynamic> toUpdateJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['name'] = name;
data['age'] = age;
data['gender'] = gender;
data['avatarUrl'] = avatarUrl;
return data;
}
String getGenderString() {
return gender == null
? ''
: gender == 0
? '男'
: '女';
}
// 是否有游戏权限
bool hasGamePermission() {
return valid ?? false;
}
UserEntity copyWith({
int? id,
String? name,
String? token,
int? age,
int? gender,
String? avatarUrl,
String? phoneNum,
int? fillUserInfo,
int? nowCourseModuleId,
String? effectiveDate,
}) {
return UserEntity()
..id = id ?? this.id
..name = name ?? this.name
..token = token ?? this.token
..age = age ?? this.age
..gender = gender ?? this.gender
..avatarUrl = avatarUrl ?? this.avatarUrl
..phoneNum = phoneNum ?? this.phoneNum
..fillUserInfo = fillUserInfo ?? this.fillUserInfo
..nowCourseModuleId = nowCourseModuleId ?? this.nowCourseModuleId
..effectiveDate = effectiveDate ?? this.effectiveDate;
}
}