#include "mainwindow.h"#include "ui_mainwindow.h"int mTimeout= 500;MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow){ui->setupUi(this);//setWindowFlags(Qt::FramelessWindowHint);ui->stackedWidget_Main->setCurrentIndex(0);initAddEventFilte();initWidget();initdb();}MainWindow::~MainWindow(){delete ui;}void MainWindow::paintEvent(QPaintEvent *)//背景{QPixmap pix(":/images/back.jpg");QPainter painter(this);int w = width();int h = height();painter.drawPixmap(0,0,w,h,pix);}void MainWindow::on_pushButton_LoginOk_clicked()//登录{QString user;bool res;user=ui->lineEdit_Name->text().trimmed();if(user.isEmpty()){QMessageBox::warning(this,tr("提示"),tr("用户名为空"),QMessageBox::Ok);return;}if(mLineEditText.isEmpty()){QMessageBox::warning(this,tr("提示"),tr("密码为空"),QMessageBox::Ok);return;}res=this->myDb->UserCheck(this->myDb->sqlite_db,user,mLineEditText);if(res){ui->stackedWidget_Main->setCurrentIndex(1);initSysToolButton();ui->stackedWidget_Main->setCurrentIndex(5);ui->toolButton_TiTle_Manage->setText("人员管理");ui->stackedWidget_Manage->setCurrentIndex(0);ReadUser_picture();ui->radioButton_PerM_In->setChecked(Qt::Checked);ui->dateEdit_PerM_Date->setDate(QDate::currentDate());tableWidget_Section_Show();mLastCharCount=0;mLineEditText="";on_pushButton_PerM_Search_clicked();}else{QMessageBox::warning(this,tr("提示"),tr("用户名或密码错误"),QMessageBox::Ok);}}void MainWindow::on_toolButton_QuitM_clicked()//返回{ui->stackedWidget_Main->setCurrentIndex(0);mLastCharCount=0;mLineEditText="";ui->lineEdit_Name->clear();ui->lineEdit_Pass->clear();}void MainWindow::initAddEventFilte(){ui->toolButton_PersonM->installEventFilter(this);//ui->toolButton_BoxM->installEventFilter(this);//ui->toolButton_SectionM->installEventFilter(this);//ui->toolButton_NetM->installEventFilter(this);//ui->toolButton_NetPersonM->installEventFilter(this);//ui->toolButton_SysPersonM->installEventFilter(this);//ui->toolButton_TurnM->installEventFilter(this);//ui->toolButton_SqliteM->installEventFilter(this);////QRegExp double_rx1000("^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}[0-9Xx]$");//QRegExp double_rx1000("[0-9]+$");// QRegExp double_rx1000("/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}(\d|[xX])$/");//QRegExp double_rx1000("^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$");//QRegExp double_rx1000("/^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/");//QRegExp double_rx1000("^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]");// ui->lineEdit_PerM_Ic->setValidator(new QRegExpValidator(double_rx1000, ui->lineEdit_PerM_Ic));//ui->lineEdit_Pass->setEchoMode(QLineEdit::PasswordEchoOnEdit);//ui->lineEdit_Pass->setStyleSheet("lineedit-password-character:42");mLastCharCount=0;mLineEditText="";QShortcut *Space = new QShortcut(Qt::Key_Tab,this);QShortcut *Space_Enter = new QShortcut(Qt::Key_Enter,this);connect(Space,SIGNAL(activated()),this,SLOT(on_Enter_triggered())); //回车键connect(Space_Enter,SIGNAL(activated()),this,SLOT(on_Enter_triggered())); //回车键ui->lineEdit_NetPerM_Pass->setEchoMode(QLineEdit::Password);ui->lineEdit_SysPerM_Pass->setEchoMode(QLineEdit::Password);}void MainWindow::initWidget(){ui->tableWidget_PerM->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_PerM->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_BoxM->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_BoxM->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_SectionM->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_SectionM->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_NetM->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_NetM->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_NetPerM->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_NetPerM->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_SysPerM->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_SysPerM->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_TurnM_Person->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_TurnM_Person->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_TurnM_Box->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_TurnM_Box->setEditTriggers(QAbstractItemView::NoEditTriggers);ui->tableWidget_TurnM_Info->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget_TurnM_Info->setEditTriggers(QAbstractItemView::NoEditTriggers);}void MainWindow::initdb(){this->myDb = new datebase("one");this->myDb->databaseinit(this->myDb->sqlite_db,"passing_manager.db");// sqlite_sys_db = QSqlDatabase::addDatabase("QSQLITE","two");sqlite_sys_db= new QSqlDatabase(QSqlDatabase::addDatabase("QSQLITE","two"));sqlite_linux_db = new QSqlDatabase(QSqlDatabase::addDatabase("QSQLITE","three"));}void MainWindow::initSysToolButton(){ui->toolButton_PersonM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_BoxM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_SectionM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_NetM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_NetPersonM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_SysPersonM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TurnM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_SqliteM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_QuitM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));}bool MainWindow::eventFilter(QObject *obj, QEvent *event){if (obj == ui->toolButton_PersonM)//人员管理{if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_PersonM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("人员管理");ui->stackedWidget_Manage->setCurrentIndex(0);ReadUser_picture();//人员信息图片更新tableWidget_Section_Show();//部门信息更新ui->lineEdit_PerM_SNo->clear();//编号清空ui->lineEdit_PerM_SName->clear();//姓名清空tableWidget_Person_Show("","");return true;} else {return false;}}else if (obj == ui->toolButton_BoxM)//款箱管理{if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_BoxM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("款箱管理");ui->stackedWidget_Manage->setCurrentIndex(1);getNetInfo();//网点信息ui->lineEdit_BoxM_SNo->clear();on_pushButton_BoxM_Search_clicked();return true;} else {return false;}}else if(obj == ui->toolButton_SectionM){//部门管理if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_SectionM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("部门管理");ui->stackedWidget_Manage->setCurrentIndex(2);tableWidget_Section_Show();return true;}else{return false;}}else if(obj == ui->toolButton_NetM){if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_NetM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("网点管理");ui->stackedWidget_Manage->setCurrentIndex(3);ui->lineEdit_NetM_IdS->clear();ui->lineEdit_NetM_Net->clear();tableWidget_Net_Show("","");return true;}else{return false;}}else if(obj == ui->toolButton_NetPersonM){if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_NetPersonM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("网点用户管理");ui->stackedWidget_Manage->setCurrentIndex(4);getNetInfo();tableWidget_NetPerM_Show("");return true;}else{return false;}}else if(obj == ui->toolButton_SysPersonM){if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_SysPersonM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("系统用户管理");ui->stackedWidget_Manage->setCurrentIndex(5);tableWidget_User_Show();return true;}else{return false;}}else if(obj == ui->toolButton_TurnM){if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_TurnM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("交接信息查询");ui->lineEdit_File->clear();ui->dateEdit_TurnM_Begin->setDate(QDate::currentDate().addDays(-1));ui->dateEdit_TurnM_End->setDate(QDate::currentDate());ui->stackedWidget_Manage->setCurrentIndex(6);return true;}else{return false;}}else if(obj == ui->toolButton_SqliteM){if (event->type() == QEvent::MouseButtonPress){initSysToolButton();ui->toolButton_SqliteM->setStyleSheet(tr("QToolButton{border-image: url(:/images/button2.png);color:white;} QToolButton:hover:!pressed{border-image:url(:/images/button_hover.png);} color:white;"));ui->toolButton_TiTle_Manage->setText("网点数据库导出");ui->stackedWidget_Manage->setCurrentIndex(7);getNetInfo();return true;}else{return false;}}else{return MainWindow::eventFilter(obj, event);}}void MainWindow::closeEvent( QCloseEvent * event ){//this->myDb->sqlite_db.close();QString name;{name = this->myDb->sqlite_db->connectionName();}//超出作用域,隐含对象QSqlDatabase::database()被删除。QSqlDatabase::removeDatabase(name);if(this->myDb->sqlite_db->isOpen()){this->myDb->sqlite_db->close();}if(sqlite_sys_db->isOpen()){sqlite_sys_db->close();}//QSqlDatabase::removeDatabase(name);event->accept();}void MainWindow::ReadUser_picture(){QImageReader reader;reader.setFileName(":/images/Title.png");QSize imagesize = reader.size();imagesize.scale(size(),Qt::KeepAspectRatio);reader.setScaledSize(imagesize);QImage image =reader.read();QPixmap img= QPixmap::fromImage(image);ui->label_PerM_Pic->setPixmap(img);ui->label_PerM_Pic->setScaledContents(true);localFile.clear();ui->dateEdit_PerM_Date->setDate(QDate::currentDate());ui->radioButton_PerM_In->setChecked(Qt::Checked);}QString MainWindow::getPerMStatus(){QString str;str="";if(ui->radioButton_PerM_In->isChecked()){str=ui->radioButton_PerM_In->text();}else if(ui->radioButton_PerM_Stop->isChecked()){str=ui->radioButton_PerM_Stop->text();}else if(ui->radioButton_PerM_Out->isChecked()){str=ui->radioButton_PerM_Out->text();}qDebug()<<"MainWindow::getPerMStatus"<<str;return str;}void MainWindow::on_pushButton_PerM_UpPic_clicked()//上传照片{QImageReader reader;localFile = QFileDialog::getOpenFileName(this,"Open File", QDir::currentPath(),tr("JPEG(*.jpg);;PNG(*.png);;ALL FILE(*)"));if(localFile.length()==0){return;}else{reader.setFileName(localFile);}QSize imagesize = reader.size();imagesize.scale(size(),Qt::KeepAspectRatio);reader.setScaledSize(imagesize);QImage image =reader.read();QPixmap img= QPixmap::fromImage(image).scaled(ui->label_PerM_Pic->size());ui->label_PerM_Pic->setPixmap(img);ui->label_PerM_Pic->setScaledContents(true);}void MainWindow::tableWidget_Person_Show(QString P_Sn,QString Name)//人员显示{ui->tableWidget_PerM->clear();int ret,car_num;QString pass_str="%"+P_Sn+"%";QString name_str="%"+Name+"%";;QSqlQuery query(*this->myDb->sqlite_db),select_person(*this->myDb->sqlite_db);query.clear();query.prepare(QObject::tr("select count(*) from Person where Pass_No like '%1' and Name like '%2'").arg(pass_str).arg(name_str));query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}ui->tableWidget_PerM->setRowCount(car_num);ui->tableWidget_PerM->setColumnCount(4);QStringList headers;headers<<QString("编号")<<QString("姓名")<<QString("部门")<<QString("状态");ui->tableWidget_PerM->setHorizontalHeaderLabels(headers);ui->tableWidget_PerM->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_PerM->setColumnWidth(0,100);ui->tableWidget_PerM->setColumnWidth(1,100);ui->tableWidget_PerM->setColumnWidth(2,100);ui->tableWidget_PerM->setColumnWidth(3,100);QString pass,name,post,statu;select_person.exec(tr("select Pass_No,Name,Post,Status from Person where Pass_No like '%1' and Name like '%2' order by Id asc").arg(pass_str).arg(name_str));for(int i=0;select_person.next();i++){pass=select_person.value(0).toString();name=select_person.value(1).toString();post=select_person.value(2).toString();statu=select_person.value(3).toString();QTableWidgetItem *t_test = new QTableWidgetItem(pass);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(name);t_test2->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test3 = new QTableWidgetItem(post);t_test3->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test4 = new QTableWidgetItem(statu);t_test4->setTextAlignment(Qt::AlignCenter);ui->tableWidget_PerM->setItem(i,0,t_test);ui->tableWidget_PerM->setItem(i,1,t_test2);ui->tableWidget_PerM->setItem(i,2,t_test3);ui->tableWidget_PerM->setItem(i,3,t_test4);}select_person.clear();}void MainWindow::tableWidget_BoxM_Show(QString P_Sn,QString Name)//钱箱显示{ui->tableWidget_BoxM->clear();int ret,car_num;QString pass_str="%"+P_Sn+"%";QString name_str="%"+Name+"%";;QSqlQuery query(*this->myDb->sqlite_db),select_person(*this->myDb->sqlite_db);query.clear();query.prepare(QObject::tr("select count(*) from FeeBox where Pass_No like '%1' and Net_Address like '%2'").arg(pass_str).arg(name_str));query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}ui->tableWidget_BoxM->setRowCount(car_num);ui->tableWidget_BoxM->setColumnCount(3);QStringList headers;headers<<QString("ID")<<QString("编号")<<QString("所属网点");ui->tableWidget_BoxM->setHorizontalHeaderLabels(headers);ui->tableWidget_BoxM->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_BoxM->setColumnWidth(0,0);ui->tableWidget_BoxM->setColumnWidth(1,100);ui->tableWidget_BoxM->setColumnWidth(2,100);QString pass,name,post;select_person.exec(tr("select Id,Pass_No,Net_Address from FeeBox where Pass_No like '%1' and Net_Address like '%2' order by Id asc").arg(pass_str).arg(name_str));for(int i=0;select_person.next();i++){pass=select_person.value(0).toString();name=select_person.value(1).toString();post=select_person.value(2).toString();QTableWidgetItem *t_test = new QTableWidgetItem(pass);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(name);t_test2->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test3 = new QTableWidgetItem(post);t_test3->setTextAlignment(Qt::AlignCenter);ui->tableWidget_BoxM->setItem(i,0,t_test);ui->tableWidget_BoxM->setItem(i,1,t_test2);ui->tableWidget_BoxM->setItem(i,2,t_test3);}select_person.clear();}void MainWindow::tableWidget_Net_Show(QString P_Sn,QString Name)//网点显示{ui->tableWidget_NetM->clear();int ret,car_num;QString pass_str="%"+P_Sn+"%";QString name_str="%"+Name+"%";QString count_str;count_str=QObject::tr("select count(*) from NetInfo where Pass_No like '%1' and NetName like '%2'").arg(pass_str.trimmed()).arg(name_str.trimmed());QSqlQuery query(*this->myDb->sqlite_db),select_person(*this->myDb->sqlite_db);query.clear();query.prepare(count_str);query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}qDebug()<<"tableWidget_Net_Show"<<count_str<<car_num;ui->tableWidget_NetM->setRowCount(car_num);ui->tableWidget_NetM->setColumnCount(5);QStringList headers;headers<<QString("ID号")<<QString("编号")<<QString("网点名称")<<QString("地址")<<QString("电话");ui->tableWidget_NetM->setHorizontalHeaderLabels(headers);ui->tableWidget_NetM->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_NetM->setColumnWidth(0,0);ui->tableWidget_NetM->setColumnWidth(1,100);ui->tableWidget_NetM->setColumnWidth(2,100);ui->tableWidget_NetM->setColumnWidth(3,100);ui->tableWidget_NetM->setColumnWidth(4,100);QString id,pass,name,post,statu;select_person.exec(tr("select Id,Pass_No,NetName,Address,Phone from NetInfo where Pass_No like '%1' and NetName like '%2' order by Id asc").arg(pass_str.trimmed()).arg(name_str.trimmed()));for(int i=0;select_person.next();i++){id=select_person.value(0).toString();pass=select_person.value(1).toString();name=select_person.value(2).toString();post=select_person.value(3).toString();statu=select_person.value(4).toString();QTableWidgetItem *t_test = new QTableWidgetItem(id);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test1 = new QTableWidgetItem(pass);t_test1->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(name);t_test2->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test3 = new QTableWidgetItem(post);t_test3->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test4 = new QTableWidgetItem(statu);t_test4->setTextAlignment(Qt::AlignCenter);ui->tableWidget_NetM->setItem(i,0,t_test);ui->tableWidget_NetM->setItem(i,1,t_test1);ui->tableWidget_NetM->setItem(i,2,t_test2);ui->tableWidget_NetM->setItem(i,3,t_test3);ui->tableWidget_NetM->setItem(i,4,t_test4);}select_person.clear();}void MainWindow::tableWidget_NetPerM_Show(QString Net_Name)//网点用户显示{ui->tableWidget_NetPerM->clear();int ret,car_num;QString count_str;QString net_info="%"+Net_Name+"%";count_str=QObject::tr("select count(*) from NetPerson where Net_Address like '%1'").arg(net_info.trimmed());QSqlQuery query(*this->myDb->sqlite_db),select_person(*this->myDb->sqlite_db);query.clear();query.prepare(count_str);query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}qDebug()<<"tableWidget_Net_Show"<<count_str<<car_num;ui->tableWidget_NetPerM->setRowCount(car_num);ui->tableWidget_NetPerM->setColumnCount(4);QStringList headers;headers<<QString("ID号")<<QString("网点名称")<<QString("用户名")<<QString("用户类型");ui->tableWidget_NetPerM->setHorizontalHeaderLabels(headers);ui->tableWidget_NetPerM->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_NetPerM->setColumnWidth(0,0);ui->tableWidget_NetPerM->setColumnWidth(1,100);ui->tableWidget_NetPerM->setColumnWidth(2,100);ui->tableWidget_NetPerM->setColumnWidth(3,100);QString id,pass,name,flag;select_person.exec(tr("select Id,Net_Address,User,Flag from NetPerson where Net_Address like '%1' order by Id asc").arg(net_info.trimmed()));for(int i=0;select_person.next();i++){id=select_person.value(0).toString();pass=select_person.value(1).toString();name=select_person.value(2).toString();flag=select_person.value(3).toString();QTableWidgetItem *t_test = new QTableWidgetItem(id);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test1 = new QTableWidgetItem(pass);t_test1->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(name);t_test2->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test3 = new QTableWidgetItem(flag);t_test3->setTextAlignment(Qt::AlignCenter);ui->tableWidget_NetPerM->setItem(i,0,t_test);ui->tableWidget_NetPerM->setItem(i,1,t_test1);ui->tableWidget_NetPerM->setItem(i,2,t_test2);ui->tableWidget_NetPerM->setItem(i,3,t_test3);}select_person.clear();}void MainWindow::getNetInfo(){QSqlQuery select_person(*this->myDb->sqlite_db);QString name;QStringList strList;ui->comboBox_BoxM_Net->clear();ui->comboBox_BoxM_SName->clear();ui->comboBox_NetPerM_SNet->clear();ui->comboBox_NetPerM->clear();ui->comboBox_SqliteM->clear();select_person.exec(tr("select NetName from NetInfo order by Id asc"));for(int i=0;select_person.next();i++){name=select_person.value(0).toString();strList<<name;}select_person.clear();ui->comboBox_BoxM_Net->addItems(strList);ui->comboBox_BoxM_SName->addItems(strList);ui->comboBox_NetPerM_SNet->addItems(strList);ui->comboBox_NetPerM->addItems(strList);ui->comboBox_SqliteM->addItems(strList);}void MainWindow::tableWidget_Section_Show()//部门显示{ui->tableWidget_SectionM->clear();int ret,car_num;QSqlQuery query(*this->myDb->sqlite_db),select_person(*this->myDb->sqlite_db);query.clear();query.prepare(QObject::tr("select count(*) from Section "));query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}ui->tableWidget_SectionM->setRowCount(car_num);ui->tableWidget_SectionM->setColumnCount(2);QStringList headers;headers<<QString("编号")<<QString("部门");ui->tableWidget_SectionM->setHorizontalHeaderLabels(headers);ui->tableWidget_SectionM->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_SectionM->setColumnWidth(0,0);ui->tableWidget_SectionM->setColumnWidth(1,200);QString pass,ID;QStringList strList;ui->comboBox_PerM_Section->clear();select_person.exec(tr("select Id,Name from Section order by Id asc"));for(int i=0;select_person.next();i++){ID=select_person.value(0).toString();pass=select_person.value(1).toString();QTableWidgetItem *t_test = new QTableWidgetItem(ID);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(pass);t_test2->setTextAlignment(Qt::AlignCenter);ui->tableWidget_SectionM->setItem(i,0,t_test);ui->tableWidget_SectionM->setItem(i,1,t_test2);strList<<pass;}select_person.clear();ui->comboBox_PerM_Section->addItems(strList);}void MainWindow::tableWidget_User_Show()//用户显示{ui->tableWidget_SysPerM->clear();int ret,car_num;QSqlQuery query(*this->myDb->sqlite_db),select_person(*this->myDb->sqlite_db);query.clear();query.prepare(QObject::tr("select count(*) from UserSys "));query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}ui->tableWidget_SysPerM->setRowCount(car_num);ui->tableWidget_SysPerM->setColumnCount(2);QStringList headers;headers<<QString("编号")<<QString("用户");ui->tableWidget_SysPerM->setHorizontalHeaderLabels(headers);ui->tableWidget_SysPerM->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_SysPerM->setColumnWidth(0,0);ui->tableWidget_SysPerM->setColumnWidth(1,200);QString pass,ID;ui->comboBox_PerM_Section->clear();select_person.exec(tr("select Id,User from UserSys order by Id asc"));for(int i=0;select_person.next();i++){ID=select_person.value(0).toString();pass=select_person.value(1).toString();QTableWidgetItem *t_test = new QTableWidgetItem(ID);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(pass);t_test2->setTextAlignment(Qt::AlignCenter);ui->tableWidget_SysPerM->setItem(i,0,t_test);ui->tableWidget_SysPerM->setItem(i,1,t_test2);}select_person.clear();}void MainWindow::tableWidget_TurnM_Person_Show(QString id)//+用户显示{ui->tableWidget_TurnM_Person->clear();int ret,car_num;QSqlQuery query(*sqlite_sys_db),select_person(*sqlite_sys_db);query.clear();query.prepare(QObject::tr("select count(*) from PersonRecord where Id='%1'").arg(id));query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}ui->tableWidget_TurnM_Person->setRowCount(car_num);ui->tableWidget_TurnM_Person->setColumnCount(5);QStringList headers;headers<<QString("ID")<<QString("编号")<<QString("姓名")<<QString("部门")<<QString("职务");ui->tableWidget_TurnM_Person->setHorizontalHeaderLabels(headers);ui->tableWidget_TurnM_Person->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_TurnM_Person->setColumnWidth(0,0);ui->tableWidget_TurnM_Person->setColumnWidth(1,60);ui->tableWidget_TurnM_Person->setColumnWidth(2,60);ui->tableWidget_TurnM_Person->setColumnWidth(3,60);ui->tableWidget_TurnM_Person->setColumnWidth(4,60);QString pass,ID,name,section,post;ui->comboBox_PerM_Section->clear();select_person.exec(tr("select Card_Sn,Pass_No,Name,Section,Post from PersonRecord where Id='%1' order by No asc").arg(id));for(int i=0;select_person.next();i++){ID=select_person.value(0).toString();pass=select_person.value(1).toString();name=select_person.value(2).toString();section=select_person.value(3).toString();post=select_person.value(4).toString();QTableWidgetItem *t_test = new QTableWidgetItem(ID);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test1 = new QTableWidgetItem(pass);t_test1->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(name);t_test2->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test3 = new QTableWidgetItem(section);t_test3->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test4 = new QTableWidgetItem(post);t_test4->setTextAlignment(Qt::AlignCenter);ui->tableWidget_TurnM_Person->setItem(i,0,t_test);ui->tableWidget_TurnM_Person->setItem(i,1,t_test1);ui->tableWidget_TurnM_Person->setItem(i,2,t_test2);ui->tableWidget_TurnM_Person->setItem(i,3,t_test3);ui->tableWidget_TurnM_Person->setItem(i,4,t_test4);}select_person.clear();}void MainWindow::tableWidget_TurnM_Box_Show(QString id)//+钱箱显示{ui->tableWidget_TurnM_Box->clear();int ret,car_num;QSqlQuery query(*sqlite_sys_db),select_person(*sqlite_sys_db);query.clear();query.prepare(QObject::tr("select count(*) from BoxRecord where Id='%1'").arg(id));query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();query.clear();}else{car_num=0;}ui->tableWidget_TurnM_Box->setRowCount(car_num);ui->tableWidget_TurnM_Box->setColumnCount(3);QStringList headers;headers<<QString("ID")<<QString("编号")<<QString("所属网点");ui->tableWidget_TurnM_Box->setHorizontalHeaderLabels(headers);ui->tableWidget_TurnM_Box->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_TurnM_Box->setColumnWidth(0,0);ui->tableWidget_TurnM_Box->setColumnWidth(1,60);ui->tableWidget_TurnM_Box->setColumnWidth(2,60);QString pass,ID,name;ui->comboBox_PerM_Section->clear();select_person.exec(tr("select Card_Sn,Pass_No,Net_Address from BoxRecord where Id='%1' order by No asc").arg(id));for(int i=0;select_person.next();i++){ID=select_person.value(0).toString();pass=select_person.value(1).toString();name=select_person.value(2).toString();QTableWidgetItem *t_test = new QTableWidgetItem(ID);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test1 = new QTableWidgetItem(pass);t_test1->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(name);t_test2->setTextAlignment(Qt::AlignCenter);ui->tableWidget_TurnM_Box->setItem(i,0,t_test);ui->tableWidget_TurnM_Box->setItem(i,1,t_test1);ui->tableWidget_TurnM_Box->setItem(i,2,t_test2);}select_person.clear();}void MainWindow::tableWidget_TurnM_Info_Show(int flag)//+交接显示{ui->tableWidget_TurnM_Info->clear();int ret,car_num;QString strcout,str;if(flag==1){strcout=QObject::tr("select count(*) from ClassRecord limit 100");str=QObject::tr("select Id,Flag,Main_Turn,Common_Turn,Net_Address,Create_Time from ClassRecord order by Id asc limit 100");}else{QString beginDate,EndDate;beginDate=ui->dateEdit_TurnM_Begin->dateTime().toString("yyyy-MM-dd hh:mm:ss");EndDate=ui->dateEdit_TurnM_End->dateTime().toString("yyyy-MM-dd hh:mm:ss");strcout=QObject::tr("select count(*) from ClassRecord where Create_Time between '%1' and '%2'").arg(beginDate).arg(EndDate);str=QObject::tr("select Id,Flag,Main_Turn,Common_Turn,Net_Address,Create_Time from ClassRecord where Create_Time between '%1' and '%2' order by Id asc").arg(beginDate).arg(EndDate);}QSqlQuery query(*sqlite_sys_db),select_person(*sqlite_sys_db);query.clear();query.prepare(strcout);query.exec();ret = query.next();if(ret==1){car_num=query.value(0).toInt();if(flag==1 && car_num > 100){car_num=100;}query.clear();}else{car_num=0;}ui->tableWidget_TurnM_Info->setRowCount(car_num);ui->tableWidget_TurnM_Info->setColumnCount(6);QStringList headers;headers<<QString("ID")<<QString("收发状态")<<QString("主交接人")<<QString("副交接人")<<QString("交接网点")<<QString("交接时间");ui->tableWidget_TurnM_Info->setHorizontalHeaderLabels(headers);ui->tableWidget_TurnM_Info->horizontalHeader()->setStretchLastSection(true); //这个是关键ui->tableWidget_TurnM_Info->setColumnWidth(0,0);ui->tableWidget_TurnM_Info->setColumnWidth(1,60);ui->tableWidget_TurnM_Info->setColumnWidth(2,60);ui->tableWidget_TurnM_Info->setColumnWidth(3,60);ui->tableWidget_TurnM_Info->setColumnWidth(4,60);ui->tableWidget_TurnM_Info->setColumnWidth(5,60);QString Tflag,ID,mTurn,comTurn,address,time;ui->comboBox_PerM_Section->clear();select_person.exec(str);for(int i=0;select_person.next();i++){ID=select_person.value(0).toString();Tflag=select_person.value(1).toString();mTurn=select_person.value(2).toString();comTurn=select_person.value(3).toString();address=select_person.value(4).toString();time=select_person.value(5).toString();QTableWidgetItem *t_test = new QTableWidgetItem(ID);t_test->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test1 = new QTableWidgetItem(Tflag);t_test1->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test2 = new QTableWidgetItem(mTurn);t_test2->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test3 = new QTableWidgetItem(comTurn);t_test3->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test4 = new QTableWidgetItem(address);t_test4->setTextAlignment(Qt::AlignCenter);QTableWidgetItem *t_test5 = new QTableWidgetItem(time);t_test5->setTextAlignment(Qt::AlignCenter);ui->tableWidget_TurnM_Info->setItem(i,0,t_test);ui->tableWidget_TurnM_Info->setItem(i,1,t_test1);ui->tableWidget_TurnM_Info->setItem(i,2,t_test2);ui->tableWidget_TurnM_Info->setItem(i,3,t_test3);ui->tableWidget_TurnM_Info->setItem(i,4,t_test4);ui->tableWidget_TurnM_Info->setItem(i,5,t_test5);}select_person.clear();}void MainWindow::on_pushButton_PerM_Search_clicked()//人员查询{QString pass=ui->lineEdit_PerM_SNo->text().trimmed();QString name=ui->lineEdit_PerM_SName->text().trimmed();tableWidget_Person_Show(pass,name);}void MainWindow::on_pushButton_PerM_Ok_clicked(){// QPixmap photo;// name=query.value(0).toString();// photo.loadFromData(query.value(1).toByteArray(),"JPG");QString str=ui->lineEdit_PerM_Ic->text();if(ui->comboBox_PerM_Section->currentText().isEmpty()){QMessageBox::information(this,tr("提示"),tr("请先添加部门信息"));return ;}if(ui->lineEdit_PerM_Sn->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("卡号为空"));return ;}if(ui->lineEdit_PerM_Id->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("编号为空"));return ;}if(ui->lineEdit_PerM_Name->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("姓名为空"));return;}if(ui->lineEdit_PerM_Post->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("职务为空"));return ;}PersonInfo perInfo;if(localFile.isEmpty()){QMessageBox::information(this,tr("提示"),tr("请上传照片"));return ;}if(!regExpCheck(str)){QMessageBox::information(this,tr("提示"),tr("身份证信息输入有误"));return ;}else{QFile* file=new QFile(localFile); //fileName为二进制数据文件名file->open(QIODevice::ReadOnly);perInfo.Photo = file->readAll();file->close();}perInfo.Card_Sn=ui->lineEdit_PerM_Sn->text();perInfo.Pass_No=ui->lineEdit_PerM_Id->text();perInfo.Name=ui->lineEdit_PerM_Name ->text();perInfo.Post=ui->lineEdit_PerM_Post->text();perInfo.Section=ui->comboBox_PerM_Section->currentText();//perInfo.SectionID=this->myDb->GetSectionId(this->myDb->sqlite_db,perInfo.Section);perInfo.identity_Card=ui->lineEdit_PerM_Ic->text();perInfo.Status=getPerMStatus();perInfo.End_date=ui->dateEdit_PerM_Date->date().toString("yyyy-MM-dd");bool res;res=this->myDb->writePerson(this->myDb->sqlite_db,&perInfo);if(res){QMessageBox::information(this,tr("提示"),tr("人员添加成功"));on_pushButton_PerM_Search_clicked();}else{QMessageBox::information(this,tr("提示"),tr("人员添加失败"));}}void MainWindow::on_pushButton_SectionM_Delete_clicked()//部门删除{if(ui->tableWidget_SectionM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择删除的信息"),QMessageBox::Ok);return;}int del=QMessageBox::question(this,tr("提示"),tr("你确定要删除吗?"),QMessageBox::Yes | QMessageBox::No,QMessageBox::Yes);if(del==QMessageBox::Yes){QModelIndex index=ui->tableWidget_SectionM->currentIndex();this->myDb->deleteSectionInfo(this->myDb->sqlite_db,index.sibling(index.row(),0).data().toInt());tableWidget_Section_Show();}}void MainWindow::on_pushButton_SectionM_Add_clicked()//部门添加{QString str=ui->lineEdit_SectionM_Name->text();if(str.isEmpty()){QMessageBox::information(this,tr("提示"),tr("部门名称为空"));return;}bool res;res=this->myDb->writeSection(this->myDb->sqlite_db,str);if(res){QMessageBox::information(this,tr("提示"),tr("部门添加成功"));tableWidget_Section_Show();}else{QMessageBox::information(this,tr("提示"),tr("部门添加失败"));}}void MainWindow::on_pushButton_SectionM_Update_clicked()//部门更新{if(ui->tableWidget_SectionM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择更新的信息"),QMessageBox::Ok);return;}QModelIndex index=ui->tableWidget_SectionM->currentIndex();int id=index.sibling(index.row(),0).data().toInt();sectionform = new Section(this->myDb,id);sectionform->exec();tableWidget_Section_Show();}void MainWindow::on_pushButton_NetM_Search_clicked()//网点查询{QString pass=ui->lineEdit_NetM_IdS->text().trimmed();QString name=ui->lineEdit_NetM_Net->text().trimmed();tableWidget_Net_Show(pass,name);}void MainWindow::on_pushButton_NetM_Add_clicked()//网点新增{if(ui->lineEdit_NetM_Id->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("编号为空"));return ;}if(ui->lineEdit_NetM_Name->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("名称为空"));return ;}if(ui->lineEdit_NetM_Address->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("地址为空"));return;}if(ui->lineEdit_NetM_Phone->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("电话为空"));return ;}if(ui->lineEdit_NetM_Person->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("联系人为空"));return;}if(ui->lineEdit_NetM_Section->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("上级机构为空"));return ;}if(ui->lineEdit_NetM_Flag->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("网点类型为空"));return ;}NetInfo nInfo;nInfo.Pass_No=ui->lineEdit_NetM_Id->text();nInfo.NetName=ui->lineEdit_NetM_Name->text();nInfo.Address=ui->lineEdit_NetM_Address->text();nInfo.Phone=ui->lineEdit_NetM_Phone->text();nInfo.Person=ui->lineEdit_NetM_Person->text();nInfo.UpSection=ui->lineEdit_NetM_Section->text();nInfo.NetFlag=ui->lineEdit_NetM_Flag->text();bool res;res=this->myDb->writeNet(this->myDb->sqlite_db,&nInfo);if(res){QMessageBox::information(this,tr("提示"),tr("网点添加成功"));}else{QMessageBox::information(this,tr("提示"),tr("网点添加失败"));}on_pushButton_NetM_Search_clicked();}void MainWindow::on_pushButton_NetM_Update_clicked()//网点修改{if(ui->tableWidget_NetM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择修改的信息"),QMessageBox::Ok);return;}QModelIndex index=ui->tableWidget_NetM->currentIndex();int id=index.sibling(index.row(),0).data().toInt();netform= new NetForm(this->myDb,id);netform->exec();}void MainWindow::on_pushButton_NetM_Delete_clicked()//网点删除{if(ui->tableWidget_NetM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择删除的信息"),QMessageBox::Ok);return;}int del=QMessageBox::question(this,tr("提示"),tr("你确定要删除吗?"),QMessageBox::Yes | QMessageBox::No,QMessageBox::Yes);if(del==QMessageBox::Yes){QModelIndex index=ui->tableWidget_NetM->currentIndex();this->myDb->deleteNetInfo(this->myDb->sqlite_db,index.sibling(index.row(),0).data().toString());on_pushButton_NetM_Search_clicked();}}void MainWindow::on_toolButton_BoxM_clicked(){getNetInfo();}void MainWindow::on_toolButton_NetPersonM_clicked(){getNetInfo();}void MainWindow::on_pushButton_BoxM_Search_clicked()//钱箱查询{QString pass=ui->lineEdit_BoxM_SNo->text().trimmed();QString net_name=ui->comboBox_BoxM_SName->currentText().trimmed();tableWidget_BoxM_Show(pass,net_name);}void MainWindow::on_pushButton_BoxM_Add_clicked()//钱箱新增{if(ui->comboBox_BoxM_Net->currentText().isEmpty()){QMessageBox::information(this,tr("提示"),tr("请先添加网点信息"));return ;}if(ui->lineEdit_BoxM_Ic->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("卡号为空"));return ;}if(ui->lineEdit_BoxM_Id->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("编号为空"));return ;}QString pass=ui->lineEdit_BoxM_Id->text();QString card=ui->lineEdit_BoxM_Ic->text();QString address=ui->comboBox_BoxM_Net->currentText();bool res;res=this->myDb->writeBox(this->myDb->sqlite_db,pass,card,address);if(res){QMessageBox::information(this,tr("提示"),tr("钱箱添加成功"));}else{QMessageBox::information(this,tr("提示"),tr("钱箱添加失败"));}on_pushButton_BoxM_Search_clicked();}void MainWindow::on_pushButton_BoxM_Update_clicked()//钱箱修改{if(ui->tableWidget_BoxM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择修改的信息"),QMessageBox::Ok);return;}QModelIndex index=ui->tableWidget_BoxM->currentIndex();int id=index.sibling(index.row(),0).data().toInt();boxform= new BoxForm(this->myDb,id);boxform->exec();on_pushButton_BoxM_Search_clicked();}void MainWindow::on_pushButton_BoxM_Delete_clicked()//钱箱删除{if(ui->tableWidget_BoxM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择删除的信息"),QMessageBox::Ok);return;}int del=QMessageBox::question(this,tr("提示"),tr("你确定要删除吗?"),QMessageBox::Yes | QMessageBox::No,QMessageBox::Yes);if(del==QMessageBox::Yes){QModelIndex index=ui->tableWidget_BoxM->currentIndex();this->myDb->deleteDeeBox(this->myDb->sqlite_db,index.sibling(index.row(),0).data().toInt());on_pushButton_BoxM_Search_clicked();}}void MainWindow::on_pushButton_NetPerM_Search_clicked(){QString name=ui->comboBox_NetPerM_SNet->currentText();tableWidget_NetPerM_Show(name);}void MainWindow::on_pushButton_NetPerM_Add_clicked()//网点用户新增{if(ui->comboBox_NetPerM->currentText().isEmpty()){QMessageBox::information(this,tr("提示"),tr("请先添加网点信息"));return ;}if(ui->lineEdit_NetPerM_User->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("用户名为空"));return ;}if(ui->lineEdit_NetPerM_Pass->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("密码为空"));return ;}QString address=ui->comboBox_NetPerM->currentText();QString user=ui->lineEdit_NetPerM_User->text();QString pass=ui->lineEdit_NetPerM_Pass->text();QString flag=ui->comboBox_NetPerM_Flag->currentText();bool res;res=this->myDb->writeNetPertson(this->myDb->sqlite_db,address,user,pass,flag);if(res){QMessageBox::information(this,tr("提示"),tr("网点用户添加成功"));}else{QMessageBox::information(this,tr("提示"),tr("网点用户添加失败"));}on_pushButton_NetPerM_Search_clicked();}void MainWindow::on_pushButton_NetPerM_Update_clicked()//网点用户修改{if(ui->tableWidget_NetPerM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择修改的信息"),QMessageBox::Ok);return;}QModelIndex index=ui->tableWidget_NetPerM->currentIndex();int id=index.sibling(index.row(),0).data().toInt();NetPerform = new NetPerson(this->myDb,id);NetPerform->exec();on_pushButton_NetPerM_Search_clicked();}void MainWindow::on_pushButton_NetPerM_Delete_clicked()//网点用户删除{if(ui->tableWidget_NetPerM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择删除的信息"),QMessageBox::Ok);return;}int del=QMessageBox::question(this,tr("提示"),tr("你确定要删除吗?"),QMessageBox::Yes | QMessageBox::No,QMessageBox::Yes);if(del==QMessageBox::Yes){QModelIndex index=ui->tableWidget_NetPerM->currentIndex();this->myDb->deleteNetPerInfo(this->myDb->sqlite_db,index.sibling(index.row(),0).data().toInt());on_pushButton_NetPerM_Search_clicked();}}void MainWindow::on_pushButton_SysPerM_Add_clicked()//用户添加{if(ui->lineEdit_SysPerM_User->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("用户名为空"));return ;}if(ui->lineEdit_SysPerM_Pass->text().isEmpty()){QMessageBox::information(this,tr("提示"),tr("密码为空"));return ;}QString user=ui->lineEdit_SysPerM_User->text();QString pass=ui->lineEdit_SysPerM_Pass->text();bool res;res=this->myDb->writePertson(this->myDb->sqlite_db,user,pass);if(res){QMessageBox::information(this,tr("提示"),tr("用户添加成功"));tableWidget_User_Show();}else{QMessageBox::information(this,tr("提示"),tr("用户添加失败"));}}void MainWindow::on_pushButton_SysPerM_Update_clicked()//用户修改{if(ui->tableWidget_SysPerM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择修改的信息"),QMessageBox::Ok);return;}QModelIndex index=ui->tableWidget_SysPerM->currentIndex();int id=index.sibling(index.row(),0).data().toInt();userform = new UserForm(this->myDb,id);userform->exec();tableWidget_User_Show();}void MainWindow::on_pushButton_SysPerM_Delete_clicked()//用户删除{if(ui->tableWidget_SysPerM->selectedItems().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请从列表中选择删除的信息"),QMessageBox::Ok);return;}int del=QMessageBox::question(this,tr("提示"),tr("你确定要删除吗?"),QMessageBox::Yes | QMessageBox::No,QMessageBox::Yes);if(del==QMessageBox::Yes){QModelIndex index=ui->tableWidget_SysPerM->currentIndex();this->myDb->deleteUserInfo(this->myDb->sqlite_db,index.sibling(index.row(),0).data().toInt());tableWidget_User_Show();}}void MainWindow::on_pushButton_GetFile_clicked(){QString dbfile;dbfile = QFileDialog::getOpenFileName(this,"Open File", QDir::currentPath(),tr("DB(*.db);;ALL FILE(*)"));if(!dbfile.isEmpty()){qDebug()<<"dbfile" << dbfile;ui->lineEdit_File->setText(dbfile);databaseOpen(dbfile);tableWidget_TurnM_Info_Show(1);}else{qDebug()<<"dbfile.isEmpty()" <<dbfile ;}}void MainWindow::databaseOpen(QString dbname){sqlite_sys_db->setDatabaseName(dbname);if(!QFile::exists(dbname)){QMessageBox::warning(this,tr("提示"),tr("数据库文件不存在"),QMessageBox::Ok);}else{if(sqlite_sys_db->isOpen()){qDebug()<<"sqlite_sys_db.isOpen()";QString name;name = sqlite_sys_db->connectionName();//超出作用域,隐含对象QSqlDatabase::database()被删除。sqlite_sys_db->close();}if(!sqlite_sys_db->open()){qDebug()<<"Unable to open sqlite database";// QMessageBox::warning(this,tr("提示"),tr("数据库打开失败"),QMessageBox::Ok);}else{qDebug()<<"open sqlite database sucsess";QMessageBox::warning(this,tr("提示"),tr("数据库打开成功"),QMessageBox::Ok);}}}void MainWindow::TurnClassShow(QString id){if(!sqlite_sys_db->isOpen()){QMessageBox::warning(this,tr("提示"),tr("数据库打开失败"),QMessageBox::Ok);return;}tableWidget_TurnM_Person_Show(id);tableWidget_TurnM_Box_Show(id);}void MainWindow::on_pushButton_clicked(){tableWidget_TurnM_Info_Show(2);}void MainWindow::on_tableWidget_TurnM_Person_clicked(QModelIndex index){QPixmap photo;//QModelIndex index=ui->tableWidget_TurnM_Person->currentIndex();QByteArray data;int id=index.sibling(index.row(),0).data().toInt();data=this->myDb->GetUserPhotoInfo(sqlite_sys_db,id);photo.loadFromData(data,"JPG");ui->label_TurnM_Photo->setPixmap(photo);ui->label_TurnM_Name->setText(index.sibling(index.row(),2).data().toString());ui->label_TurnM_Id->setText(index.sibling(index.row(),1).data().toString());ui->label_TurnM_Section->setText(index.sibling(index.row(),3).data().toString());ui->label_TurnM_Post->setText(index.sibling(index.row(),4).data().toString());}void MainWindow::on_pushButton_SqliteM_Out_clicked()//导出数据{if(ui->comboBox_SqliteM->currentText().isEmpty()){QMessageBox::warning(this,tr("提示"),tr("请先添加网点信息"),QMessageBox::Ok);return;}QString fileName=QFileDialog::getSaveFileName(this,tr("Save File"),tr("passing_manager"),tr("数据库文件(*.db)"));if(!fileName.isEmpty()){saveFile(fileName);}}bool MainWindow::saveFile(const QString& fileName){qDebug()<<"saveFile" <<fileName;if(QFile::exists(fileName)){QFile::remove(fileName);}if(sqlite_linux_db->isOpen()){//超出作用域,隐含对象QSqlDatabase::database()被删除。sqlite_linux_db->close();}this->myDb->databaseinit(sqlite_linux_db,fileName);this->myDb->UserPcToLinux(this->myDb->sqlite_db,sqlite_linux_db,ui->comboBox_SqliteM->currentText());this->myDb->SectionPcToLinux(this->myDb->sqlite_db,sqlite_linux_db);this->myDb->NetInfoPcToLinux(this->myDb->sqlite_db,sqlite_linux_db);this->myDb->PersonPcToLinux(this->myDb->sqlite_db,sqlite_linux_db);this->myDb->BoxPcToLinux(this->myDb->sqlite_db,sqlite_linux_db);QMessageBox::information(this,tr("提示"),tr("数据导出完成!"));}void MainWindow::on_lineEdit_Pass_cursorPositionChanged(int oldPos, int newPos){if(oldPos>=-1 && newPos>=0 ){if(newPos>oldPos){QTimer::singleShot(mTimeout,this,SLOT(slotDisplayMaskPassword()));}else{ui->lineEdit_Pass->setCursorPosition(oldPos);}}}void MainWindow::on_lineEdit_Pass_textEdited(QString text){if(text.count()>mLastCharCount)//输入{mLineEditText.append(text.right(1));}else if(text.count()<mLastCharCount)//删除{mLineEditText.remove(mLineEditText.count()-1,1);}mLastCharCount = mLineEditText.count();}void MainWindow::slotDisplayMaskPassword(){QString str ;str.fill('*',mLastCharCount);ui->lineEdit_Pass->setText(str);}void MainWindow::on_Enter_triggered(){if(ui->lineEdit_Name->hasFocus()){ui->lineEdit_Pass->setFocus();}else if(ui->lineEdit_Pass->hasFocus()){on_pushButton_LoginOk_clicked();}}bool MainWindow::regExpCheck(QString strValue){bool bRet = true;QRegExp reg( "(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\d|X|x)$)");QRegExpValidator validator(reg,0);int pos = 0;if(QValidator::Acceptable != validator.validate(strValue,pos)){//qDebug()<<"输入有误"<<validator.validate(strValue,pos)<<strValue;bRet = false;}return bRet;}void MainWindow::on_tableWidget_TurnM_Info_doubleClicked(QModelIndex index){QString class_id= index.sibling(index.row(),0).data().toString();TurnClassShow(class_id);}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。