这是CaiYouHui前端,一个关于flutter的安卓app,前端使用flutter实现

user.dart 1.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. class User {
  2. final String id;
  3. final String email;
  4. final String name;
  5. final String? avatarUrl;
  6. final String? phone;
  7. final DateTime? createdAt;
  8. User({
  9. required this.id,
  10. required this.email,
  11. required this.name,
  12. this.avatarUrl,
  13. this.phone,
  14. this.createdAt,
  15. });
  16. factory User.fromJson(Map<String, dynamic> json) {
  17. return User(
  18. id: json['id'] ?? '',
  19. email: json['email'] ?? '',
  20. name: json['name'] ?? '',
  21. avatarUrl: json['avatar_url'],
  22. phone: json['phone'],
  23. createdAt: json['created_at'] != null
  24. ? DateTime.parse(json['created_at'])
  25. : null,
  26. );
  27. }
  28. Map<String, dynamic> toJson() {
  29. return {
  30. 'id': id,
  31. 'email': email,
  32. 'name': name,
  33. 'avatar_url': avatarUrl,
  34. 'phone': phone,
  35. 'created_at': createdAt?.toIso8601String(),
  36. };
  37. }
  38. User copyWith({
  39. String? id,
  40. String? email,
  41. String? name,
  42. String? avatarUrl,
  43. String? phone,
  44. DateTime? createdAt,
  45. }) {
  46. return User(
  47. id: id ?? this.id,
  48. email: email ?? this.email,
  49. name: name ?? this.name,
  50. avatarUrl: avatarUrl ?? this.avatarUrl,
  51. phone: phone ?? this.phone,
  52. createdAt: createdAt ?? this.createdAt,
  53. );
  54. }
  55. }