gerarDocumentoArrecadacaoAndamento method

Future<GerarGuiaResponse> gerarDocumentoArrecadacaoAndamento({
  1. String? contribuinteNumero,
  2. required CategoriaDctf categoria,
  3. required String anoPA,
  4. String? mesPA,
  5. String? diaPA,
  6. int? cnoAfericao,
  7. String? numProcReclamatoria,
  8. List<SistemaOrigem>? idsSistemaOrigem,
  9. String? contratanteNumero,
  10. String? autorPedidoDadosNumero,
})

Gera documento de arrecadação para uma declaração EM ANDAMENTO

contribuinteNumero CPF ou CNPJ do contribuinte categoria Categoria da declaração anoPA Ano do período de apuração mesPA Mês do período de apuração - obrigatório exceto para 13º salário diaPA Dia do período de apuração - apenas para espetáculo desportivo cnoAfericao Número da obra - apenas para aferição numProcReclamatoria Número do processo - apenas para reclamatória trabalhista idsSistemaOrigem Lista de sistemas de origem das receitas

Implementation

Future<GerarGuiaResponse> gerarDocumentoArrecadacaoAndamento({
  String? contribuinteNumero,
  required CategoriaDctf categoria,
  required String anoPA,
  String? mesPA,
  String? diaPA,
  int? cnoAfericao,
  String? numProcReclamatoria,
  List<SistemaOrigem>? idsSistemaOrigem,
  String? contratanteNumero,
  String? autorPedidoDadosNumero,
}) async {
  final resolvedContribuinte =
      contribuinteNumero ??
      _apiClient.contribuinteNumero ??
      (throw ArgumentError('CPF/CNPJ do contribuinte é obrigatório'));
  final dctfRequest = DctfWebRequest(
    categoria: categoria,
    anoPA: anoPA,
    mesPA: mesPA,
    diaPA: diaPA,
    cnoAfericao: cnoAfericao,
    numProcReclamatoria: numProcReclamatoria,
    idsSistemaOrigem: idsSistemaOrigem,
  );

  final request = BaseRequest(
    contribuinteNumero: resolvedContribuinte,
    pedidoDados: PedidoDados(
      idSistema: 'DCTFWEB',
      idServico: 'GERARGUIAANDAMENTO313',
      dados: dctfRequest.toDadosJson(),
    ),
  );
  final response = await _apiClient.post(
    '/Emitir',
    request,
    contratanteNumero: contratanteNumero,
    autorPedidoDadosNumero: autorPedidoDadosNumero,
  );
  return GerarGuiaResponse.fromJson(response);
}