ConsultarPagamentosResponse.fromJson constructor

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

Implementation

factory ConsultarPagamentosResponse.fromJson(Map<String, dynamic> json) {
  final dados = <DocumentoArrecadacao>[];

  if (json['dados'] != null) {
    final dadosString = json['dados'].toString();
    if (dadosString.isNotEmpty) {
      try {
        final dadosList = jsonDecode(dadosString) as List<dynamic>;
        dados.addAll(
          dadosList.map(
            (item) =>
                DocumentoArrecadacao.fromJson(item as Map<String, dynamic>),
          ),
        );
      } catch (e) {
        // Se não conseguir fazer parse, deixa a lista vazia
      }
    }
  }

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