#include "login_widget.h"
#include "ui_login_widget.h"
#include "user_mainwindow.h"
#include "connectionpool.h"
#include <QMessageBox>
#include <QSqlQuery>
#include <QDebug>
#include <QSignalTransition>
#include <QHostAddress>
#include <QNetworkInterface>
#include <QDateTime>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
ui->label_title_2->setText("**大学毕业设计\n\n大麦场物业管理系统欢迎您!");
ui->textBrowser_deveInfo->setText("开发者信息\n\n开发者:**\n\n学 校:**大学\n\n学 号:**********");
ui->textBrowser_deveInfo->setAlignment(Qt::AlignCenter);
m_AdmwinDialog = new admin_MainWindow(0);
m_AdmwinDialog->hide();
}
Widget::~Widget()
{
delete m_AdmwinDialog;
delete ui;
}
QString Widget::getLocalmachineIP(){
/***获取IP***/
QString ipAddress;
QList<QHostAddress> ipAddressList = QNetworkInterface::allAddresses();
for(int i = 0; i < ipAddressList.size(); ++i){
if(ipAddressList.at(i) != QHostAddress::LocalHost &&
ipAddressList.at(i).toIPv4Address()){
ipAddress = ipAddressList.at(i).toString();
break;
}
}
if(ipAddress.isEmpty())
ipAddress = QHostAddress(QHostAddress::LocalHost).toString();
return ipAddress;
}
/**
* 登陆操作
* @brief Widget::on_pushButton_login_2_clicked
*/
//int count1 = 0;
//int count2 = 0;
void Widget::on_pushButton_login_2_clicked()
{
QSqlDatabase db = ConnectionPool::openConnection();
QSqlQuery query(db);
if(ui->radioButton_3->isChecked()){
if(ui->lineEdit_name_2->text().isEmpty()){
QMessageBox::warning(this,"提示",
"请输入用户名!",
QMessageBox::Ok);
}else {
//验证用户是否存在
query.exec(tr("select * from admin where aname = '%1'")
.arg(ui->lineEdit_name_2->text()));
if(query.next() && query.value(5).toString().trimmed() == "1"){
if(ui->lineEdit_pwd_2->text().isEmpty()){
QMessageBox::warning(this,"提示",
"请输入密码!",
QMessageBox::Ok);
}else {
QString pwd = query.value(2).toString().trimmed();
//验证密码是否正确
if(ui->lineEdit_pwd_2->text() == pwd){
emit admin_loginButtonClicked();
// m_AdmwinDialog->show();
// m_AdmwinDialog->receveData(/*ui->pushButton_login_2*/);
adminData *admindata = new adminData();
admindata->aid = query.value(0).toInt();
admindata->aname = query.value(1).toString().trimmed();
admindata->apassword = query.value(2).toString().trimmed();
admindata->arealname = query.value(3).toString().trimmed();
admindata->tel = query.value(4).toString().trimmed();
admindata->status = query.value(5).toString().trimmed();
ui->pushButton_login_2->setUserData(Qt::UserRole,admindata);
emit sender_loginInfo(ui->pushButton_login_2);
//获取ip
QString lastIp = Widget::getLocalmachineIP();
//获取最后登录时间
QDateTime locale(QDateTime::currentDateTime());
QString localTime = locale.toString("yyyy-MM-dd hh:mm:ss");
//判断登陆者是否存在于log表,若是,则更新数据,若否,则插入数据
query.exec(tr("select * from log where log_name = '%1'")
.arg(admindata->arealname));
if(query.next()){//存在
query.exec(tr("update log set log_counts = log_counts + 1,last_date = '%2',last_ip = '%3' where log_name = '%4'")
.arg(localTime).arg(lastIp).arg(admindata->arealname));
} else {
//不存在
query.exec(tr("insert into log (last_ip,last_date,log_name,log_counts,log_play) values('%1','%2','%3',1,'%4')")
.arg(lastIp).arg(localTime).arg(admindata->arealname).arg("管理员"));
}
//清空登录信息
ui->lineEdit_name_2->clear();
ui->lineEdit_pwd_2->clear();
//关闭登录界面
close();
} else {
QMessageBox::warning(this,"错误警告!",
"密码错误!",
QMessageBox::Ok);
ui->lineEdit_pwd_2->clear();
ui->lineEdit_pwd_2->setFocus();
}
}
} else {
query.exec(tr("select * from xiaoqu where username = '%1'")
.arg(ui->lineEdit_name_2->text()));
if(query.next()){
if(ui->lineEdit_pwd_2->text().isEmpty()){
QMessageBox::warning(this,"提示",
"请输入密码!",
QMessageBox::Ok);
} else {
QString pwd = query.value(6).toString().trimmed();
if(pwd == ui->lineEdit_pwd_2->text()){
emit admin_loginButtonClicked();
xqManagerData *xqManagerdata = new xqManagerData();
xqManagerdata->username = query.value(5).toString().trimmed();
xqManagerdata->name = query.value(2).toString().trimmed();
xqManagerdata->tel = query.value(4).toString().trimmed();
ui->pushButton_login_2->setUserData(Qt::UserRole,xqManagerdata);
emit sender_xqManagerInfo(ui->pushButton_login_2);
//获取ip
QString lastIp = Widget::getLocalmachineIP();
//获取最后登录时间
QDateTime locale(QDateTime::currentDateTime());
QString localTime = locale.toString("yyyy-MM-dd hh:mm:ss");
//更新小区负责人最后登陆时间
query.exec(tr("select *from xiaoqu where username = '%1'").arg(ui->lineEdit_name_2->text()));
if(query.next()){
query.exec(tr("update xiaoqu set op_time = '%1' where username = '%2'")
.arg(localTime).arg(ui->lineEdit_name_2->text()));
}
//判断登陆者是否存在于log表,若是,则更新数据,若否,则插入数据
query.exec(tr("select * from log where log_name = '%1'")
.arg(xqManagerdata->name));
if(query.next()){//存在
query.exec(tr("update log set log_counts = log_counts + 1,last_date = '%2',last_ip = '%3' where log_name = '%4'")
.arg(localTime).arg(lastIp).arg(xqManagerdata->name));
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
PropertyManagementSystem.7z (99个子文件)
login_widget.ui 14KB
userfamilyinfo.cpp 5KB
carinfo_user.h 775B
log_manage.ui 8KB
room_manage.h 946B
carinfo_user.cpp 4KB
complaintinfo_user.ui 9KB
export_excel.cpp 5KB
admin_mainwindow.cpp 11KB
admin_signup_dialog.cpp 3KB
kftel_dialog.cpp 885B
carmanage.ui 11KB
user_mainwindow.h 2KB
user_mainwindow.cpp 13KB
backupsql.ui 7KB
pay_manage.h 540B
userfamilyinfo.ui 10KB
xiaoqu_manage.h 426B
xqinfo_user.cpp 1KB
complaint_manage.ui 5KB
housemanage.h 720B
complaintinfo_user.h 658B
mattermange.ui 10KB
complaintinfo_user.cpp 2KB
login_widget.cpp 15KB
room_manage.cpp 7KB
changeuserpwd.cpp 3KB
pay_manage.cpp 3KB
userfamily_manage.cpp 4KB
view_chargeitems.h 577B
complaints_managebyuser.h 870B
usermanager.h 988B
SQL
wygl.sql 7KB
xqinfo_user.ui 12KB
changeuserpwd.ui 13KB
view_userlogs.h 610B
view_userlogs.ui 6KB
admin_mainwindow.ui 26KB
usermanager.cpp 12KB
complaints_managebyuser.cpp 6KB
user_signup_dialog.h 545B
user_signup_dialog.ui 32KB
main.cpp 1KB
log_manage.cpp 3KB
view_userlogs.cpp 3KB
xqinfo_user.h 321B
xiaoqu_manage.cpp 2KB
mysource.qrc 317B
backupsql.h 361B
PropertyManagementSystem.pro 3KB
connectionpool.h 2KB
complaints_managebyuser.ui 7KB
complaint_manage.cpp 4KB
kftel_dialog.ui 10KB
pay_manage.ui 5KB
pay_dialog.cpp 229B
xiaoqu_manage.ui 24KB
admin_signup_dialog.ui 16KB
carmanage.cpp 4KB
chargemanage.ui 10KB
backupsql.cpp 2KB
user_mainwindow.ui 51KB
housemanage.cpp 4KB
userfamily_manage.ui 8KB
kftel_dialog.h 321B
pay_dialog.ui 2KB
admin_signup_dialog.h 555B
login_widget.h 2KB
usermanager.ui 13KB
log_manage.h 521B
room_manage.ui 13KB
propertymanagementsystem.rc 42B
changeuserpwd.h 433B
user_signup_dialog.cpp 9KB
complaint_manage.h 739B
userfamily_manage.h 646B
images
mai.jpg 408KB
qrcode.jpg 408KB
admin_update_dialog.ui 6KB
chargemanage.h 727B
chargemanage.cpp 4KB
pay_dialog.h 305B
mattermange.h 719B
add_room.h 464B
view_chargeitems.cpp 2KB
carmanage.h 720B
add_room.cpp 2KB
userfamilyinfo.h 784B
add_room.ui 4KB
carinfo_user.ui 11KB
view_chargeitems.ui 6KB
mattermange.cpp 4KB
admin_mainwindow.h 2KB
connectionpool.cpp 6KB
admin_update_dialog.h 694B
housemanage.ui 10KB
export_excel.h 287B
config
databaseConfig.ini 130B
admin_update_dialog.cpp 2KB
共 99 条
- 1
资源评论
riiyn
- 粉丝: 4
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功