Agrego frontend app
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
enum EstadoHuerfana { pendiente, reubicado, resuelta }
|
||||
|
||||
class ReservaHuerfana {
|
||||
final String huerfanaId;
|
||||
final String clienteId;
|
||||
final String nombre;
|
||||
final String? apellido;
|
||||
final String? telefono;
|
||||
final String actividadNombre;
|
||||
final String fechaOriginal;
|
||||
final String horaInicioOriginal;
|
||||
final EstadoHuerfana estado;
|
||||
final String creadaEn;
|
||||
|
||||
const ReservaHuerfana({
|
||||
required this.huerfanaId,
|
||||
required this.clienteId,
|
||||
required this.nombre,
|
||||
this.apellido,
|
||||
this.telefono,
|
||||
required this.actividadNombre,
|
||||
required this.fechaOriginal,
|
||||
required this.horaInicioOriginal,
|
||||
required this.estado,
|
||||
required this.creadaEn,
|
||||
});
|
||||
|
||||
String get displayName =>
|
||||
apellido != null ? '$nombre $apellido' : nombre;
|
||||
|
||||
String get initials {
|
||||
final parts = displayName.trim().split(' ');
|
||||
if (parts.length == 1) return parts[0][0].toUpperCase();
|
||||
return '${parts[0][0]}${parts.last[0]}'.toUpperCase();
|
||||
}
|
||||
|
||||
static EstadoHuerfana _parseEstado(String s) {
|
||||
return switch (s) {
|
||||
'reubicado' => EstadoHuerfana.reubicado,
|
||||
'resuelta' => EstadoHuerfana.resuelta,
|
||||
_ => EstadoHuerfana.pendiente,
|
||||
};
|
||||
}
|
||||
|
||||
factory ReservaHuerfana.fromMap(Map<String, dynamic> m) {
|
||||
return ReservaHuerfana(
|
||||
huerfanaId: m['huerfana_id'] as String,
|
||||
clienteId: m['cliente_id'] as String,
|
||||
nombre: m['nombre'] as String,
|
||||
apellido: m['apellido'] as String?,
|
||||
telefono: m['telefono'] as String?,
|
||||
actividadNombre: m['actividad_nombre'] as String,
|
||||
fechaOriginal: m['fecha_original'] as String,
|
||||
horaInicioOriginal: m['hora_inicio_original'] as String,
|
||||
estado: _parseEstado(m['estado_resolucion'] as String? ?? 'pendiente'),
|
||||
creadaEn: m['creada_en'] as String,
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user