diff --git a/Admin.h b/Admin.h index 6ffe518..bb13b07 100644 --- a/Admin.h +++ b/Admin.h @@ -1,15 +1,22 @@ #ifndef _ADMIN_ #define _ADMIN_ -#include -#include -#include -#include +#include +#include +#include +#include +#include #include "Helper.h" #include "User.h" using namespace std; +inline void to_upper(string &s) { + for (size_t i = 0; i < s.length(); i++) { + s[i] = toupper(s[i]); + } +} + class Admin : public User { public: Admin() {}; @@ -23,6 +30,7 @@ public: return 1; } } + bool removeUser(string username, UserList &db_user_list, StudentList &db_st_list, TeacherList &db_tc_list) { int index = db_user_list.findUserByUsername(username); if (index == -1 || db_user_list.list[index].role == "admin") { @@ -30,7 +38,6 @@ public: } else { string s = db_user_list.list[index].role; - db_user_list.removeFromList(index); if (s == "student") { stringstream ss; ss.str(username); @@ -39,6 +46,7 @@ public: for (size_t i = 0; i < db_st_list.size; i++) { if (db_st_list.list[i].st_number == id) { db_st_list.removeFromList(i); + db_user_list.removeFromList(index); return 1; } } @@ -47,10 +55,12 @@ public: for (size_t i = 0; i < db_tc_list.size; i++) { if (db_tc_list.list[i].tc_identify == username) { db_tc_list.removeFromList(i); + db_user_list.removeFromList(index); return 1; } } } + return 0; } } @@ -62,8 +72,16 @@ public: string s; getline(cin, s, ','); student.username = student.password = s; - istringstream(s) >> st.st_number; + istringstream iss; + iss.str(s); + iss >> st.st_number; + if (iss.fail()) { + cin.clear(); + cin.ignore(INT_MAX, '\n'); + return 0; + } getline(cin, s, ','); + to_upper(s); st.st_name = s; getline(cin, s, ','); st.st_birthday = s; @@ -77,6 +95,7 @@ public: return 0; } } + bool addTeacher(TeacherList &db_tc_list, UserList &db_user_list) { Teacher tc; User teacher; @@ -86,6 +105,7 @@ public: getline(cin, s, ','); tc.tc_identify = teacher.username = teacher.password = s; getline(cin, s, ','); + to_upper(s); tc.tc_name = s; getline(cin, s, ','); tc.tc_birthday = s; diff --git a/Bak/course.csv b/Bak/course.csv new file mode 100644 index 0000000..2aa23de --- /dev/null +++ b/Bak/course.csv @@ -0,0 +1,29 @@ +a2001,NGUYEN MINH DUC,a2,Giai tich 1,100,89,5 +a2002,HOANG LONG THANG,a2,Giai tich 1,100,80,5 +a2003,PHAM LAN CHINH,a2,Giai tich 1,100,99,5 +a2004,PHAM LAN CHINH,a2,Giai tich 1,100,75,5 +a2005,NGUYEN CONG THUC,a2,Giai tich 1,100,95,5 +a2006,VU THI MAI,a2,Giai tich 1,50,49,5 +a2007,HOANG LONG THANG,a2,Giai tich 1,50,45,5 +a2008,NGUYEN THI NHUNG,a2,Giai tich 1,50,40,5 +a2009,NGUYEN THI NHUNG,a2,Giai tich 1,50,30,5 +a2010,NGUYEN MINH DUC,a2,Giai tich 1,50,40,5 +b2001,NGUYEN MINH DUC,b2,Giai tich 2,75,60,4 +b2002,TRAN HUNG NGUYEN,b2,Giai tich 2,75,74,4 +b2003,NINH VAN GIANG,b2,Giai tich 2,75,74,4 +b2004,NGUYEN THANH NHON,b2,Giai tich 2,50,49,4 +b2005,TRIEU THI YEN NHI,b2,Giai tich 2,50,30,4 +c1001,TRAN THUY LINH,c1,Vat ly 1,120,100,3 +c1002,DUONG THANH CONG,c1,Vat ly 1,120,90,3 +c1003,TRAN HUNG NGUYEN,c1,Vat ly 1,60,53,3 +c1004,DO THI MAI,c1,Vat ly 1,60,59,3 +c1005,DUONG THANH CONG,c1,Vat ly 1,60,60,3 +d3001,LA THI NGAT,d3,Vat ly 2,60,60,4 +d3002,LA THI NGAT,d3,Vat ly 2,60,60,4 +d3003,ONG THI THU,d3,Vat ly 2,60,60,4 +d3004,PHAM THI HIEN,d3,Vat ly 2,50,19,4 +d3_005,PHAM LAN CHINH,d3,Vat ly 2,50,20,4 +sub_L02,NGUYEN THI NGOC,sub,Hung,20,0,2 +sub1_L03,NGUYEN THI NGOC,sub1,Natsu,39,3,2 +sub3_L01,NGUYEN THI NGOC,sub3,Natsu2,44,0,4 +sub4_L02,NGUYEN THI NGOC,sub4,natsu,33,0,3 diff --git a/Bak/student.csv b/Bak/student.csv new file mode 100644 index 0000000..1f10e25 --- /dev/null +++ b/Bak/student.csv @@ -0,0 +1,30 @@ +1712350,NONG THI HANH,1987-09-07,"Huyen Luc Nam, Bac Giang" +1712351,TRAN XUAN SON,1985-10-22,"Huyen Pho Yen, Thai Nguyen" +1712352,PHAM THI TRANG,1987-03-22,"Huyen Dong Hy, Thai Nguyen" +1712353,TRAN THI NGOC ANH,1985-06-20,"Huyen Phu Binh, Thai Nguyen" +1712354,MA THI THU UYEN,1991-11-22,"Huyen Tran Yen, Yen Bai" +1712355,DAO THI DUYEN,1988-05-27,"Huyen Phu Binh, Thai Nguyen" +1712356,NONG THI SEN,1986-10-26,"Huyen Pho Yen, Thai Nguyen" +1712357,LY THI THUYEN,1989-04-06,"Huyen Pho Yen, Thai Nguyen" +1712358,DO THI HUE,1985-06-13,"Thi xa Song Cong, Thai Nguyen" +1712359,DANG THE ANH,1989-03-27,"Thanh pho Thai Nguyen, Thai Nguyen" +1712360,NGUYEN HONG HANH,1989-01-24,"Huyen Phu Luong, Thai Nguyen" +1712361,HOANG THI DINH,1991-02-02,"Huyen Phu Binh, Thai Nguyen" +1712371,NGO THI LE HANG,1991-03-20,"Huyen Quynh Nhai, Son La" +1712372,KHONG HUONG GIANG,1985-12-11,"Huyen Thuong Xuan, Thanh Hoa" +1712373,DIEP THI HONG THUY,1985-08-19,"Thanh pho Bac Ninh, Bac Ninh" +1712374,NGUYEN VAN DUY,1989-03-11,"Huyen Cam Thuy, Thanh Hoa" +1712375,VU NHU QUYNH,1987-03-27,"Huyen Phu Luong, Thai Nguyen" +1712376,PHUNG KHU PU,1987-07-18,"Huyen Dinh Hoa, Thai Nguyen" +1712377,MA THI YEN NHI,1988-07-07,"Huyen Binh Lieu, Quang Ninh" +1712378,DINH THUY NGAN,1988-01-05,"Huyen Pho Yen, Thai Nguyen" +1712379,BANG THI DUYEN,1985-12-17,"Thanh pho Thai Nguyen, Thai Nguyen" +1712486,NGUYEN THI NGOC KHANH,1987-12-17,"Huyen Pho Yen, Thai Nguyen" +1712487,NGUYEN QUYNH TRANG,1989-02-05,"Huyen Dai Tu, Thai Nguyen" +1712488,DOI THI DIEU TIEN,1986-02-06,"Huyen Dai Tu, Thai Nguyen" +1712489,HOANG HUYEN TRANG,1988-03-19,"Thanh pho Thai Nguyen, Thai Nguyen" +1712490,DO DINH DUY,1990-11-17,"Thi xa Song Cong, Thai Nguyen" +1712491,NGUYEN HOANG HIEU,1989-02-24,"Huyen Lam Thao, Phu Tho" +1712492,NGUYEN THI NHI,1988-01-27,"Thanh pho Thai Nguyen, Thai Nguyen" +1712493,NGO QUANG DUONG,1986-02-20,"Huyen Phu Luong, Thai Nguyen" +1712494,MO THI THANH KIM HUE,1991-01-16,"Thi xa Song Cong, Thai Nguyen" diff --git a/Bak/student_course.csv b/Bak/student_course.csv new file mode 100644 index 0000000..e3e7623 --- /dev/null +++ b/Bak/student_course.csv @@ -0,0 +1,33 @@ +1712350;c1003,b2002;9,8;13 +1712351;b2004,d3003;20,0;13 +1712352;b2003,c1005,c1004,sub1_L03;8,9,10,-1;13 +1712353;b2002,d3004,d3005;-1,0,0;13 +1712354;b2001,c1002,b2005;6,7,7;13 +1712355;c1005,b2005,b2001;9,8,8;13 +1712356;a2008,a2009,b2002;4,8,-1;13 +1712357;c1003,b2002,a2003;10,9,9;13 +1712358;a2002,b2003,c1003;5,4,6;13 +1712359;d3002,b2002,c1005;8,6,7;13 +1712360;d3005,a2005,d3002;3,8,9;13 +1712361;d3004,b2003,d3003;4,2,-1;13 +1712371;d3002,d3004,b2002;3,-1,5;13 +1712372;b2005,a2007,d3001;2,6,9;13 +1712373;c1005,b2002,c1001;3,5,4;13 +1712374;a2004,b2001,c1004;6,2,7;13 +1712375;a2001,d3001,b2003,sub1_L03;7,4,5,-1;13 +1712376;a2001,d3002,b2001;8,8,7;13 +1712377;a2010,a2001,d3001;5,9,6;13 +1712378;a2001,d3002,a2010;9,8,7;13 +1712379;b2005,a2009,c1005;6,7,8;13 +1712486;a2005,c1003,c1001;10,6,9;13 +1712487;b2004,c1005,c1002;20,4,-1;13 +1712488;b2003,a2001,c1002;8,9,8;13 +1712489;b2002,d3002,c1002;2,3,6;13 +1712490;a2006,c1002,d3005;0,0,0;13 +1712491;c1004,c1001,b2002;2,3,5;13 +1712492;c1003,a2001,c1002;8,4,6;13 +1712493;a2007,d3004,d3001;9,3,-1;13 +1712494;b2001,a2006,d3005;10,8,9;13 +1712494;b2001,a2006,d3005;10,8,9;13 +1712494;b2001,a2006,d3005;10,8,9;13 +1712494;b2001,a2006,d3005;10,8,9;13 diff --git a/Bak/teacher.csv b/Bak/teacher.csv new file mode 100644 index 0000000..9158d77 --- /dev/null +++ b/Bak/teacher.csv @@ -0,0 +1,50 @@ +S0951,BUI QUOC TRUNG,1989-10-09,"01268024528","Huyen Bac Quang, Ha Giang" +S0952,NGUYEN THI NGOC,1991-05-02,"01262228406","Huyen Phong Tho, Lai Chau" +S0953,TRAN HUNG NGUYEN,1987-02-24,"01676288131","Huyen Dinh Hoa, Thai Nguyen" +S0954,NGUYEN TAN DUNG,1989-04-10,"0968562100","Huyen Tien Du, Bac Ninh" +S0955,DO THI THUONG,1990-02-08,"01264232833","Huyen Viet Yen, Bac Giang" +S0956,NGUYEN THI NHUNG,1987-01-14,"01249854229","Huyen Na Ri, Bac Kan" +S0957,NGUYEN THI LOAN,1990-07-10,"01235747029","Thi xa Song Cong, Thai Nguyen" +S0958,LE THI NGOC TRANG,1990-08-24,"01243175018","Huyen Pho Yen, Thai Nguyen" +S0959,TRAN CONG MINH,1990-11-23,"01686151088","Huyen Pho Yen, Thai Nguyen" +S0960,NGUYEN THI NGOC ANH,1988-04-13,"01672997174","Huyen Dong Hy, Thai Nguyen" +S0961,LA THI NGAT,1991-10-25,"01237300992","Huyen Phu Binh, Thai Nguyen" +S0962,PHAM THI MINH CHAM,1988-12-17,"01651757943","Huyen Yen Son, Tuyen Quang" +S0963,NGUYEN THI TUOI,1985-02-16,"0965570211","Thanh pho Lang Son, Lang Son" +S0964,LE MINH HUNG,1986-03-18,"01685174289","Thi xa Song Cong, Thai Nguyen" +S0965,ONG THI THU,1988-10-03,"01234640825","Huyen Son Dong, Bac Giang" +S0966,NGUYEN THI KHANH HUYEN,1985-06-18,"01688673221","Huyen Phu Binh, Thai Nguyen" +S0967,NGUYEN THANH NHON,1990-09-28,"01651137554","Thanh pho Thai Nguyen, Thai Nguyen" +S0968,NGUYEN THI HONG,1988-10-23,"0981689837","Huyen Chi Lang, Lang Son" +S0969,THIEU THI DUNG,1986-12-14,"01658590942","Huyen Bao Lam, Cao Bang" +S0970,NGUYEN HUU THANG,1988-04-15,"0966094621","Huyen Pho Yen, Thai Nguyen" +S0971,TA THI HOAI THUONG,1989-12-21,"01671984944","Huyen Muong Te, Lai Chau" +S0972,MAI VIET ANH,1990-02-02,"0987525935","Huyen Mai Son, Son La" +S0973,KHUC THI THANH XUYEN,1991-12-20,"01269605742","Thanh pho Thai Nguyen, Thai Nguyen" +S0974,VU THI MAI,1988-08-03,"0983964837","Thanh pho Thai Nguyen, Thai Nguyen" +S0975,NGUYEN VAN TU,1991-05-15,"01651078560","Thanh pho Thai Nguyen, Thai Nguyen" +S0976,NINH VAN GIANG,1990-02-06,"01682298994","Thanh pho Thai Nguyen, Thai Nguyen" +S0977,TRIEU THI YEN NHI,1988-06-22,"0965488514","Huyen Cho Moi, Bac Kan" +S0978,NGUYEN THI BUNG,1987-04-13,"01681130368","Thanh pho Lao Cai, Lao Cai" +S0979,NGUYEN TRONG TON,1985-03-03,"01651968803","Huyen Quang Xuong, Thanh Hoa" +S0980,TRAN THUY LINH,1987-11-12,"01683529386","Huyen Dinh Hoa, Thai Nguyen" +S0981,TRAN VAN THE,1988-03-20,"01677867647","Huyen Dong Hy, Thai Nguyen" +S0982,NGUYEN MINH DUC,1989-01-04,"01248224532","Huyen Vo Nhai, Thai Nguyen" +S0983,NGUYEN CONG THUC,1985-11-14,"01677048699","Thanh pho Yen Bai, Yen Bai" +S0984,CAO XUAN VU,1990-01-11,"01263131000","Thi xa Song Cong, Thai Nguyen" +S0985,PHAM LAN CHINH,1985-01-04,"0987285420","Huyen Pho Yen, Thai Nguyen" +S0986,NGUYEN QUANG HUY,1988-12-12,"01658548002","Huyen Dinh Hoa, Thai Nguyen" +S0987,TRAN HIEN CHUNG,1990-09-21,"01232341463","Huyen Dai Tu, Thai Nguyen" +S0988,LE THI QUYNH TRANG,1990-10-21,"01244931089","Huyen Phu Binh, Thai Nguyen" +S0989,CHU BA THANH,1987-10-04,"0967479093","Huyen Pho Yen, Thai Nguyen" +S0990,HOANG LONG THANG,1985-01-24,"01261757930","Huyen Tan Yen, Bac Giang" +S0991,DUONG THANH CONG,1990-01-21,"01659655144","Thanh pho Thai Nguyen, Thai Nguyen" +S0992,DANG DUC DAI,1991-04-19,"01674865304","Huyen Dong Hy, Thai Nguyen" +S0993,DO THI MAI,1990-12-17,"01672218926","Huyen Si Ma Cai, Lao Cai" +S0994,CHAU THI NGUYET,1987-03-08,"01262412050","Thi xa Song Cong, Thai Nguyen" +S0995,TRIEU THI THAO,1985-12-04,"01263314285","Thi xa Song Cong, Thai Nguyen" +S0996,NGUYEN THI HOANG ANH,1990-02-25,"0984679722","Huyen Pho Yen, Thai Nguyen" +S0997,DANG THI HUONG,1987-12-05,"01657457229","Huyen Dong Hy, Thai Nguyen" +S0998,PHAM THI HIEN,1986-10-12,"01265612176","Huyen Bach Thong, Bac Kan" +S0999,TRUONG THI HANH,1991-12-20,"01657495907","Huyen Phu Luong, Thai Nguyen" +S1000,NGUYEN THI NGOC ANH,1991-08-22,"01657462318","Thanh pho Thai Nguyen, Thai Nguyen" diff --git a/Bak/user.csv b/Bak/user.csv new file mode 100644 index 0000000..28c16c4 --- /dev/null +++ b/Bak/user.csv @@ -0,0 +1,81 @@ +1712350,123456,student +1712351,1712351,student +1712352,1712352,student +1712353,1712353,student +1712354,1712354,student +1712355,abc123,student +1712356,1712356,student +1712357,1712357,student +1712358,1712358,student +1712359,1712359,student +1712360,1712360,student +1712361,1712361,student +1712371,1712371,student +1712372,haidang,student +1712373,1712373,student +1712374,1712374,student +1712375,1712375,student +1712376,1712376,student +1712377,1712377,student +1712378,1712378,student +1712379,1712379,student +1712486,1712486,student +1712487,1712487,student +1712488,1712488,student +1712489,1712489,student +1712490,1712490,student +1712491,1712491,student +1712492,1712492,student +1712493,1712493,student +1712494,1712494,student +S0951,Sabcd,teacher +S0952,S0952,teacher +S0953,S0953,teacher +S0954,S0954,teacher +S0955,S0955,teacher +S0956,S0956,teacher +S0957,S0957,teacher +S0958,hahu,teacher +S0959,S0959,teacher +S0960,S0960,teacher +S0961,S0961,teacher +S0962,S0962,teacher +S0963,S0963,teacher +S0964,S0964,teacher +S0965,S0965,teacher +S0966,S0966,teacher +S0967,S0967,teacher +S0968,S0968,teacher +S0969,S0969,teacher +S0970,S0970,teacher +S0971,S0971,teacher +S0972,S0972,teacher +S0973,S0973,teacher +S0974,S0974,teacher +S0975,S0975,teacher +S0976,S0976,teacher +S0977,S0977,teacher +S0978,S0978,teacher +S0979,S0979,teacher +S0980,S0980,teacher +S0981,S0981,teacher +S0982,S0982,teacher +S0983,S0983,teacher +S0984,S0984,teacher +S0985,S0985,teacher +S0986,S0986,teacher +S0987,S0987,teacher +S0988,S0988,teacher +S0989,S0989,teacher +S0990,S0990,teacher +S0991,S0991,teacher +S0992,S0992,teacher +S0993,S0993,teacher +S0994,S0994,teacher +S0995,S0995,teacher +S0996,S0996,teacher +S0997,S0997,teacher +S0998,S0998,teacher +S0999,S0999,teacher +S1000,S1000,teacher +admin,a,admin \ No newline at end of file diff --git a/Process.cpp b/Process.cpp index 5cc9dfb..62e9300 100644 --- a/Process.cpp +++ b/Process.cpp @@ -6,7 +6,6 @@ #include #include #include -#include using namespace std; @@ -475,11 +474,6 @@ bool teacherProcess(Teacher& tc, UserList& user_list, StudentCourseList& db_st_c } #pragma region Tien -void to_upper(string &s) { - for (size_t i = 0; i < s.length(); i++) { - s[i] = toupper(s[i]); - } -} bool adminMenu(Admin& ad, StudentList& db_st_list, TeacherList& db_tc_list, UserList& user_list) { @@ -545,7 +539,7 @@ bool adminProcess(Admin& ad, UserList& user_list, StudentList& db_st_list, Teach cout << "Add Student successful!" << endl; } else { - cout << "Add Student unsuccessful! May be the same username have exist." << endl; + cout << "Add Student unsuccessful!\nMay be error in your input or the same username have exist." << endl; } return true; } @@ -765,4 +759,5 @@ bool adminProcess(Admin& ad, UserList& user_list, StudentList& db_st_list, Teach } return false; } + #pragma endregion \ No newline at end of file diff --git a/student.csv b/student.csv index 1f10e25..e811163 100644 --- a/student.csv +++ b/student.csv @@ -28,3 +28,4 @@ 1712492,NGUYEN THI NHI,1988-01-27,"Thanh pho Thai Nguyen, Thai Nguyen" 1712493,NGO QUANG DUONG,1986-02-20,"Huyen Phu Luong, Thai Nguyen" 1712494,MO THI THANH KIM HUE,1991-01-16,"Thi xa Song Cong, Thai Nguyen" +1713484,NGUYEN MINH TIEN,26/10/1999,"LA" diff --git a/teacher.csv b/teacher.csv index 9158d77..27046f3 100644 --- a/teacher.csv +++ b/teacher.csv @@ -43,8 +43,4 @@ S0992,DANG DUC DAI,1991-04-19,"01674865304","Huyen Dong Hy, Thai Nguyen" S0993,DO THI MAI,1990-12-17,"01672218926","Huyen Si Ma Cai, Lao Cai" S0994,CHAU THI NGUYET,1987-03-08,"01262412050","Thi xa Song Cong, Thai Nguyen" S0995,TRIEU THI THAO,1985-12-04,"01263314285","Thi xa Song Cong, Thai Nguyen" -S0996,NGUYEN THI HOANG ANH,1990-02-25,"0984679722","Huyen Pho Yen, Thai Nguyen" -S0997,DANG THI HUONG,1987-12-05,"01657457229","Huyen Dong Hy, Thai Nguyen" -S0998,PHAM THI HIEN,1986-10-12,"01265612176","Huyen Bach Thong, Bac Kan" -S0999,TRUONG THI HANH,1991-12-20,"01657495907","Huyen Phu Luong, Thai Nguyen" -S1000,NGUYEN THI NGOC ANH,1991-08-22,"01657462318","Thanh pho Thai Nguyen, Thai Nguyen" +New_tc,ANH VAN,01/01/1999,"0123456789","Tp. HCM" diff --git a/user.csv b/user.csv index d3cfdc7..335be41 100644 --- a/user.csv +++ b/user.csv @@ -73,9 +73,6 @@ S0992,S0992,teacher S0993,S0993,teacher S0994,S0994,teacher S0995,S0995,teacher -S0996,S0996,teacher -S0997,S0997,teacher -S0998,S0998,teacher -S0999,S0999,teacher -S1000,S1000,teacher admin,a,admin +1713484,1713484,student +New_tc,New_tc,teacher