Skip to content

Commit b525441

Browse files
JohnVandersonclaude
andcommitted
feat(rtc): adicionar método do evento 112150 em ServicosNFe
Adiciona `RecepcaoEventoAtualizacaoDaDataDePrevisaoDeEntrega` em `ServicosNFe`, completando o suporte aos 7 eventos RTC em escopo da NT 2025.002-RTC (autoria Emitente, NF-e mod.55). Os outros 6 métodos (110001, 112110, 112120, 112130, 112140, 211120) já estavam no fork via cherry-pick anterior (a04a2ee). Forma portada de ZeusAutomacao/DFe.NET@cfe8d802 adaptada ao padrão assíncrono do fork (`async Task<RetornoRecepcaoEvento>` + `await EnviarEObterRetornoRecepcaoEvento`), seguindo o mesmo template dos 6 métodos RTC irmãos. Também inclui o serviço no array `listaEventos` de `RecepcaoEventoAsync` (entrada assim como os irmãos RTC), para consistência. Zero breaking changes: adição pura de método e entrada em array; nenhuma assinatura pré-existente alterada. Ref: nfe/dfetech-product-invoice-api#8 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 2857e5d commit b525441

1 file changed

Lines changed: 40 additions & 1 deletion

File tree

NFe.Servicos/ServicosNFe.cs

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -678,7 +678,8 @@ public async Task<RetornoRecepcaoEvento> RecepcaoEventoAsync(long idlote, List<e
678678
ServicoNFe.RecepcaoEventoImportacaoEmAlcZfmNaoConvertidaEmIsencao,
679679
ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloAdquirente,
680680
ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloFornecedor,
681-
ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado
681+
ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado,
682+
ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega
682683
};
683684

684685
if (!listaEventos.Contains(servicoEvento))
@@ -2102,6 +2103,44 @@ public async Task<RetornoRecepcaoEvento> RecepcaoEventoFornecimentoNaoRealizadoC
21022103
return retornoRecepcaoEvento;
21032104
}
21042105

2106+
/// <summary>
2107+
/// Serviço destinado à recepção do evento RTC 112150 — Atualização da Data de Previsão de Entrega.
2108+
/// Previsto na NT 2025.002-RTC, autoria do Emitente, NF-e modelo 55.
2109+
/// </summary>
2110+
/// <param name="idLote">Nº do lote</param>
2111+
/// <param name="sequenciaEvento">sequencia do evento</param>
2112+
/// <param name="cpfCnpj"></param>
2113+
/// <param name="chaveNFe"></param>
2114+
/// <param name="dataPrevistaEntrega">Data da previsão de entrega ou disponibilização do bem (formato "AAAA-MM-DD")</param>
2115+
/// <param name="ufAutor"></param>
2116+
/// <param name="versaoAplicativo"></param>
2117+
/// <param name="dataHoraEvento"></param>
2118+
/// <returns></returns>
2119+
public async Task<RetornoRecepcaoEvento> RecepcaoEventoAtualizacaoDaDataDePrevisaoDeEntrega(int idLote,
2120+
int sequenciaEvento,
2121+
string cpfCnpj,
2122+
string chaveNFe,
2123+
DateTime dataPrevistaEntrega,
2124+
Estado? ufAutor = null,
2125+
string versaoAplicativo = null,
2126+
DateTimeOffset? dataHoraEvento = null)
2127+
{
2128+
const ServicoNFe servicoNfe = ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega;
2129+
const NFeTipoEvento nfeTipoEvento = NFeTipoEvento.TeNfeAtualizacaoDaDataDePrevisaoDeEntrega;
2130+
var versaoServicoRecepcao = _cFgServico.VersaoRecepcaoEventosDeApuracaoDoIbsECbs;
2131+
var versaoServicoRecepcaoString = servicoNfe.VersaoServicoParaString(versaoServicoRecepcao);
2132+
2133+
var detalhesEvento = ObterDetalhesEvento(versaoServicoRecepcaoString, versaoAplicativo, nfeTipoEvento, ufAutor, TipoAutor.taEmpresaEmitente);
2134+
detalhesEvento.dPrevEntrega = dataPrevistaEntrega;
2135+
2136+
var informacoesEventoEnv = ObterInformacoesEventoEnv(sequenciaEvento, chaveNFe, cpfCnpj, versaoServicoRecepcaoString, cOrgao: Estado.SVRS, dataHoraEvento, nfeTipoEvento, detalhesEvento);
2137+
var evento = ObterEvento(versaoServicoRecepcaoString, informacoesEventoEnv);
2138+
2139+
var retornoRecepcaoEvento = await EnviarEObterRetornoRecepcaoEvento(idLote, servicoNfe, deveAssinar: true, evento);
2140+
2141+
return retornoRecepcaoEvento;
2142+
}
2143+
21052144
private detEvento ObterDetalhesEvento(string versaoServico, string versaoAplicativo, NFeTipoEvento nfeTipoEvento, Estado? cOrgaoAutor, TipoAutor tipoAutor)
21062145
{
21072146
var detEvento = new detEvento

0 commit comments

Comments
 (0)