consultarDeclaracaoEspecifica method

Future<ConsultarDeclaracaoEspecificaResponse> consultarDeclaracaoEspecifica({
  1. String? contribuinteNumero,
  2. required String idDefis,
  3. String? contratanteNumero,
  4. String? autorPedidoDadosNumero,
})

Consulta uma declaração específica transmitida na DEFIS

contribuinteNumero CNPJ do contribuinte idDefis ID DEFIS da declaração específica contratanteNumero Número do contratante (opcional, usa dados da autenticação se não informado) autorPedidoDadosNumero Número do autor do pedido de dados (opcional, usa dados da autenticação se não informado)

Implementation

Future<ConsultarDeclaracaoEspecificaResponse> consultarDeclaracaoEspecifica({
  String? contribuinteNumero,
  required String idDefis,
  String? contratanteNumero,
  String? autorPedidoDadosNumero,
}) async {
  final resolvedContribuinte =
      contribuinteNumero ??
      _apiClient.contribuinteNumero ??
      (throw ArgumentError('CNPJ do contribuinte é obrigatório'));
  final consultaRequest = ConsultarDeclaracaoEspecificaRequest(
    idDefis: idDefis,
  );

  final request = BaseRequest(
    contribuinteNumero: resolvedContribuinte,
    pedidoDados: PedidoDados(
      idSistema: 'DEFIS',
      idServico: 'CONSDECREC144',
      versaoSistema: '1.0',
      dados: jsonEncode(consultaRequest.toJson()),
    ),
  );

  final response = await _apiClient.post(
    '/Consultar',
    request,
    contratanteNumero: contratanteNumero,
    autorPedidoDadosNumero: autorPedidoDadosNumero,
  );
  return ConsultarDeclaracaoEspecificaResponse.fromJson(response);
}