DteResponse.fromJson constructor

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

Implementation

factory DteResponse.fromJson(Map<String, dynamic> json) {
  final dadosStr = json['dados']?.toString() ?? '';
  DteDados? dadosParsed;

  try {
    if (dadosStr.isNotEmpty) {
      final dadosJson = jsonDecode(dadosStr) as Map<String, dynamic>;
      dadosParsed = DteDados.fromJson(dadosJson);
    }
  } catch (e) {
    // Se não conseguir fazer parse, mantém dadosParsed como null
  }

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