-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.cpp
157 lines (156 loc) · 4.59 KB
/
main.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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#include "QLNV.cpp"
bool asc(Date a, Date b)
{
return a > b;
}
bool desc(Date a, Date b)
{
return !(a > b); // <=
}
int main()
{
QLNV<NhanVien> data;
NVBC nvbc[100];
NVHD nvhd[100];
int bc = 0, hd = 0;
string ma_nv;
Date ngaynhanviec;
// NVBC nv1("1", "Tran Thi Phuong", Date(1, 1, 2019), 1, 1000000, 5);
// NVBC nv2("2", "Tran Thi Phuong", Date(1, 1, 2020), 1, 1000000, 5);
// NVBC nv3("3", "Tran Thi Phuong", Date(1, 1, 2018), 1, 1000000, 5);
// NVBC nv4("4", "Tran Thi Phuong", Date(1, 1, 2018), 1, 1000000, 5);
// NVBC nv5("5", "Tran Thi Phuong", Date(4, 1, 2018), 1, 1000000, 5);
// data.InsertFirst(&nv1);
// data.InsertLast(&nv2);
// data.InsertLast(&nv3);
// data.InsertLast(&nv4);
// data.InsertLast(&nv5);
// data.Xuat();
// data.Remove(1);
// data.Xuat();
char key;
do
{
cout << "______________________Quan ly nhan vien cong ty_________________________" << endl
<< " 1. Them nhan vien" << endl
<< " 2. Chinh sua nhan vien " << endl
<< " 3. Xoa nhan vien " << endl
<< " 4. Xem tat ca nhan vien" << endl
<< " 5. So nhan vien hien tai " << endl
<< " 6. Sap xep nhan vien theo ngay nhan viec " << endl
<< " 7. Tim kiem nhan vien " << endl
<< " PRESS THE NUMBER : ";
int m;
cin >> m;
switch (m)
{
case 1:
cout << "______________________Them nhan vien_________________________" << endl
<< " 1. Nhan vien Bien che (NVBC)" << endl
<< " 2. Nhan vien Hop dong (NVHD)" << endl
<< " PRESS THE NUMBER : ";
int case1;
cin >> case1;
NhanVien *a;
switch (case1)
{
case 1:
cout << "Nhap thong tin nhan vien:" << endl;
cin >> nvbc[bc];
a = &nvbc[bc];
bc++;
data.InsertLast(a);
data.Xuat();
a = nullptr;
break;
case 2:
cout << "Nhap thong tin nhan vien:" << endl;
cin >> nvhd[hd];
a = &nvhd[hd];
hd++;
data.InsertLast(a);
data.Xuat();
a = nullptr;
break;
default:
cout << " Sorry,There is no matching option " << endl;
break;
}
break;
case 2:
int update;
data.Xuat();
cout << " Nhap STT nhan vien can chinh sua : ";
cin >> update;
data.Update(update);
data.Xuat();
break;
case 3:
data.Xuat();
int remove;
cout << "Nhap stt nhan vien can xoa :";
cin >> remove;
data.Remove(remove);
data.Xuat();
break;
case 4:
data.Xuat();
break;
case 5:
cout << "So nhan vien hien tai : " << data.GetLength() << endl;
break;
case 6:
cout << "______________________Chon kieu sap xep_________________________" << endl
<< " 1.Tang dan" << endl
<< " 2.Giam dan" << endl
<< " PRESS THE NUMBER : ";
int case6;
cin >> case6;
switch (case6)
{
case 1:
data.Sort(asc);
data.Xuat();
break;
case 2:
data.Sort(desc);
data.Xuat();
break;
default:
cout << " Sorry,There is no matching option " << endl;
break;
}
break;
case 7:
cout << "______________________Chon kieu Tim kiem_________________________" << endl
<< " 1.Theo ma nhan vien" << endl
<< " 2.Theo ngay nhan viec" << endl
<< " PRESS THE NUMBER : ";
int case7;
cin >> case7;
switch (case7)
{
case 1:
cout << "Nhap ma nhan vien can tim kiem : ";
cin >> ma_nv;
data.SearchMaNV(ma_nv);
break;
case 2:
cout << "Nhap ngay nhan viec can tim kiem:";
cin >> ngaynhanviec;
data.SearchNgayNhanViec(ngaynhanviec);
break;
default:
cout << " Sorry,There is no matching option " << endl;
break;
}
break;
}
cout << "Do you want to be continute? y/n ";
cin >> key;
} while (key != 'n');
// NhanVien *a;
// a = &nv4;
return 0;
}
//g++ Nhanvien.cpp nvhd.cpp nvbc.cpp date.cpp main.cpp -o c