public NotaFiscal Emitir(NotaFiscal notaFiscal, Random sorteador) { notaFiscal.CalcularValoresTotais(); notaFiscal.ValidarParaEmitir(); notaFiscal.GerarChaveDeAcesso(sorteador); while (ConsultarExistenciaDeNotaEmitida(notaFiscal.ChaveAcesso)) { notaFiscal.GerarChaveDeAcesso(sorteador); } //Gerarando XML para inserção em banco string notaFiscalSerializadaParaXML = _notaFiscalRepositorioXML.Serializar(notaFiscal); long idNotaFiscalEmitida = _notaFiscalEmitidaRepositorio.Adicionar(notaFiscalSerializadaParaXML, notaFiscal.ChaveAcesso); if (idNotaFiscalEmitida != 0) { _notaFiscalRepositorio.Excluir(notaFiscal); } return(notaFiscal); }
public void NotaFiscal_Emitida_InfraData_Adicionar_Sucesso() { _repositorio.Adicionar(_notaFiscalRepositorioXML.Serializar(_notaFiscalValida), _notaFiscalValida.ChaveAcesso); }