public bool EmitirNota(NotaFiscal notaFiscal) { notaFiscal.CalcularValorTotalNota(); bool notaEncontrada; do { notaFiscal.GerarChave(_random); notaEncontrada = _notaFiscalRepositorio.ValidarExistenciaPorChave(notaFiscal.Chave); } while (notaEncontrada); notaFiscal.Validar(); _notaFiscalRepositorio.InserirNotaFiscalEmitida(notaFiscal); var notaDeletada = this.Deletar(notaFiscal.ID); return(notaDeletada); }