import 'package:prosapp_web_app/models/profesional.dart'; import 'package:prosapp_web_app/models/usuario.dart'; class UsuarioProfesional { final Usuario user; final Profesional professionalInfo; final double averageScore; UsuarioProfesional({ required this.user, required this.professionalInfo, required this.averageScore, }); // Método para serializar a JSON Map toJson() { return { 'user': user.toDocument(), 'professionalInfo': professionalInfo.toDocument(), 'averageScore': averageScore, }; } factory UsuarioProfesional.fromJson(Map json) { return UsuarioProfesional( user: Usuario.fromDocument(json['user']), professionalInfo: Profesional.fromDocument(json['professionalInfo']), averageScore: (json['averageScore'] as num?)?.toDouble() ?? 0.0, ); } static UsuarioProfesional fromDocument(Map doc) { return UsuarioProfesional( user: Usuario.fromDocument(doc['user'] as Map), professionalInfo: Profesional.fromDocument(doc['professional_info'] as Map), averageScore: (doc['average_score'] as num?)?.toDouble() ?? 0.0, ); } @override String toString() { return '''UsuarioProfesional{ user: $user, professionalInfo: $professionalInfo, averageScore: $averageScore }'''; } }