ListarApuracaoesResponse.fromJson constructor

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

Cria uma instância a partir de um mapa JSON.

Implementation

factory ListarApuracaoesResponse.fromJson(Map<String, dynamic> json) {
  final baseResponse = MitResponse.fromJson(json);

  List<ApuracaoResumo>? apuracoes;

  if (json['dados'] != null) {
    final dadosStr = json['dados'].toString();
    try {
      final dados = jsonDecode(dadosStr) as Map<String, dynamic>;

      if (dados['Apuracoes'] != null) {
        apuracoes = (dados['Apuracoes'] as List)
            .map((item) => ApuracaoResumo.fromJson(item))
            .toList();
      }
    } catch (e) {
      // Se não conseguir decodificar, mantém null
    }
  }

  return ListarApuracaoesResponse(
    status: baseResponse.status,
    responseId: baseResponse.responseId,
    responseDateTime: baseResponse.responseDateTime,
    mensagens: baseResponse.mensagens,
    apuracoes: apuracoes,
  );
}