-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeactive_accounts_win.cpp
95 lines (82 loc) · 2.96 KB
/
deactive_accounts_win.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include "deactive_accounts_win.h"
#include "ui_deactive_accounts_win.h"
#include"user.h"
#include<QMap>
#include"datas.h"
deactive_accounts_win::deactive_accounts_win(QWidget *parent) :
QDialog(parent),
ui(new Ui::deactive_accounts_win)
{
ui->setupUi(this);
setWindowTitle("حساب های غیر فعال");
}
deactive_accounts_win::~deactive_accounts_win()
{
delete ui;
}
void deactive_accounts_win::setlastpage(adminmenu *_lastpage)
{
lastpage=_lastpage;
}
void deactive_accounts_win::setsystemadmin(admin &_systemadmin)
{
//systemadmin=_systemadmin;
//alldeactives=systemadmin.getdeactiveAccounts();
for(int i=0;i<alldeactives.size();i++)
{
ui->accountstable->insertRow(i);
QTableWidgetItem *type=new QTableWidgetItem;
QTableWidgetItem *balance=new QTableWidgetItem;
QTableWidgetItem *use=new QTableWidgetItem;
QTableWidgetItem *num=new QTableWidgetItem;
QMultiMap<user,account>::iterator it=alldeactives.begin()+i;
user displayuser=it.key();
account tmpaccount=it.value();
type->setText(tmpaccount.getTypeAsString());
balance->setText(tmpaccount.getBalanceAsString());
num->setText(tmpaccount.getNum());
use->setText(displayuser.getcomplitname());
ui->accountstable->setItem(i,2,type);
ui->accountstable->setItem(i,3,num);
ui->accountstable->setItem(i,1,balance);
ui->accountstable->setItem(i,0,use);
}
}
void deactive_accounts_win::on_accountstable_cellClicked(int row, int column)
{
QMultiMap<user,account>::iterator selectpair=alldeactives.begin()+row;
//it=alldeactives.begin()+row;
selectuser=datas::userPointerByUsername(selectpair.key().getUsername());
selectaccount=selectuser->getAccountPointerByAccountNumber(ui->accountstable->item(row,3)->text());
ui->acceptaccountbtn->setEnabled(true);
ui->rejectaccountbtn->setEnabled(true);
selectrow=row;
}
void deactive_accounts_win::on_acceptaccountbtn_clicked()
{
//account& refofselected=datas::findAccountByNum( selectaccount.value().getNum());
selectpair=alldeactives.begin()+selectrow;
selectaccount->unblock();
alldeactives.erase(selectpair);
deactive_accounts_win *refpage=new deactive_accounts_win();
refpage->show();
refpage->setlastpage(lastpage);
refpage->setsystemadmin(systemadmin);
this->close();
}
void deactive_accounts_win::on_backbtn_clicked()
{
this->close();
lastpage->show();
}
void deactive_accounts_win::on_rejectaccountbtn_clicked()
{
selectpair=alldeactives.begin()+selectrow;
datas::rejectaccount(selectuser->getusername(),ui->accountstable->item(selectrow,3)->text());
alldeactives.erase(selectpair);
deactive_accounts_win *refpage=new deactive_accounts_win();
refpage->show();
refpage->setlastpage(lastpage);
refpage->setsystemadmin(systemadmin);
this->close();
}