member_status_response.dart 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import 'package:json_annotation/json_annotation.dart';
  2. part 'member_status_response.g.dart'; // 自动生成的代码文件
  3. @JsonSerializable()
  4. class MemberStatusResponse {
  5. @JsonKey(name: 'userId')
  6. final String userId;
  7. @JsonKey(name: 'level')
  8. final int level;
  9. @JsonKey(name: 'startTimestamp')
  10. final int startTimestamp;
  11. @JsonKey(name: 'endTimestamp')
  12. final int endTimestamp;
  13. @JsonKey(name: 'serverTimestamp')
  14. final int serverTimestamp;
  15. @JsonKey(name: 'expired')
  16. final bool expired;
  17. @JsonKey(name: 'permanent')
  18. final bool permanent;
  19. @JsonKey(name: 'deviceId')
  20. final String deviceId;
  21. @JsonKey(name: 'trialed')
  22. final bool? trialed;
  23. @JsonKey(name: 'avatar')
  24. final String? avatar;
  25. @JsonKey(name: 'trialEndTimestamp')
  26. final int? trialEndTimestamp;
  27. MemberStatusResponse({
  28. required this.userId,
  29. required this.level,
  30. required this.startTimestamp,
  31. required this.endTimestamp,
  32. required this.serverTimestamp,
  33. required this.expired,
  34. required this.permanent,
  35. required this.deviceId,
  36. this.trialed,
  37. this.avatar,
  38. this.trialEndTimestamp
  39. });
  40. // 反序列化:从 JSON 到 Dart 对象
  41. factory MemberStatusResponse.fromJson(Map<String, dynamic> json) =>
  42. _$MemberStatusResponseFromJson(json);
  43. }