ConsultarUltimaDeclaracaoResponse.fromJson constructor

ConsultarUltimaDeclaracaoResponse.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory ConsultarUltimaDeclaracaoResponse.fromJson(
  Map<String, dynamic> json,
) {
  DeclaracaoCompleta? dadosParsed;
  try {
    final dadosStr = json['dados']?.toString() ?? '';
    if (dadosStr.isNotEmpty) {
      final dadosMap = jsonDecode(dadosStr) as Map<String, dynamic>;
      dadosParsed = DeclaracaoCompleta.fromJson(dadosMap);
    }
  } catch (e) {
    // Se não conseguir fazer parse, mantém dados como null
  }

  return ConsultarUltimaDeclaracaoResponse(
    status: int.parse(json['status'].toString()),
    mensagens: (json['mensagens'] as List)
        .map((m) => Mensagem.fromJson(m as Map<String, dynamic>))
        .toList(),
    dados: dadosParsed,
  );
}