gerarDasProcesso method

Future<GerarDasProcessoResponse> gerarDasProcesso({
  1. String? contribuinteNumero,
  2. required String numeroProcesso,
  3. String? contratanteNumero,
  4. String? autorPedidoDadosNumero,
})

Gerar DAS de Processo com débitos de processo em sistema de cobrança

contribuinteNumero CNPJ do contribuinte numeroProcesso Número do processo (17 dígitos) contratanteNumero CNPJ do contratante (opcional, usa dados da autenticação se não informado) autorPedidoDadosNumero CPF/CNPJ do autor do pedido (opcional, usa dados da autenticação se não informado)

Implementation

Future<GerarDasProcessoResponse> gerarDasProcesso({
  String? contribuinteNumero,
  required String numeroProcesso,
  String? contratanteNumero,
  String? autorPedidoDadosNumero,
}) async {
  final resolvedContribuinte =
      contribuinteNumero ??
      _apiClient.contribuinteNumero ??
      (throw ArgumentError('CNPJ do contribuinte é obrigatório'));
  final processoRequest = GerarDasProcessoRequest(
    numeroProcesso: numeroProcesso,
  );

  if (!processoRequest.isValid) {
    throw ArgumentError('Dados para geração do DAS de Processo inválidos');
  }

  final baseRequest = BaseRequest(
    contribuinteNumero: resolvedContribuinte,
    pedidoDados: PedidoDados(
      idSistema: 'PGDASD',
      idServico: 'GERARDASPROCESSO18',
      versaoSistema: '1.0',
      dados: processoRequest.toJson().toString(),
    ),
  );

  final response = await _apiClient.post(
    '/Emitir',
    baseRequest,
    contratanteNumero: contratanteNumero,
    autorPedidoDadosNumero: autorPedidoDadosNumero,
  );
  return GerarDasProcessoResponse.fromJson(response);
}