123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- import 'dart:convert';
- class DeviceInfoRemote {
- final int id;
- final String userId;
- final String deviceId;
- final String deviceType;
- final String notificationToken;
- final String createdAt;
- final bool isAutoBackup;
- DeviceInfoRemote({
- required this.id,
- required this.userId,
- required this.deviceId,
- required this.deviceType,
- required this.notificationToken,
- required this.createdAt,
- required this.isAutoBackup,
- });
- DeviceInfoRemote copyWith({
- int? id,
- String? userId,
- String? deviceId,
- String? deviceType,
- String? notificationToken,
- String? createdAt,
- bool? isAutoBackup,
- }) {
- return DeviceInfoRemote(
- id: id ?? this.id,
- userId: userId ?? this.userId,
- deviceId: deviceId ?? this.deviceId,
- deviceType: deviceType ?? this.deviceType,
- notificationToken: notificationToken ?? this.notificationToken,
- createdAt: createdAt ?? this.createdAt,
- isAutoBackup: isAutoBackup ?? this.isAutoBackup,
- );
- }
- Map<String, dynamic> toMap() {
- return {
- 'id': id,
- 'userId': userId,
- 'deviceId': deviceId,
- 'deviceType': deviceType,
- 'notificationToken': notificationToken,
- 'createdAt': createdAt,
- 'isAutoBackup': isAutoBackup,
- };
- }
- factory DeviceInfoRemote.fromMap(Map<String, dynamic> map) {
- return DeviceInfoRemote(
- id: map['id']?.toInt() ?? 0,
- userId: map['userId'] ?? '',
- deviceId: map['deviceId'] ?? '',
- deviceType: map['deviceType'] ?? '',
- notificationToken: map['notificationToken'] ?? '',
- createdAt: map['createdAt'] ?? '',
- isAutoBackup: map['isAutoBackup'] ?? false,
- );
- }
- String toJson() => json.encode(toMap());
- factory DeviceInfoRemote.fromJson(String source) =>
- DeviceInfoRemote.fromMap(json.decode(source));
- @override
- String toString() {
- return 'DeviceInfo(id: $id, userId: $userId, deviceId: $deviceId, deviceType: $deviceType, notificationToken: $notificationToken, createdAt: $createdAt, isAutoBackup: $isAutoBackup)';
- }
- @override
- bool operator ==(Object other) {
- if (identical(this, other)) return true;
- return other is DeviceInfoRemote &&
- other.id == id &&
- other.userId == userId &&
- other.deviceId == deviceId &&
- other.deviceType == deviceType &&
- other.notificationToken == notificationToken &&
- other.createdAt == createdAt &&
- other.isAutoBackup == isAutoBackup;
- }
- @override
- int get hashCode {
- return id.hashCode ^
- userId.hashCode ^
- deviceId.hashCode ^
- deviceType.hashCode ^
- notificationToken.hashCode ^
- createdAt.hashCode ^
- isAutoBackup.hashCode;
- }
- }
|