Skip to content
Snippets Groups Projects
Commit 472a8645 authored by mgy20's avatar mgy20
Browse files

Corrigido impressão no emprestimo

parent 81cd7fbf
Branches
No related tags found
No related merge requests found
......@@ -9,8 +9,11 @@ DescricaoObra::DescricaoObra(const string& titulo, int ano)
: titulo(titulo), anoPublicacao(ano) {}
void DescricaoObra::mostrarDetalhes() const {
cout << "Título: " << this->getTitulo() << "\n";
cout << "Ano de Publicação: " << this->getAnoPublicacao() << "\n";
string titulo = this->getTitulo();
int ano = this->getAnoPublicacao();
if (!titulo.empty()) { cout << "Título: " << titulo << "\n"; }
if (ano >= 0) { cout << "Ano de Publicação: " << ano << "\n"; }
}
// Methods
......
......@@ -23,7 +23,7 @@ Emprestimo::Emprestimo(shared_ptr<DescricaoObra> descricao)
void Emprestimo::mostraDetalhes() const {
this->descricao->mostrarDetalhes();
cout << "Data de devolução: ";
cout << "> Data de devolução: ";
cout << static_cast<unsigned>(this->dataEmprestimo.day()) << "/";
cout << static_cast<unsigned>(this->dataEmprestimo.month()) << "/";
cout << static_cast<int>(this->dataEmprestimo.year()) << endl;
......
......@@ -21,8 +21,9 @@ Livro::Livro(const string& t, int ano, const string& a, const string& e)
// Description
void Livro::mostrarDetalhes() const {
DescricaoObra::mostrarDetalhes();
cout << "Autor: " << autor << "\n";
cout << "Editora: " << editora << "\n";
if (!autor.empty()) { cout << "Autor: " << autor << "\n"; }
if (!editora.empty()) { cout << "Editora: " << editora << "\n"; }
}
// Methods
......
......@@ -2,6 +2,8 @@
#include "Periodico.hpp"
using namespace std;
// Contructor
Periodico::Periodico(const DescricaoObra& outro)
: DescricaoObra(outro.getTitulo(), outro.getAnoPublicacao())
......@@ -18,8 +20,9 @@ Periodico::Periodico(const std::string& t, int ano, int vol, int m)
void Periodico::mostrarDetalhes() const {
DescricaoObra::mostrarDetalhes();
std::cout << "Volume: " << volume << "\n";
std::cout << "Mês: " << mes << "\n";
if (volume >= 0) { cout << "Volume: " << volume << "\n"; }
if (mes >= 0) { cout << "Mês: " << mes << "\n"; }
}
// Methods
......
......@@ -186,12 +186,12 @@ int main(){
cout << "Método de busca (titulo|autor): "; cin >> tipoBusca; cin.ignore();
if (tipoBusca == "titulo"){
cout << "Entre com o titulo: "; getline(cin, titulo);
dadosObra = contObras.pesquisarObraTitulo(make_shared<Livro>(titulo, 0, "dummy", "dummy"));
dadosObra = contObras.pesquisarObraTitulo(make_shared<Livro>(titulo, -1, "", ""));
cout << "Quantidade Total: " << dadosObra.first << endl;
cout << "Quantidade Disponivel: " << dadosObra.second << endl;
} else if (tipoBusca == "autor"){
cout << "Entre com o autor: "; getline(cin, autor);
dadosObra = contObras.pesquisarObraAutor(make_shared<Livro>("dummy", 0, autor, "dummy"));
dadosObra = contObras.pesquisarObraAutor(make_shared<Livro>("", -1, autor, ""));
cout << "Quantidade Total: " << dadosObra.first << endl;
cout << "Quantidade Disponivel: " << dadosObra.second << endl;
} else { cerr << "> Erro: Tipo não reconhecido! ignorando operacao" << endl; }
......@@ -201,7 +201,7 @@ int main(){
case BORROWWORK:
cout << "Entre com o CPF do usuário: "; cin >> userCPF; cin.ignore();
cout << "Entre com o titulo: "; getline(cin, titulo);
dataDevolucao = contUsuarios.registrarEmprestimo(userCPF, make_shared<Periodico>(titulo, 0, 0, 0));
dataDevolucao = contUsuarios.registrarEmprestimo(userCPF, make_shared<Periodico>(titulo, -1, -1, -1));
if ( dataDevolucao == epoch) {
cerr << "> Erro: Falha ao realizar um emprestimo!" << endl;
} else {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment