Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---------------- .h -------------------
- #ifndef CONTROLLER_LOGIN_H
- #define CONTROLLER_LOGIN_H
- #include "QString"
- #include "QSqlQuery"
- #include <QtSql/QSqlDatabase>
- #include <QtSql/QSqlQueryModel>
- class Controller_login
- {
- private:
- QString usuario_S;
- QString senha_S;
- QString mensagem_S;
- int id_usuario_I;
- QSqlDatabase m_databasePost;
- public:
- Controller_login();
- ~Controller_login();
- // set
- void SetUsuario(QString _usuario_S);
- void SetSenha(QString _senha_S);
- // Get
- QString GetUsuario();
- QString GetSenha();
- QString GetMensagem();
- int GetIdUsuario();
- //metodos
- int VerificaLogin();
- int PegaIdUsuario();
- bool ConectBanco();
- };
- #endif // CONTROLLER_LOGIN_H
- ---------------- .cpp --------------------
- #include "controller_login.h"
- #include "controller_login.h"
- #include "Usuarios/class_usuarios.h"
- #include "QDebug"
- #include "QSqlError"
- #include "QSqlRecord"
- #include "Singleton/singleton.h"
- #include "Historico/class_historico.h"
- #include "include/dsmfile.h"
- Controller_login::Controller_login()
- {
- }
- Controller_login::~Controller_login()
- {
- }
- /*! \author Gustavo Bauer Machado
- \date 25/08/2011
- \brief Metodos Set
- */
- void Controller_login::SetUsuario(QString _usuario_S)
- {
- usuario_S = _usuario_S;
- }
- void Controller_login::SetSenha(QString _senha_S)
- {
- senha_S = _senha_S;
- }
- /*! \author Gustavo Bauer Machado
- \date 25/08/2011
- \brief Metodos Get
- */
- QString Controller_login::GetUsuario()
- {
- return usuario_S;
- }
- QString Controller_login::GetSenha()
- {
- return senha_S;
- }
- QString Controller_login::GetMensagem()
- {
- return mensagem_S;
- }
- int Controller_login::GetIdUsuario()
- {
- return id_usuario_I;
- }
- /*! \author Gustavo Bauer Machado
- \date 25/08/2011
- \brief Metodos Que verifica o login e senha
- */
- int Controller_login::VerificaLogin()
- {
- ConectBanco();
- int respost;
- QSqlQuery *sql_login = new QSqlQuery(m_databasePost);
- QString sql = "SELECT id_usuario, perfil_id_perfil, senha FROM usuario Where login = '"+ usuario_S+"'";
- //qDebug() << "SLQ LOGIN: " << sql;
- sql_login->prepare(sql);
- if(!sql_login->exec())
- {
- mensagem_S = "Problema ao executar SQL \n\n"+sql_login->lastError().text()+"/n/n"+sql;
- qDebug() << "Problema ao executar SQL " << sql_login->lastError().text();
- respost = 1;
- }
- else
- {
- if(!sql_login->size())
- {
- qDebug() << "LOGIN ERRADO ";
- respost = 3;
- }
- else
- {
- //QSqlRecord rec = sql_login.record();
- QString password = "";
- //int nameCol = rec.indexOf("senha");
- while (sql_login->next())
- password = sql_login->value(2).toString();
- if (senha_S == password)
- {
- id_usuario_I = PegaIdUsuario();
- qDebug() << "Senha OK ID " << id_usuario_I ;
- Singleton *p1 = Singleton::Instance();
- p1->SetIdUsuario(id_usuario_I);
- Historico *pHist = new Historico();
- pHist->setId_tipo_hist(1);
- pHist->setData(QDate::currentDate());
- pHist->setHora(QTime::currentTime());
- pHist->setId_pessoa(p1->GetIdPessoa());
- pHist->setHistorico("Logado no Sistema");
- if(!pHist->Create())
- {
- qDebug() << "Erro ao cadastrar historico "<< pHist->lastError();
- }
- else
- {
- qDebug() << "historico adicionado";
- }
- respost = 4;
- }
- else
- {
- mensagem_S = "Senha Errada " +senha_S +" = "+ password;
- qDebug() << "Senha Errada ";
- respost = 2;
- }
- }
- }
- return respost;
- }
- /*! \author Gustavo Bauer Machado
- \date 02/09/2011
- \brief Metodos Que pega o id do usuario logado
- */
- int Controller_login::PegaIdUsuario()
- {
- int id;
- QSqlQuery *sql_id_user = new QSqlQuery(m_databasePost);
- QString sql = "SELECT id_usuario, perfil_id_perfil, senha FROM usuario Where login = '"+ usuario_S+"'";
- //qDebug() << "SLQ LOGIN: " << sql;
- sql_id_user->prepare(sql);
- if(!sql_id_user->exec())
- {
- qDebug() << "Problema ao executar SQL " << sql_id_user->lastError();
- }
- else
- {
- QSqlRecord rec = sql_id_user->record();
- int nameCol = rec.indexOf("id_usuario");
- while (sql_id_user->next())
- id = sql_id_user->value(nameCol).toInt();
- }
- return id;
- }
- bool Controller_login::ConectBanco()
- {
- m_databasePost = QSqlDatabase::addDatabase("QPSQL","Postgres");
- //m_database.setHostName("192.168.0.10");
- m_databasePost.setHostName(dsmFile::GetParamValue( "config.enc", QString("config/Host")) );
- //m_database.setDatabaseName("adv");
- m_databasePost.setDatabaseName(dsmFile::GetParamValue( "config.enc", QString("config/DataBase")));
- //m_database.setUserName("adv");
- m_databasePost.setUserName(dsmFile::GetParamValue( "config.enc", QString("config/User")));
- //m_database.setPassword("advpassword");
- m_databasePost.setPassword(dsmFile::GetParamValue( "config.enc", QString("config/Password")));
- if (!m_databasePost.open())
- {
- qDebug() << QString::fromUtf8("Erro na conexão com Postgres: ") << m_databasePost.lastError().text();
- return false;
- }
- else
- {
- qDebug() << "Conectado ao Postgres";
- return true;
- }
- }
Add Comment
Please, Sign In to add comment