60 lines
1.5 KiB
Dart
60 lines
1.5 KiB
Dart
import '../model_parser.dart';
|
|
|
|
class GlimzoUser {
|
|
final String customerId;
|
|
final bool isTourist;
|
|
final String userLevel;
|
|
final String avator;
|
|
final String? familyName;
|
|
final String? givingName;
|
|
|
|
const GlimzoUser({
|
|
required this.customerId,
|
|
required this.isTourist,
|
|
required this.userLevel,
|
|
required this.avator,
|
|
this.familyName,
|
|
this.givingName,
|
|
});
|
|
|
|
factory GlimzoUser.fromJson(Map<String, dynamic> json) {
|
|
return GlimzoUser(
|
|
customerId: parseString(json['customer_id']),
|
|
isTourist: parseBool(json['is_tourist']),
|
|
userLevel: parseString(json['user_level']),
|
|
avator: parseString(json['avator']),
|
|
familyName: json['family_name'] as String?,
|
|
givingName: parseString(json['giving_name']),
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
'customer_id': customerId,
|
|
'is_tourist': isTourist,
|
|
'user_level': userLevel,
|
|
'avator': avator,
|
|
'family_name': familyName,
|
|
'giving_name': givingName,
|
|
};
|
|
}
|
|
|
|
GlimzoUser copyWith({
|
|
String? customerId,
|
|
bool? isTourist,
|
|
String? userLevel,
|
|
String? avator,
|
|
String? familyName,
|
|
String? givingName,
|
|
}) {
|
|
return GlimzoUser(
|
|
customerId: customerId ?? this.customerId,
|
|
isTourist: isTourist ?? this.isTourist,
|
|
userLevel: userLevel ?? this.userLevel,
|
|
avator: avator ?? this.avator,
|
|
familyName: familyName ?? this.familyName,
|
|
givingName: givingName ?? this.givingName,
|
|
);
|
|
}
|
|
}
|