class AnalyticsDevice { const AnalyticsDevice({ required this.uuid, required this.name, required this.createdAt, required this.updatedAt, required this.deviceTuyaUuid, required this.isActive, required this.productDevice, }); final String uuid; final String name; final DateTime createdAt; final DateTime updatedAt; final String deviceTuyaUuid; final bool isActive; final ProductDevice productDevice; factory AnalyticsDevice.fromJson(Map json) { return AnalyticsDevice( uuid: json['uuid'] as String? ?? '', name: json['name'] as String? ?? '', createdAt: DateTime.parse(json['createdAt'] as String? ?? ''), updatedAt: DateTime.parse(json['updatedAt'] as String? ?? ''), deviceTuyaUuid: json['deviceTuyaUuid'] as String? ?? '', isActive: json['isActive'] as bool? ?? false, productDevice: ProductDevice.fromJson( json['productDevice'] as Map? ?? {}, ), ); } } class ProductDevice { const ProductDevice({ required this.uuid, required this.createdAt, required this.updatedAt, required this.catName, required this.prodId, required this.name, required this.prodType, }); final String uuid; final DateTime createdAt; final DateTime updatedAt; final String catName; final String prodId; final String name; final String prodType; factory ProductDevice.fromJson(Map json) { return ProductDevice( uuid: json['uuid'] as String? ?? '', createdAt: DateTime.parse(json['createdAt'] as String? ?? ''), updatedAt: DateTime.parse(json['updatedAt'] as String? ?? ''), catName: json['catName'] as String? ?? '', prodId: json['prodId'] as String? ?? '', name: json['name'] as String? ?? '', prodType: json['prodType'] as String? ?? '', ); } }