1717ADMIN_TOTAL_MONEY = 8
1818EMPLOYEE_MENU_PAGE = 9
1919EMPLOYEE_CREATE_ACCOUNT_PAGE = 10
20+ EMPLOYEE_SHOW_DETAILS_PAGE1 = 11
21+ EMPLOYEE_SHOW_DETAILS_PAGE2 = 12
2022# -------------------------------------------------------------------------------------------------------------
2123# === Reusable UI Component Functions ===
2224# -------------------------------------------------------------------------------------------------------------
@@ -572,6 +574,7 @@ def create_account_page(parent, title):
572574 for i , field in enumerate (fields ):
573575 field_frame , field_edit = create_input_field (form_frame , field ,min_label_size = (160 , 0 ))
574576 form_layout .addWidget (field_frame )
577+ field_edit .setFont (QtGui .QFont ("Arial" , 12 ))
575578 if i == 0 :
576579 name_edit = field_edit
577580 elif i == 1 :
@@ -644,7 +647,7 @@ def create_account_page(parent, title):
644647 background-color: #5a6268;
645648 }
646649 """ )
647- back_btn .clicked .connect (lambda : parent .setCurrentIndex (ADMIN_MENU_PAGE ))
650+ back_btn .clicked .connect (lambda : parent .setCurrentIndex (EMPLOYEE_MENU_PAGE ))
648651 main_layout .addWidget (back_btn , 0 ,alignment = QtCore .Qt .AlignLeft )
649652
650653 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):
668671 main_layout .addWidget (content_frame )
669672
670673 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 )
671729
672730# -------------------------------------------------------------------------------------------------------------
673731# === Main Window Setup ===
@@ -868,7 +926,7 @@ def update_employee_data(name, password, salary, position, name_to_update):
868926 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" )
869927 # List of all page
870928 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 ))
872930 # E_add_Balance.clicked.connect(lambda: stacked_widget.setCurrentIndex(EMPLOYEE_ADD_BALANCE_PAGE))
873931 # E_Withdraw_Money.clicked.connect(lambda: stacked_widget.setCurrentIndex(EMPLOYEE_WITHDRAW_MONEY_PAGE))
874932 # 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):
937995 show_popup_message (stacked_widget , "Please fill in all fields" , EMPLOYEE_CREATE_ACCOUNT_PAGE )
938996 # Add pages to stacked widget
939997
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+
9421020 stacked_widget .addWidget (home_page )#0
9431021 stacked_widget .addWidget (admin_page )#1
9441022 stacked_widget .addWidget (employee_page )#2
@@ -951,6 +1029,7 @@ def add_account_form_submit(name, age, address, balance, account_type, mobile):
9511029 stacked_widget .addWidget (employee_menu_page )#9
9521030 stacked_widget .addWidget (employee_create_account_page )#10
9531031 stacked_widget .addWidget (show_bank_user_data_page1 )#11
1032+ stacked_widget .addWidget (show_bank_user_data_page2 )#12
9541033
9551034
9561035
0 commit comments