1、银行信息系统银行信息管理系统一、题目要求 设计一个银行信息管理系统,实现日常的功能,比如查询信息、存款、取款、贷款、还款、开户以及销户等功能,要求不同身份登录,以实现信息的安全性。二、需求分析 银行信息管理系统面向的使用对象有银行客户和银行管理人员两种不同的身份,所以要在登录时选择不同的身份登录。银行客户可以使用的功能如下:(1)查询自己的信息(2)修改自己的信息(3)修改密码(4)查询自己账户的存款、贷款和还款记录等信息。银行管理人员可以使用的客户操作功能如下:(1)开户和销户功能(2)给已经注册的客户进行存款开户和贷款开户(3)给客户办理取款、存款、贷款以及还款等业务(4)根据不同的查询项
2、目,查询到相应的客户信息和存款贷款信息。三、数据库设计 银行管理系统的E-R图如下页图片所示:根据实际情况,用11张表保存银行职工、银行客户、存款贷款关系等对象。表的具体设计以及数据的类型如下所示: branch表:保存银行信息 其中branch_name 表示银行名称,branch_city表示银行所在城市,assets表示银行的总资产。 account表:保存存款账号信息 其中account_number表示存款账号;balance表示存款数额;branch_name表示存款银行,参照branch表。depositor表:保存储户信息 customer_id表示客户ID,参照custome
3、r表;account_number表示存款号,参照account表;access_date表示存款日期。 customer表:保存客户个人信息customer_id表示客户ID;customer_name表示客户姓名;customer_street表示居住街道;customer_city表示居住城市;employee_id表示给该客户开户的银行工作人员的ID号;password表示用户密码。 loan表:保存贷款账号信息 loan_number表示贷款账号;amount表示贷款数额,branch_name 表示贷款开户的银行名称。 borrower表:保存贷款关系信息 customer_id表
4、示客户的ID号码,参照customer表;loan_number表示贷款账号,参照loan表。 payment表:保存还款记录 loan_number表示贷款号,参照loan表;payment_number表示还款号码;payment_date表示还款日期,payment_date表示还款金额。 employee表:保存银行职工信息 employee_id表示银行工作人员的ID号码;employee_name表示银行工作人员的姓名;manager_id表示所属经理的ID号码;telephone_number表示电话号码;employment_length表示工作年限;password表示登陆密
5、码;bank_name表示工作的银行名称。 dependent_name表:保存银行职工的家属信息 employee_id表示员工ID;dependent_name表示员工家属姓名。 checking_account表:保存支票信息 account_number表示存款账号;balance表示金额;overdraft_amount表示超支额度。saving_account表:保存存折信息 account_number表示存款号;balance表示金额;inter_rate表示存折利率。四、数据库关系图 根据银行管理的实际情况,做出如下参照,详细参照如下页图片所示:五、用户权限说明 用户类型分为
6、银行工作人员和银行顾客,登录时根据用户的不同显示不同的对话框,以实现不同用户的不同权限。 银行客户的权限如下所示:(1)查询自己的信息(2)修改自己除姓名和用户ID外的个人信息,比如居住地,居住街道等信息(3)修改密码(4)查询自己账户的存款、贷款和还款记录等信息。银行管理人员可以使用的客户操作权限如下:(1)开户和销户功能(2)给已经注册的客户进行存款开户和贷款开户(3)给客户办理取款、存款、贷款以及还款等业务(4)根据不同的查询项目,查询到相应的客户信息和存款贷款信息。六、功能模块设计 登陆对话框模块设计 程序开始运行时,弹出登录对话框。用户通过下拉列表框选择不同的身份,输入用户名和用户密
7、码,在“登陆”按钮的响应函数中根据用户类型在不同的表格中查找相关信息,如果查找到用户存在,则根据用户的不同身份显示不同的对话框。如果该用户是银行客户,则显示客户对话框,如果该用户是银行职工,则显示银行工作人员对话框。客户对话框模块设计 在弹出客户对话框时,在对话框的初始化函数中初始化List Control控件,然后调用SQL语句,查询当前登录客户的信息,然后调用显示函数将客户的信息(除密码)显示在List Control控件上,同时将客户对话框中的编辑按钮、确认按钮和EditBox和置为不可用,防止用户误点击。此时,当用户点击List Control控件中的某一行时,将个人信息显示在Edit
8、Box中,同时将编辑按钮置为可用,点击编辑按钮可以将部分允许编辑的的编辑框置为可编辑,然后将确认按钮置为可用。当用户点击查询存款账户信息时,调用SQL语句,查询相关内容,然后重新初始化List Control控件,将数据库中的相应记录显示在List Control控件上,点击查询贷款账户信息和查询还款记录时亦然,此时,用户点击List Control控件中的某一行,则不会将部分内容显示在编辑框中。点击修改密码按钮时,弹出修改密码对话框,在对话框中输入原始密码,然后输入两次新密码,如果新密码不相同或者原始密码错误,则不能成功修改密码。银行员工对话框模块设计 在对话框的初始化函数中,初始化List
9、 Control控件,将所有客户信息显示在List Control控件中。当银行客户有取款要求时,根据用户输入的存款账号、取款金额和密码,银行工作人员点击确认取款后,调用SQL语句,修改用户信息所在数据库中的记录值,如果余额不足,则不能成功取款。当银行客户有存款要求时,根据用户输入的存款账号和金额,点击确认按钮后在消息响应函数中响应函数调用SQL语句,修改用户信息所在数据库中的记录值,同时修改银行的总资产。若用户没有存款账户,则需先新建存款账户,如果在客户表中无记录,还要先开户,然后在添加存款账户。当存款或贷款账户金额为零时,系统将自动删除该账户,且当贷款账户为零时,系统在删除贷款账户时会将该
10、贷款账户的还款记录也一并删除。当客户还款时,程序还将在payment表中插入一条还款记录,还款号码为系统根据时间自动生成,以PA开头,以区分于存款和贷款账号。当银行工作人员点击开户按钮时,弹出开户对话框,用户ID由系统根据当前时间自动生成,用户的开户银行为默认银行工作人员所属的银行,且不可编辑,操作员ID默认为当前操作员的ID,且不可编辑。用户输入姓名、密码和街道地址等信息后,点击确定按钮,在消息响应函数中调用insert SQL语句,将信息插入到customer表中。当用户点击存款和贷款开户按钮时,弹出存款开户或贷款开户对话框,其中“时间”编辑框为获取当前系统时间(年月日),存款账户和贷款账
11、户由系统自动生成,存款账户以AC开头,贷款账户以LO开头,后加系统时间,以此区分,开户银行为默认银行工作人员所属的银行,且不可编辑。销户功能是将客户从customer表中删去,前提是用户的存款和贷款业务已经全部取走或还清,否则无法销户。当用户的存款和贷款业务均已完成后,输入用户的ID,然后调用delete SQL语句,在customer表中删去该用户的记录。查询功能根据用户选择的查询项目和对应值,在该项目对应的多个表中通过不同类的对象调用SQL语句查询该记录,查询到则重新根据查询到的记录集初始化List Control控件,显示相关的内容。七、程序设计 登陆对话框设计: 各控件以及关联的变量如
12、下表所示:控件名称控件ID关联变量响应函数属性组合框IDC_COMBO_LOGINCString m_LoginSelect登陆身份编辑框IDC_EDIT_USERNAMECString m_UserName用户名编辑框IDC_EDIT_PASSWORDCString m_PassWord密码命令按钮IDC_BTN_LOGINOnBtnLogin()登陆命令按钮IDC_BTN_ESCOnBtnEsc()退出点击“登陆”按钮时,响应函数判断组合框和编辑框的内容是否为空,如果为空,则提示用户重新输入,若不为空,则根据用户输入的用户名和密码在数据库中查找相关记录,如果找到记录,则弹出相应的对话框。
13、客户对话框设计:控件名称控件ID关联变量响应函数属性列表视图IDC_LIST_CUSOnClickListCus()分组框IDC_STATIC个人信息编辑框IDC_EDIT_CUS_IDCString m_cus_cusid客户ID编辑框IDC_EDIT_CUS_NAMECString m_cus_cusname客户姓名编辑框IDC_EDIT_CUS_CITYCString m_cus_cuscity城市编辑框IDC_EDIT_CUS_STREETCString m_cus_cusstreet居住街道命令按钮IDC_BTN_CUS_EDITOnBtnCusEdit()编辑命令按钮IDC_BTN
14、_CUS_CONFIRMOnBtnCusConfirm()确认修改命令按钮IDC_BTN_SEL_ACCOnBtnSelAcc()查找存款命令按钮IDC_BTN_SEL_LOANOnBtnSelLoan()查找贷款命令按钮IDC_BTN_SEL_PAYOnBtnSelPay()还款记录命令按钮IDC_BTN_EDIT_PWOnBtnEditPw()修改密码命令按钮IDC_BTN_CUS_ESCOnBtnCusEsc()退出 在客户对话框操作时,在对话框的初始化函数中初始化List Control控件,然后调用SQL语句,查询当前登录客户的信息,然后调用显示函数将客户的信息(除密码)显示在Lis
15、t Control控件上。此时,当用户点击List Control控件中的某一行时,将个人信息显示在EditBox中。当用户点击查询存款账户信息时,调用SQL语句,使用表类的对象在数据库中查询相关内容,然后重新初始化List Control控件,将数据库中的相应记录显示在List Control控件上,点击查询贷款账户信息和查询还款记录时亦然,此时,用户点击List Control控件中的某一行,则不会将部分内容显示在编辑框中。客户改密码对话框设计:控件名称控件ID关联变量响应函数属性编辑框IDC_EDIT_PWEXCStringm_edit_pwex原始密码编辑框IDC_EDIT_PWNEW
16、1CStringm_edit_pwnew1新密码编辑框IDC_EDIT_PWNEW2CString m_edit_pwnew2新密码命令按钮IDC_BTN_EDITPW_CONFIRMOnBtnEditpwConfirm()确认命令按钮IDC_BTN_EDITPW_ESCOnBtnEditpwEsc()退出 点击修改密码按钮时,弹出修改密码对话框,在对话框中输入原始密码,然后输入两次新密码,如果新密码不相同或者原始密码错误,则不能成功修改密码,如果成功修改密码,使用customer类的对象调用SQL语句更新数据库中的内容,则弹出对话框提示修改成功,下次登录时使用新密码。银行职工对话框设计:控件
17、名称控件ID关联变量响应函数属性列表视图IDC_LIST1CListCtrlm_CusList分组框IDC_STATIC取款分组框IDC_STATIC贷款分组框IDC_STATIC存款分组框IDC_STATIC还款分组框IDC_STATIC查询编辑框IDC_EDIT_OUTACCCString m_OutAcc取款账户编辑框IDC_EDIT_OUTAMOdouble m_OutAmo取款金额编辑框IDC_EDIT_PWDCString m_OutPwd密码编辑框IDC_EDIT_INACCCString m_InAcc存款账户编辑框IDC_EDIT_INAMOdouble m_InAmo存款金
18、额编辑框IDC_EDIT_LOAN_NUM_OUTCStringm_LoanNumOut贷款账号编辑框IDC_EDIT_LOAN_OUTAMOdoublem_LoanAmoOut贷款金额编辑框IDC_EDIT_LOAN_NUM_INCStringm_LoanNumIn还款账号编辑框IDC_EDIT_LOAN_INAMOdoublem_LoanAmoIn还款金额组合框IDC_COMBO_SELECTCStringm_item查询项目编辑框IDC_EDIT_SELECTCString m_lookfor查询值命令按钮IDC_BTN_OUT_CONFIRMOnBtnOutConfirm()取款命令按
19、钮IDC_BTN_INCONFIRMOnBtnInconfirm()存款命令按钮IDC_BTN_LOANOUTOnBtnLoanout()贷款命令按钮IDC_BTN_LOANINOnBtnLoanin()还款命令按钮IDC_BTN_SELECTOnBtnSelect()查询命令按钮IDC_BTN_ADDOnBtnAdd()开户命令按钮IDC_BTN_ADD_ACCOnBtnAddAcc()存款开户命令按钮IDC_BTN_ADD_LOANOnBtnAddLoan()贷款开户命令按钮IDC_BTN_DELCUSOnBtnDelcus()销户命令按钮IDC_BTN_ESCOnBtnEsc()退出 在
20、对话框的初始化函数中,初始化List Control控件,将所有客户信息显示在List Control控件中。当银行客户有取款要求时,根据用户输入的存款账号、取款金额和密码,银行工作人员点击确认取款后,调用SQL语句,修改用户信息所在数据库中的记录值,如果余额不足,则不能成功取款。当银行客户有存款要求时,根据用户输入的存款账号和金额,点击确认按钮后在消息响应函数中响应函数调用SQL语句,修改用户信息所在数据库中的记录值。若用户没有存款账户,则需先新建存款账户,如果在客户表中无记录,还要先开户,然后在添加存款账户。当客户还款时,程序还将在payment表中插入一条还款记录,还款号码为系统根据时间
21、自动生成,以PA开头,以区分于存款和贷款账号。当存款或贷款账户金额为零时,系统将自动删除该账户,且当贷款账户为零时,系统在删除贷款账户时会将该贷款账户的还款记录也一并删除。查询功能根据用户选择的查询项目和对应值,调用select SQL语句,在多个表中查询所需的数据,查询到则重新根据查询到的记录集初始化List Control控件,逐次显示查询到的相关内容。开户对话框设计:控件名称控件ID关联变量响应函数属性编辑框IDC_EDIT_ADD_IDCStringm_Add_Name客户ID编辑框IDC_EDIT_ADD_NAMECStringm_Add_Street姓名编辑框IDC_EDIT_AD
22、D_PWCStringm_Add_Pw密码编辑框IDC_EDIT_ADD_CITYCStringm_Add_ID城市编辑框IDC_EDIT_ADD_STREETCStringm_Add_City居住街道编辑框IDC_EDIT_ADD_EMPIDCStringm_Add_EmpID操作员ID命令按钮IDC_BTN_ADD_CONFIRMOnBtnAddConfirm()确认命令按钮IDC_BTN_ADD_ESCOnBtnAddEsc()退出当银行工作人员点击工作人员对话框上的开户按钮时,弹出开户对话框,用户ID由系统根据当前时间自动生成,用户的开户银行为默认银行工作人员所属的银行,且不可编辑,这
23、样可以防止银行工作人员输入出错,导致不符合参照要求插入出错的情况。操作员ID默认为当前操作员的ID,且不可编辑。用户输入姓名、密码和街道地址等信息后,点击确定按钮,在消息响应函数中使用customer类的对象调用insert SQL语句,将信息插入到customer表中。存款开户对话框设计:控件名称控件ID关联变量响应函数属性编辑框IDC_EDIT_ACC_NUMCStringm_accnum存款账号编辑框IDC_EDIT_CUSIDCStringm_accdate客户ID编辑框IDC_EDIT_BANKNAMECStringm_acccusid银行名称编辑框IDC_EDIT_ACCADD_D
24、ATECStringm_bankname存款日期命令按钮IDC_BTN_ADD_ACC_CONFIRMOnBtnAddAccConfirm()确认命令按钮IDC_BTN_ADDACC_ESCOnBtnAddaccEsc()退出当银行工作人员点击工作人员对话框上的存款开户按钮时,弹出存款开户对话框,其中“时间”编辑框为获取当前系统时间(年月日),且不可编辑,客户的存款账户由系统自动生成,存款账户以AC开头,后加系统时间,以此区分,开户银行为默认银行工作人员所属的银行,且不可编辑,也是为防止输入错误引起的参照不正常。贷款开户对话框设计:控件名称控件ID关联变量响应函数属性编辑框IDC_EDIT_A
25、DD_LOAN_IDCStringm_AddLoanID客户ID编辑框IDC_EDIT_ADD_LOAN_NUMCStringm_AddLoanNum贷款号编辑框IDC_EDIT_ADD_LOAN_BANKCStringm_AddLoanBank贷款银行命令按钮IDC_BTN_ADD_LOAN_CONFIRMOnBtnAddLoanConfirm()确认命令按钮IDC_BTN_ADD_LOAN_ESCOnBtnAddLoanEsc()退出当银行工作人员点击工作人员对话框上的贷款开户按钮时,弹出存款开户对话框,其中客户的存款账户由系统自动生成,存款账户以LO开头,后加系统时间,以此区分,开户银行
26、为默认银行工作人员所属的银行,且不可编辑,防止输入错误引起的参照不正常。销户对话框设计:控件名称控件ID关联变量响应函数属性编辑框IDC_EDIT_DEL_IDCStringm_DelCusID客户ID命令按钮IDC_BTN_DELCONFIRMOnBtnDelconfirm()确认命令按钮IDC_BTN_DEL_ESCOnBtnDelEsc()退出销户功能是将客户从customer表中删去,前提是用户的存款和贷款业务已经全部取走或还清,否则无法销户。当用户的存款和贷款业务均已完成后,输入用户的ID,然后通过customer类的对象调用delete SQL语句,在customer表中删去该用户
27、的记录。八、用户手册 银行客户手册: 1登录时输入自己的用户名和密码,选择银行客户登陆方式。 2登陆后可以点击上方自己的信息,点击后自己的信息将会显示在编辑框中,此时可以点击编辑按钮,修改自己的部分信息,用户名和ID不可修改,点击确认完成修改。修改成功后系统将弹出相应的对话框提示。 3点击界面上的“查询存款”按钮可以将自己的存款信息显示在上方的控件中。 4点击界面上的“查询贷款”按钮可以将自己的贷款信息显示在上方的控件中。 5点击界面上的“还款记录”按钮可以将自己的还款记录信息显示在上方的控件中,当还款记录过长时序拉动滚动条才能看到全部信息。 6点击修改密码对话框时会弹出修改密码对话框,输入原
28、始密码,然后输入两次新密码,如果原始密码错误或者新密码的两次输入不一致,则不能成功修改密码,成功修改密码后系统将弹出对话框提示修改成功。 银行工作人员手册: 1登录时输入自己的用户名和密码,选择管理员登陆方式。 2登陆后下方将显示全部的客户信息,根据用户输入的账号、金额和密码等信息可以为银行客户提供取款、存款、贷款和还款业务。 3根据查询项目不同可以查询不同的项目,例如按照客户ID查询,按照客户姓名查询,按照存款账号查询存款信息,按照贷款账号查询贷款信息。 4点击开户按钮可以在数据库中新添加一名用户,只有先添加一名用户才可以为该用户办理存款开户或者贷款开户业务。 5办理存款开户业务或者贷款开户业务时账号均为系统自动生成,根据客户输入点击确定即可完成该业务操作。 6点击销户时,如果客户还有未完成的存款或贷款业务,则不能为该客户办理销户业务,系统会弹出对话框提示操作失败。应先将该客户的存款取完和将贷款还清后才可以完成销户业务操作。九、程序运行截图登陆对话框:工作人员对话框:取款操作:存款操作:贷款操作:还款操作:查询操作:开户操作:存款开户操作:贷款开户操作:销户操作:客户登陆对话框:修改个人信息:查询存款:查询贷款:查询还款记录: 修改密码:
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2