17
17
ADMIN_TOTAL_MONEY = 8
18
18
EMPLOYEE_MENU_PAGE = 9
19
19
EMPLOYEE_CREATE_ACCOUNT_PAGE = 10
20
+ EMPLOYEE_SHOW_DETAILS_PAGE1 = 11
21
+ EMPLOYEE_SHOW_DETAILS_PAGE2 = 12
20
22
# -------------------------------------------------------------------------------------------------------------
21
23
# === Reusable UI Component Functions ===
22
24
# -------------------------------------------------------------------------------------------------------------
@@ -572,6 +574,7 @@ def create_account_page(parent, title):
572
574
for i , field in enumerate (fields ):
573
575
field_frame , field_edit = create_input_field (form_frame , field ,min_label_size = (160 , 0 ))
574
576
form_layout .addWidget (field_frame )
577
+ field_edit .setFont (QtGui .QFont ("Arial" , 12 ))
575
578
if i == 0 :
576
579
name_edit = field_edit
577
580
elif i == 1 :
@@ -644,7 +647,7 @@ def create_account_page(parent, title):
644
647
background-color: #5a6268;
645
648
}
646
649
""" )
647
- back_btn .clicked .connect (lambda : parent .setCurrentIndex (ADMIN_MENU_PAGE ))
650
+ back_btn .clicked .connect (lambda : parent .setCurrentIndex (EMPLOYEE_MENU_PAGE ))
648
651
main_layout .addWidget (back_btn , 0 ,alignment = QtCore .Qt .AlignLeft )
649
652
650
653
return page ,( name_edit , Age_edit ,Address_edit ,Balance_edit ,Mobile_number_edit , account_type_dropdown ,submit_button )
@@ -668,6 +671,61 @@ def create_show_details_page1(parent, title):
668
671
main_layout .addWidget (content_frame )
669
672
670
673
return page ,(user_account_number ,submit_button )
674
+
675
+ def create_show_details_page2 (parent , title ):
676
+ page , main_layout = create_page_with_header (parent , title )
677
+ content_frame = create_styled_frame (page )
678
+ content_frame .setSizePolicy (QtWidgets .QSizePolicy .Preferred , QtWidgets .QSizePolicy .Expanding )
679
+ content_layout = QtWidgets .QVBoxLayout (content_frame )
680
+
681
+ form_frame = create_styled_frame (content_frame , min_size = (400 , 200 ), style = "background-color: #ffffff; border-radius: 15px; padding: 10px;" )
682
+ form_layout = QtWidgets .QVBoxLayout (form_frame )
683
+ form_frame .setSizePolicy (QtWidgets .QSizePolicy .Preferred , QtWidgets .QSizePolicy .Expanding )
684
+ form_layout .setSpacing (3 )
685
+
686
+ # Define input fields
687
+
688
+ labeles = ["Account No: " ,"Name: " , "Age:" , "Address: " , "Balance: " , "Mobile Number: " , "Account Type: " ]
689
+ for i in range (len (labeles )):
690
+ label_frame , input_field = create_input_field (form_frame , labeles [i ], min_label_size = (180 , 30 ))
691
+ form_layout .addWidget (label_frame )
692
+ input_field .setReadOnly (True )
693
+ input_field .setFont (QtGui .QFont ("Arial" , 12 ))
694
+ if i == 0 :
695
+ account_no_field = input_field
696
+ elif i == 1 :
697
+ name_field = input_field
698
+ elif i == 2 :
699
+ age_field = input_field
700
+ elif i == 3 :
701
+ address_field = input_field
702
+ elif i == 4 :
703
+ balance_field = input_field
704
+ elif i == 5 :
705
+ mobile_number_field = input_field
706
+ elif i == 6 :
707
+ account_type_field = input_field
708
+
709
+ exite_btn = create_styled_button (form_frame , "Exit" , min_size = (100 , 50 ))
710
+ exite_btn .setStyleSheet ("""
711
+ QPushButton {
712
+ background-color: #6c757d;
713
+ color: white;
714
+ border: none;
715
+ border-radius: 4px;
716
+ padding: 8px 16px;
717
+ font-size: 14px;
718
+ }
719
+ QPushButton:hover {
720
+ background-color: #5a6268;
721
+ }
722
+ """ )
723
+ exite_btn .clicked .connect (lambda : parent .setCurrentIndex (EMPLOYEE_MENU_PAGE ))
724
+ content_layout .addWidget (form_frame , 0 , QtCore .Qt .AlignHCenter | QtCore .Qt .AlignVCenter )
725
+ main_layout .addWidget (content_frame )
726
+ main_layout .addWidget (exite_btn )
727
+
728
+ return page ,(account_no_field ,name_field ,age_field ,address_field ,balance_field ,mobile_number_field ,account_type_field ,exite_btn )
671
729
672
730
# -------------------------------------------------------------------------------------------------------------
673
731
# === Main Window Setup ===
@@ -868,7 +926,7 @@ def update_employee_data(name, password, salary, position, name_to_update):
868
926
employee_menu_page , E_Create_Account , E_Show_Details , E_add_Balance , E_Withdraw_Money , E_Chack_Balanace , E_Update_Account , E_list_of_all_Members , E_Delete_Account , E_Back = create_employee_menu_page (stacked_widget ,"Employee Menu" )
869
927
# List of all page
870
928
E_Create_Account .clicked .connect (lambda : stacked_widget .setCurrentIndex (EMPLOYEE_CREATE_ACCOUNT_PAGE ))
871
- # E_Show_Details.clicked.connect(lambda: stacked_widget.setCurrentIndex(EMPLOYEE_SHOW_DETAILS_PAGE ))
929
+ E_Show_Details .clicked .connect (lambda : stacked_widget .setCurrentIndex (EMPLOYEE_SHOW_DETAILS_PAGE1 ))
872
930
# E_add_Balance.clicked.connect(lambda: stacked_widget.setCurrentIndex(EMPLOYEE_ADD_BALANCE_PAGE))
873
931
# E_Withdraw_Money.clicked.connect(lambda: stacked_widget.setCurrentIndex(EMPLOYEE_WITHDRAW_MONEY_PAGE))
874
932
# E_Chack_Balanace.clicked.connect(lambda: stacked_widget.setCurrentIndex(EMPLOYEE_CHECK_BALANCE_PAGE))
@@ -937,8 +995,28 @@ def add_account_form_submit(name, age, address, balance, account_type, mobile):
937
995
show_popup_message (stacked_widget , "Please fill in all fields" , EMPLOYEE_CREATE_ACCOUNT_PAGE )
938
996
# Add pages to stacked widget
939
997
940
- show_bank_user_data_page1 ,show_bank_user_other = create_show_details_page1 (stacked_widget , "Show Details" )
941
- show_bank_user_other [1 ].clicked .connect (lambda : print (show_bank_user_other [0 ].text ()))
998
+ show_bank_user_data_page1 ,show_bank_user_other1 = create_show_details_page1 (stacked_widget , "Show Details" )
999
+ show_bank_user_data_page2 ,show_bank_user_other2 = create_show_details_page2 (stacked_widget , "Show Details" )
1000
+
1001
+ show_bank_user_other1 [1 ].clicked .connect (lambda : show_bank_user_data_page1_submit_btn (int (show_bank_user_other1 [0 ].text ().strip ())))
1002
+ def show_bank_user_data_page1_submit_btn (name :int ):
1003
+ account_data = backend .get_details (name )
1004
+ if account_data :
1005
+ show_bank_user_other1 [0 ].setText ("" )
1006
+ show_bank_user_other2 [0 ].setText (str (account_data [0 ]))
1007
+ show_bank_user_other2 [1 ].setText (str (account_data [1 ]))
1008
+ show_bank_user_other2 [2 ].setText (str (account_data [2 ]))
1009
+ show_bank_user_other2 [3 ].setText (str (account_data [3 ]))
1010
+ show_bank_user_other2 [4 ].setText (str (account_data [4 ]))
1011
+ show_bank_user_other2 [5 ].setText (str (account_data [5 ]))
1012
+ show_bank_user_other2 [6 ].setText (str (account_data [6 ]))
1013
+ stacked_widget .setCurrentIndex (EMPLOYEE_SHOW_DETAILS_PAGE2 )
1014
+ else :
1015
+ show_popup_message (stacked_widget , "Account not found" , EMPLOYEE_SHOW_DETAILS_PAGE1 )
1016
+
1017
+
1018
+
1019
+
942
1020
stacked_widget .addWidget (home_page )#0
943
1021
stacked_widget .addWidget (admin_page )#1
944
1022
stacked_widget .addWidget (employee_page )#2
@@ -951,6 +1029,7 @@ def add_account_form_submit(name, age, address, balance, account_type, mobile):
951
1029
stacked_widget .addWidget (employee_menu_page )#9
952
1030
stacked_widget .addWidget (employee_create_account_page )#10
953
1031
stacked_widget .addWidget (show_bank_user_data_page1 )#11
1032
+ stacked_widget .addWidget (show_bank_user_data_page2 )#12
954
1033
955
1034
956
1035
0 commit comments