void Consulta::LimpaTabela_Consulta(std::string data, std::string hora){ query.str( std::string() ); query.clear(); query << "DELETE FROM consulta WHERE Data<='"; query << data << "' AND Horario<='" << hora << "';"; try { executar(); }catch(ErroPersistencia &exp){ throw ErroConsulta(exp.what() + ">>Erro ao deletar consulta"); } query.str( std::string() ); query.clear(); query << "DELETE FROM consulta WHERE Data<'"; query << data<<"';"; try { executar(); }catch(ErroPersistencia &exp){ throw ErroConsulta(exp.what() + ">>Erro ao deletar consulta"); } }
void Consulta::Marcar_Consulta() { query.str( std::string() ); query.clear(); query << "INSERT INTO consulta (medico, paciente, data, horario) VALUES("; query << this->medico_CRM; query << ",'"; query << this->paciente_CPF; query << "','"; query << this->data; query << "','"; query << this->horario; query << "');"; try { executar(); }catch(ErroPersistencia &exp){ throw ErroConsulta(exp.what() + "Nao foi possivel marcar consulta"); } }
void Consulta::Buscar_TodasConsultas(std::list<Consulta> &listConsulta) { query.str( std::string() ); query.clear(); query << "SELECT Consulta.PK, Medico.Nome, Paciente.Nome, Consulta.Data, Consulta.Horario"; query << " from Medico, Paciente, Consulta "; query << "WHERE Consulta.paciente = Paciente.CPF AND Consulta.medico = Medico.CRM;"; try{ executar(); }catch(ErroPersistencia& exp){ } while(!listaResultado.empty()){ listaResultadoConsulta.push_back(listaResultado.front()); listaResultado.pop_front(); } while(!listaResultadoConsulta.empty()){ listConsulta.push_front(Monta_consulta()); } }
void Consulta::Editar_consulta(const Consulta& nova) { int PK; std::string medico, paciente, data, horario; PK = this->get_PK(); medico = this->get_medico(); paciente = this->get_paciente(); data = this->get_data(); horario = this->get_horario(); query.str( std::string() ); query.clear(); query << "UPDATE consulta SET Medico='"; query << medico << "', Paciente='"; query << paciente << "', Data='"; query << data << "', Horario='"; query << horario << "' WHERE PK="; query << PK << ";"; try { executar(); }catch(ErroPersistencia &exp){ throw ErroConsulta(exp.what() + ">>Erro ao atualizar consulta"); } }
void Consulta::Buscar_ConsultaDataHora(std::list<Consulta> &listConsulta, const std::string data, const std::string horario) { query.str( std::string() ); query.clear(); query << "SELECT Consulta.PK, Medico.Nome, Paciente.Nome, Consulta.Data, Consulta.Horario FROM Consulta, Medico, Paciente WHERE Consulta.Data='"; query << data << "' AND "; query << "horario='" << horario; query << "'AND Consulta.paciente = Paciente.CPF AND Consulta.medico = Medico.CRM;"; try{ executar(); }catch(ErroPersistencia& exp){ throw(ErroConsulta(exp.what() + ". Erro ao busca consulta")); } while(!listaResultado.empty()){ listaResultadoConsulta.push_back(listaResultado.front()); listaResultado.pop_front(); } while(!listaResultadoConsulta.empty()){ listConsulta.push_front(Monta_consulta()); } }
void Paciente::descadastrar() { query.str( std::string() ); query.clear(); query << "DELETE FROM paciente WHERE CPF = '" << m_CPF << "';"; try { executar(); } catch(ErroPersistencia &exp){ throw ErroPaciente(exp.what() + ">>Erro ao descadastrar paciente."); } }
void Paciente::DeleteTablePaciente(){ query.str( std::string()); query.clear(); query << "DELETE FROM Paciente;"; try { executar(); } catch (ErroPersistencia &exp) { throw ErroPaciente(exp.what()); } }
void Consulta::DeleteTableConsulta(){ query.str( std::string()); query.clear(); query << "DELETE FROM Consulta;"; try { executar(); } catch (ErroPersistencia &exp) { throw ErroConsulta(exp.what()); } }
void Consulta::Deletar_ConsultaPK(const int PK) { query.str( std::string() ); query.clear(); query << "DELETE FROM consulta WHERE PK='"; query << PK << "';"; try { executar(); }catch(ErroPersistencia &exp){ throw ErroConsulta(exp.what() + ">>Erro ao deletar consulta"); } }
void Consulta::Deletar_ConsultaDataHora(const std::string data, const std::string horario) { query.str( std::string() ); query.clear(); query << "DELETE FROM consulta WHERE data='"; query << data << "'" << " AND "; query << "horario='" << horario << "';"; try { executar(); }catch(ErroPersistencia &exp){ throw ErroConsulta(exp.what() + ">>Erro ao deletar consulta"); } }
void menu() { int opt = 0; do { system("clear"); printf("=== MENU ===="); printf("\n\n"); printf("1. Inserir\n"); printf("2. Imprimir\n"); printf("3. Pesquisar\n"); printf("4. Remover\n"); printf("5. Executar!!!\n"); printf("6. Sair\n"); printf("\n\n"); printf("Opcao: "); scanf("%i", &opt); system("clear"); switch(opt) { case 1: enqueue(&inicio); break; case 2: exibir(&inicio); break; case 3: pesquisar(&inicio); break; case 4: dequeue(&inicio); break; case 5: executar(&inicio); default: exit(0); break; } } while(opt < 5); }
void Consulta::Deletar_ConsultaPaciente(const std::string paciente_CPF) { query.str( std::string() ); query.clear(); query << "DELETE FROM consulta WHERE paciente='"; query << paciente_CPF << "';"; try { executar(); }catch(ErroPersistencia &exp){ throw ErroConsulta(exp.what() + ">>Erro ao deletar consulta"); } }
void Paciente::cadastrar() { query.str( std::string() ); query.clear(); query << "INSERT INTO paciente (CPF, nome, email, telefone, endereco, idade) VALUES('"; query << m_CPF << "', '"; query << m_nome << "', '"; query << m_email << "', '"; query << m_telefone << "', '"; query << m_endereco << "', '"; query << m_idade << "');"; try { executar(); } catch (ErroPersistencia &exp) { throw ErroPaciente(exp.what() + ">>Erro ao cadastrar paciente."); } }
void Jogo::menu2(){ while (!teclado.soltou[TECLA_ESC] && !aplicacao.sair) { uniIniciarFrame(); menu.desenhar2(); if (menu.jogo == 4){ break; } if (menu.jogo == 3){ manual(); } if (menu.jogo == 1){ executar(); } menu.atualizar(); uniTerminarFrame(); } }
void Paciente::atualizar(Paciente &novo) { query.str( std::string() ); query.clear(); query << "UPDATE Paciente SET nome = '" << novo.m_nome; query << "', CPF = '" << novo.m_CPF; query << "', email = '" << novo.m_email; query << "', telefone = '" << novo.m_telefone; query << "', endereco = '" << novo.m_endereco; query << "', idade = '" << novo.m_idade; query << "' WHERE CPF = '" << m_CPF; query << "';"; try { executar(); } catch(ErroPersistencia &exp){ throw ErroPaciente(exp.what() + ">>Erro ao atualizar paciente."); } }
void Paciente::buscar_Pacientes_Todos(std::list <Paciente> &listaPaciente) { query.str( std::string() ); query.clear(); query << "SELECT * from paciente"; try { executar(); } catch(ErroPersistencia& exp){ throw(ErroPaciente(exp.what() + ". Erro ao buscar todos os pacientes.")); } while ( !listaResultado.empty() ) { listaResultadoPaciente.push_back( listaResultado.front() ); listaResultado.pop_front(); } while( !listaResultadoPaciente.empty() ) { listaPaciente.push_front( Monta_Paciente() ); } }
void Paciente::buscar_Pacientes_CPF(std::list<Paciente> &listaPaciente, const std::string CPF) { query.str( std::string() ); query.clear(); query << "SELECT * from paciente WHERE CPF ='"; query << CPF << "';"; try { executar(); } catch(ErroPersistencia& exp){ throw(ErroPaciente(exp.what() + ". Erro ao buscar paciente.")); } while ( !listaResultado.empty() ) { listaResultadoPaciente.push_back( listaResultado.front() ); listaResultado.pop_front(); } while( !listaResultadoPaciente.empty() ) { listaPaciente.push_front( Monta_Paciente() ); } }
void Consulta::Buscar_ConsultaPK(std::list<Consulta> &listConsulta, const int PK) { query.str( std::string() ); query.clear(); query << "SELECT * from consulta WHERE PK="; query << PK << ";"; try{ executar(); }catch(ErroPersistencia& exp){ throw(ErroConsulta(exp.what() + ". Erro ao busca consulta")); } while(!listaResultado.empty()){ listaResultadoConsulta.push_back(listaResultado.front()); listaResultado.pop_front(); } while(!listaResultadoConsulta.empty()){ listConsulta.push_front(Monta_consulta()); } }
int main(int argc, char *argv[]) { executar(); getchar(); }