#include "adminframe.h"
#include "ui_adminframe.h"
#include <qmessagebox.h>
#include <string.h>
#include <sstream>
#include <iomanip>
#include <qdebug.h>
using namespace std;
using namespace DataManagement;
using namespace UserManagement;
using namespace BookManagement;
void adminframe::hidetxtbtn(){
ui->label_2->hide();ui->label_3->hide();
ui->resultAccount->hide();ui->resultKind->hide();
ui->changeButton_2->hide();ui->newpassEdit_2->hide();
ui->deleteButton->hide();
ui->newpassEdit->clear();ui->newpassEdit_2->clear();
}
void adminframe::showtxtbtn(){
ui->label_2->show();ui->label_3->show();
ui->resultAccount->show();ui->resultKind->show();
ui->changeButton_2->show();ui->newpassEdit_2->show();
ui->deleteButton->show();
}
adminframe::adminframe(QWidget *parent) :
QDialog(parent),
ui(new Ui::adminframe)
{
addAccountFrame = new addaccount();
addAccountFrame->hide();
addBookFrame = new addbook();
addBookFrame->hide();
ui->setupUi(this);
hidetxtbtn();
connect(this,SIGNAL(exittoindex()),parent,SLOT(showagain()));
resultHide();
flag = -1;
}
adminframe::~adminframe()
{
delete ui;
}
void adminframe::showagain(){
this->show();
}
void adminframe::receive(QString str){
accountReceive = str;
ui->labelAccount->setText(accountReceive);
ui->labelAccount->adjustSize();
}
void adminframe::on_exitButton_clicked()
{
hidetxtbtn();
resultHide();
ui->warn->clear();ui->searchbook->clear();ui->searchbook->show();ui->warn->show();
ui->pushButton->show();ui->pushButton_2->hide();
emit exittoindex();
reject();
}
void adminframe::on_adduserButton_clicked()
{
addAccountFrame->show();
}
void adminframe::on_changeButton_clicked()
{
if(ui->newpassEdit->text().isEmpty()){
QMessageBox::warning(this,tr("Warning"),QString::fromLocal8Bit("请输入所要修改的密码!"),QMessageBox::Ok);
}
else{
if(UpdataUserPassword(q_s(ui->labelAccount->text()),q_s(ui->newpassEdit->text()))){
QMessageBox::information(this,tr("Prompt"),QString::fromLocal8Bit("修改成功"),QMessageBox::Ok);
ui->newpassEdit->clear();
}
else{
QMessageBox::information(this,tr("Prompt"),QString::fromLocal8Bit("修改成功"),QMessageBox::Ok);
ui->newpassEdit->clear();
}
}
}
void adminframe::on_searchButton_clicked()
{
hidetxtbtn();
if(ui->searchEdit->text().isEmpty()){
QMessageBox::warning(this,tr("Warning"),QString::fromLocal8Bit("请输入所要查询内容!"),QMessageBox::Ok);
}
else{
User *resultuser = SelectUser(q_s(ui->searchEdit->text()));
if(resultuser!=nullptr){
ui->resultAccount->setText(s_q(resultuser->Name));
if(!strcmp(q_s(resultuser->type).c_str(),"admin")){
ui->resultKind->setText(s_q("管理员"));
}
else if(!strcmp(q_s(resultuser->type).c_str(),"user")){
ui->resultKind->setText(s_q("用户"));
}
else{
ui->resultKind->clear();
}
showtxtbtn();
}
else{
QMessageBox::information(this,tr("Prompt"),QString::fromLocal8Bit("不存在该用户"),QMessageBox::Ok);
hidetxtbtn();
ui->searchEdit->clear();
}
ui->searchEdit->clear();
}
}
void adminframe::on_changeButton_2_clicked()
{
if(ui->newpassEdit_2->text().isEmpty()){
QMessageBox::warning(this,tr("Warning"),QString::fromLocal8Bit("请输入所要修改的密码!"),QMessageBox::Ok);
}
else{
if(UpdataUserPassword(q_s(ui->resultAccount->text()),q_s(ui->newpassEdit_2->text()))){
QMessageBox::information(this,tr("Prompt"),QString::fromLocal8Bit("修改成功"),QMessageBox::Ok);
ui->newpassEdit_2->clear();
}
else{
QMessageBox::information(this,tr("Prompt"),QString::fromLocal8Bit("修改失败"),QMessageBox::Ok);
ui->newpassEdit_2->clear();
}
}
}
void adminframe::on_deleteButton_clicked()
{
if(!strcmp(q_s(ui->resultAccount->text()).c_str(),"root")){
QMessageBox::warning(this,tr("Warning"),QString::fromLocal8Bit("还想玩不,系统总管理员不允许删除!"),QMessageBox::Ok);
}
else if(!strcmp(q_s(ui->labelAccount->text()).c_str(),q_s(ui->resultAccount->text()).c_str())){
QMessageBox::warning(this,tr("Warning"),QString::fromLocal8Bit("不允许自己删自己啊~亲"),QMessageBox::Ok);
}
else{
QMessageBox::StandardButton reply;
reply = QMessageBox::question(this, "Delete user", QString::fromLocal8Bit("确认删除用户?"),QMessageBox::Yes|QMessageBox::No);
if (reply == QMessageBox::Yes)
{
int deleteresult = UserManagement::DeleteUser(q_s(ui->resultAccount->text()));
if (deleteresult == -1) {
QMessageBox::warning(this,tr("Faile"),QString::fromLocal8Bit("该用户有在借书籍!删除失败,请督促还书!"),QMessageBox::Yes);
}else if (deleteresult == 1){
QMessageBox::information(this,tr("Success"),QString::fromLocal8Bit("删除成功"),QMessageBox::Yes);
hidetxtbtn();
}
else{
QMessageBox::warning(this,tr("Fail"),QString::fromLocal8Bit("删除失败"),QMessageBox::Yes);
}
}
else{}
}
}
void adminframe::on_addbookButton_clicked()
{
addBookFrame->show();
}
void adminframe::bottomShow(){
ui->bottom2->clear();
ui->bottom1->show();
ui->bottom2->show();
ui->bottom3->show();
ui->bottom4->show();
}
void adminframe::bottomHide(){
ui->bottom2->clear();
ui->bottom1->hide();
ui->bottom2->hide();
ui->bottom3->hide();
ui->bottom4->hide();
}
void adminframe::resultHide(){
ui->result1->clear();ui->result2->clear();ui->result3->clear();ui->result4->clear();
ui->result1->hide();ui->result2->hide();ui->result3->hide();ui->result4->hide();
ui->result01->hide();ui->result02->hide();ui->result03->hide();ui->result04->hide();
ui->borrowButton->hide();ui->returnButton->hide();ui->deleteBook->hide();
bottomHide();
}
void adminframe::resultShow(){
ui->result1->show();ui->result2->show();ui->result3->show();ui->result4->show();
ui->result01->show();ui->result02->show();ui->result03->show();ui->result04->show();
ui->borrowButton->show();ui->returnButton->show();ui->deleteBook->show();
}
void adminframe::on_pushButton_clicked()
{
ui->returnButton->setStyleSheet("border-radius:5px;background:#fe7023;color:#ffffff;font: 10pt");
ui->borrowButton->setStyleSheet("border-radius:5px;background:#fe7023;color:#ffffff;font: 10pt");
ui->deleteBook->setStyleSheet("border-radius:5px;background:#fe7023;color:#ffffff;font: 10pt");
ui->returnButton->setEnabled(true);ui->borrowButton->setEnabled(true);ui->deleteBook->setEnabled(true);
resultHide();
ui->warn->clear();
if(ui->searchbook->text().isEmpty()){
QMessageBox::warning(this,tr("Warning"),QString::fromLocal8Bit("请输入查询内容!"),QMessageBox::Ok);
}
else{
QString strPatt = "^\\d+$";
QRegExp rx(strPatt);
if(!rx.exactMatch(ui->searchbook->text())){
ui->warn->setText(s_q("请输入正确的索书号(非负整数)!"));
}
else{
string str = q_s(ui->searchbook->text());
searchID = atoi(str.c_str());
Book* tBook = SelectID<Book>(searchID);
if(tBook->ID == -1){
ui->warn->setText(s_q("不存在此索书号书籍,请返回主界面查询确定"));
}
else{
if(tB
没有合适的资源?快使用搜索试试~ 我知道了~
C++文件操作-图书馆管理系统:UML课程作业,采用Qt开发.zip
共40个文件
cpp:12个
h:11个
ui:7个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 110 浏览量
2023-08-02
15:39:28
上传
评论
收藏 114KB ZIP 举报
温馨提示
用c++/qt写的项目,项目都经测试过,能跑通,请放心下载使用。 Qt的优势: 1.跨平台,几乎支持所有的平台 2.接口简单,容易上手,学习QT框架对学习其他框架有参考意义 3.一定程度上简化了内存回收机制 (特定场景下会帮助释放内存) 4.开发效率高,能够快速的构建应用程序。 5.可以进行嵌入式开发 ① 在要对文件进行加密解密的时候,先将文件按一定的数据结构读入内存,然后进行加密或解密操作。运算数据都读取自内存。 ② 在对加密或解密完成的数据进行写出的时候,都是将其直接写到指定好的文件,即直接写入磁盘。这是因为,考虑到中途可能因为意外断电等原因引起操作中断,为了保护已经花费时间运算完成的数据,将其直接写入磁盘。 ③ 在关键算法上做进一步优化,例如在寻找素数时,素数测试使用更快速的算法;还有3.3节提到的,在用私有密钥进行幂模运算时使用中国余数定理等。 ④ 对C++核心类库进行重点优化,使其运算效率尽可能提高。其中包括对各类之间的组织细节、各程序模块的具体编写等,进行全面细致的检查和修改,例如将大数据类型以对象指针传递而不拷贝,将简单的for循环展开等。
资源推荐
资源详情
资源评论
收起资源包目录
C++文件操作-图书馆管理系统:UML课程作业,采用Qt开发.zip (40个子文件)
cont
addbook.h 622B
adminframe.png 30KB
addaccount.ui 4KB
addaccount.cpp 3KB
userframe.ui 15KB
data.h 6KB
TwoLibrary.pro 925B
login.cpp 2KB
addaccount.h 530B
TwoLibrary.pro.user 33KB
adminframe.h 1KB
bookmanagement.h 2KB
bookinfo.h 505B
login.png 26KB
bookinfo.cpp 3KB
configure.h 488B
bookinfo.ui 6KB
login.ui 3KB
data.cpp 7KB
userframe.png 27KB
main.cpp 164B
userframe.h 918B
index.h 1019B
bg.png 37KB
usermanagement.cpp 2KB
adminframe.ui 17KB
index.cpp 9KB
addbook.png 26KB
addbook.cpp 4KB
images.qrc 301B
adminframe.cpp 15KB
userframe.cpp 12KB
configure.cpp 164B
bookmanagement.cpp 8KB
bookinfo.png 26KB
addbook.ui 7KB
usermanagement.h 806B
addaccount.png 25KB
index.ui 15KB
login.h 604B
共 40 条
- 1
资源评论
c++服务器开发
- 粉丝: 3045
- 资源: 4463
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功