學(xué)生收費(fèi)管理系統(tǒng)_第1頁(yè)
學(xué)生收費(fèi)管理系統(tǒng)_第2頁(yè)
學(xué)生收費(fèi)管理系統(tǒng)_第3頁(yè)
學(xué)生收費(fèi)管理系統(tǒng)_第4頁(yè)
學(xué)生收費(fèi)管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、題 目: 學(xué)校收費(fèi)管理系統(tǒng) 學(xué) 院: 信息學(xué)院 專 業(yè): 網(wǎng)絡(luò)工程 姓 名: 湯佳慧 學(xué) 號(hào): 1101010137 班 級(jí): 信息A1111班 摘 要隨著學(xué)費(fèi)比重在高校教育經(jīng)費(fèi)比例中的提高,學(xué)生收費(fèi)管理已成為整個(gè)學(xué)校管理工作中的關(guān)鍵環(huán)節(jié)之一。在高校規(guī)模及招生規(guī)模增大,收費(fèi)項(xiàng)目增多,收費(fèi)難度、復(fù)雜度增加,工作量加大的情況下,高校學(xué)生收費(fèi)工作面臨著嚴(yán)峻的挑戰(zhàn)。因此,迫切需要開發(fā)一套高校學(xué)生收費(fèi)管理系統(tǒng)來(lái)實(shí)現(xiàn)高校收費(fèi)管理工作的系統(tǒng)化、自動(dòng)化、規(guī)范化,提高收費(fèi)工作效率。 基于學(xué)生收費(fèi)工作的實(shí)際需求,在對(duì)該校收費(fèi)系統(tǒng)建設(shè)環(huán)境、收費(fèi)組織結(jié)構(gòu)功能及業(yè)務(wù)流程進(jìn)行分析的基礎(chǔ)上,確定了高校學(xué)生收費(fèi)系統(tǒng)的性能需求

2、與設(shè)計(jì)原則,進(jìn)行了合理的系統(tǒng)功能模塊設(shè)計(jì)、總體流程設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、系統(tǒng)結(jié)構(gòu)選擇及網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)設(shè)計(jì)等工作,針對(duì)網(wǎng)絡(luò)版、單機(jī)版及網(wǎng)上查詢與催繳費(fèi)系統(tǒng)的不同,選擇了合適的開發(fā)工具。同時(shí),為了增強(qiáng)系統(tǒng)的可維護(hù)性,制定了詳細(xì)的系統(tǒng)開發(fā)規(guī)范。本系統(tǒng)網(wǎng)絡(luò)版已投入試運(yùn)行,但單機(jī)版及網(wǎng)上查詢與催繳費(fèi)系統(tǒng)還尚未開發(fā),隨著該校學(xué)分制的實(shí)施,基于學(xué)年制開發(fā)的該系統(tǒng)還需要進(jìn)行大量的修改與完善工作。 【關(guān)鍵字】功能模塊設(shè)計(jì) 主界面 學(xué)生收費(fèi)管理系統(tǒng) AbstractWith the increase of tuition proportion in the proportion of college education

3、 funds, student fees management has become one of the key link in the work of school management. In the scale and increased enrollment, charging projects increased, charging difficulty, complexity is increased, the increase in workload conditions, charging work of college students is facing severe c

4、hallenges. Therefore, systematization, automation, standardization is an urgent need to develop a set of college student fees management system to achieve the management fees, improve work efficiency.Based on the work of the actual needs of students fees, on the base of analysis on the school fee sy

5、stem construction environment, charging structure functions and business processes, performance requirements and design principles of college charge is determined, the reasonable design of function module of the system, the overall process design, database design, system structure and network topolo

6、gy design work, in view of the network version, stand-alone and on-line inquiry and the reminders payment system, select the appropriate development tools.At the same time, in order to enhance the system maintainability, developed a detailed system specifications.This system online has been put into

7、 trial operation, but stand-alone version and online query and urge payment system still hasn't been exploited, with the implement of credit system, based on the academic year system and development of the system also requires a lot of modification work and improvement. 【Key words】The function m

8、odule design;The main interface;Student fees management system目 錄前 言11 系統(tǒng)分析與總體設(shè)計(jì)21.1 系統(tǒng)需求分析21.2 系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)21.3 系統(tǒng)流程分析31.4 開發(fā)工具的選擇42 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)52.1 概念結(jié)構(gòu)分析52.2 邏輯結(jié)構(gòu)設(shè)計(jì)72.3 創(chuàng)建表的腳本文件93 設(shè)計(jì)工程框架133.1 創(chuàng)建工程并設(shè)置主界面133.2 為表添加類153.3 設(shè)計(jì)登錄模塊184 模塊設(shè)計(jì)204.1 基本信息管理模塊設(shè)計(jì)204.2 學(xué)生收費(fèi)管理模塊設(shè)計(jì)234.3 查詢統(tǒng)計(jì)模塊設(shè)計(jì)254.4 用戶管理模塊設(shè)計(jì)265 總結(jié)27參考文獻(xiàn)

9、28致 謝29前 言使用學(xué)校收費(fèi)管理系統(tǒng)可以大大提高高校收費(fèi)工作的工作效率,減少工作中可能出現(xiàn)的錯(cuò)誤,為學(xué)生提供更好的服務(wù),是提高學(xué)校自動(dòng)化水平的重要組成部分。本系統(tǒng)的開發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立、維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。本系統(tǒng)采用目前比較流行的ADO數(shù)據(jù)訪問(wèn)技術(shù),并將每個(gè)數(shù)據(jù)庫(kù)表的字段和操作封裝到類中,使應(yīng)用程序的各個(gè)窗體都能夠共享對(duì)表的操作,無(wú)需重復(fù)編碼,使程序更加易于維護(hù),從而成功的將面向?qū)ο蟮某绦蛟O(shè)局思想應(yīng)用到數(shù)據(jù)庫(kù)應(yīng)用程序設(shè)計(jì)中,這也是本系統(tǒng)的特色和優(yōu)勢(shì)。1 系統(tǒng)分析與總體設(shè)計(jì)要開發(fā)一個(gè)管理信息系統(tǒng),首先需要進(jìn)行需求分析和總體分析,分析系統(tǒng)的使用對(duì)象和用戶需求,設(shè)計(jì)系統(tǒng)的

10、體系結(jié)構(gòu)和數(shù)據(jù)庫(kù)結(jié)構(gòu),決定使用的開發(fā)工具和后臺(tái)數(shù)據(jù)庫(kù),規(guī)劃項(xiàng)目開發(fā)進(jìn)度。在實(shí)際的項(xiàng)目開發(fā)過(guò)程中,這些工作是非常重要的。1.1 系統(tǒng)需求分析學(xué)校收費(fèi)管理系統(tǒng)的用戶是各學(xué)校收費(fèi)工作的人員和相關(guān)領(lǐng)導(dǎo),實(shí)例包括基本信息管理、學(xué)校收費(fèi)管理和查詢統(tǒng)計(jì)管理等主要功能,基本功能如下:基本信息的添加、修改、刪除和查詢。基本信息包括院系信息、專業(yè)信息和學(xué)生信息。學(xué)校收費(fèi)管理包括收費(fèi)項(xiàng)目管理和學(xué)生收費(fèi)管理等功能。查詢統(tǒng)計(jì)管理包括按日詳細(xì)查詢和每月收費(fèi)統(tǒng)計(jì)等功能。 1.2 系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)根據(jù)需求分析中總結(jié)的用戶需求設(shè)計(jì)系統(tǒng)的體系結(jié)構(gòu)。系統(tǒng)的功能模塊圖如圖1.1所示。圖1.1 學(xué)校收費(fèi)管理系統(tǒng)功能模塊示意圖在功能模塊

11、示意圖的樹狀結(jié)構(gòu)中,每一個(gè)葉節(jié)結(jié)點(diǎn)都是一個(gè)最小的功能模塊。每一個(gè)功能模塊都需要針對(duì)不同的表完成相同的數(shù)據(jù)庫(kù)操作,即添加記錄、修改記錄、刪除記錄以及查詢顯示記錄信息?;拘畔⑹潜鞠到y(tǒng)管理的核心數(shù)據(jù),它為學(xué)校收費(fèi)管理模塊提供各種數(shù)據(jù)。院系信息包括院系名稱、院系職能描述等。專業(yè)信息包括院系信息、專業(yè)名稱和專業(yè)描述信息等。學(xué)生信息包括學(xué)生姓名、性別、所屬院系、專業(yè)、班級(jí)和入學(xué)年度等。在學(xué)生收費(fèi)管理模塊中,收費(fèi)項(xiàng)目信息包括專業(yè)信息、年度、學(xué)費(fèi)、雜費(fèi)、機(jī)時(shí)費(fèi)、保險(xiǎn)費(fèi)、書費(fèi)和資料費(fèi)等。學(xué)生收費(fèi)信息包括學(xué)生信息、收費(fèi)年度、收費(fèi)日期、應(yīng)交學(xué)費(fèi)、實(shí)交學(xué)費(fèi)、應(yīng)交雜費(fèi)、實(shí)交雜費(fèi)、應(yīng)交總計(jì)和實(shí)交總計(jì)等。在查詢統(tǒng)計(jì)模塊中

12、,按日詳細(xì)查詢信息包括學(xué)生信息、收費(fèi)年度、收費(fèi)日期、應(yīng)交學(xué)費(fèi)、實(shí)交學(xué)費(fèi)、應(yīng)交雜費(fèi)、實(shí)交雜費(fèi)、應(yīng)交總計(jì)、實(shí)交總計(jì)和所欠費(fèi)用合計(jì)等。每月收費(fèi)統(tǒng)計(jì)信息包括學(xué)生信息、收費(fèi)月份、專業(yè)名稱、學(xué)生總數(shù)、交費(fèi)總額和學(xué)費(fèi)總額等。本系統(tǒng)中,用戶管理模塊的功能比較簡(jiǎn)單。在系統(tǒng)初始化時(shí),有兩個(gè)默認(rèn)的用戶。系統(tǒng)管理員用戶為Admin,普通用戶為Users,由程序設(shè)計(jì)人員手動(dòng)地添加到數(shù)據(jù)庫(kù)中(它們的默認(rèn)密碼為111111)。Admin用戶可以創(chuàng)建用戶、修改用戶信息以及刪除用戶;普通用戶則只能修改自己的用戶名和密碼。用戶管理功能模塊的關(guān)系如圖1.2所示。圖1.2 用戶管理功能集合模塊關(guān)系圖1.3 系統(tǒng)流程分析運(yùn)行系統(tǒng)后,首

13、先會(huì)看到登錄窗體,對(duì)用戶的身份進(jìn)行認(rèn)證。身份認(rèn)證可以分為以下兩個(gè)過(guò)程:確認(rèn)用戶是否是有效的系統(tǒng)用戶。確定用戶的類型。第個(gè)過(guò)程決定用戶能否進(jìn)入系統(tǒng),第個(gè)過(guò)程根據(jù)用戶的類型決定用戶的操作權(quán)限。如果需要對(duì)普通用戶進(jìn)行管理,則使用Admin用戶登錄;否則建議使用Users用戶登錄。如果還要?jiǎng)?chuàng)建其他用戶,可以再用戶管理模塊中創(chuàng)建和管理。在創(chuàng)建用戶時(shí),需要輸入要?jiǎng)?chuàng)建的用戶名和密碼。Admin用戶還可以修改和刪除其他普通用戶數(shù)據(jù)。本系統(tǒng)的流程分析如圖1.3所示。圖1.3 系統(tǒng)流程分析圖在系統(tǒng)流程分析圖中可以看到,每個(gè)用戶有3次機(jī)會(huì)進(jìn)行身份認(rèn)證。如果3次輸入的用戶名和密碼都無(wú)法與數(shù)據(jù)庫(kù)中的數(shù)據(jù)匹配,則強(qiáng)制退出

14、系統(tǒng)。1.4 開發(fā)工具的選擇開發(fā)數(shù)據(jù)庫(kù)管理信息系統(tǒng)需要選擇兩種工具,即前臺(tái)開發(fā)語(yǔ)言和后臺(tái)數(shù)據(jù)庫(kù)。在本系統(tǒng)中,前臺(tái)開發(fā)語(yǔ)言選擇的是Visual C+,后臺(tái)數(shù)據(jù)庫(kù)選擇的是SQL Server 2005。2 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)2.1 概念結(jié)構(gòu)分析(1)總E-R模型如圖2.1所示:圖2.1 總E-R模型圖(2)院系開設(shè)專業(yè)信息E-R圖,如圖2.2所示。圖2.2 院系開設(shè)專業(yè)信息E-R圖(3)專業(yè)與學(xué)生關(guān)系E-R圖,如圖2.3所示。圖2.3 專業(yè)與學(xué)生關(guān)系E-R圖(4)學(xué)生依據(jù)收費(fèi)項(xiàng)目表交費(fèi)E-R圖,如圖2.4所示。圖2.4 學(xué)生依據(jù)收費(fèi)項(xiàng)目表交費(fèi)E-R圖(6)學(xué)生與收費(fèi)信息關(guān)系E-R圖,如圖2.5所示。圖

15、2.5 學(xué)生與收費(fèi)信息關(guān)系E-R圖2.2 邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)名稱為ChargeManage。數(shù)據(jù)庫(kù)中包括6個(gè)表,即院系信息表DepInfo、專業(yè)信息表Speciality、學(xué)生信息表Student、收費(fèi)項(xiàng)目表ChargeItem、收費(fèi)信息表StuCharge和用戶信息表UserInfo。下面分別介紹這些表的結(jié)構(gòu)。(1) 院系信息表DepInfo,用來(lái)保存院系信息。本系統(tǒng)采取樹狀結(jié)構(gòu)來(lái)管理院系數(shù)據(jù),也就是在院系之間建立從屬關(guān)系。表結(jié)構(gòu)如表2.1所示。表2.1 表DepInfo的結(jié)構(gòu):編號(hào)字段名稱數(shù)據(jù)類型說(shuō)明1DepIdint院系編號(hào) (主鍵)2DepNamevarchar(50)院系名稱3Des

16、cribesvarchar(250)院系職能描述4UIDint上級(jí)院系編號(hào)(2)專業(yè)信息表Speciality,用來(lái)保存各個(gè)院系的專業(yè)信息。表結(jié)構(gòu)如表2.2所示。表2.2 表Speciality的結(jié)構(gòu)編號(hào)字段名稱數(shù)據(jù)類型說(shuō)明1SpeIdint專業(yè)編號(hào) (主鍵)2Namevarchar(50)專業(yè)名稱3DepIdint院系編號(hào) 4Describesvarchar(200)專業(yè)描述(3) 學(xué)生信息表Student,用來(lái)保存每個(gè)在校學(xué)生的基本信息。表結(jié)構(gòu)如表2.3所示。表2.3 表Student的結(jié)構(gòu)編號(hào)字段名稱數(shù)據(jù)類型說(shuō)明1StuIdint學(xué)生編號(hào) (主鍵)2Namevarchar(50)姓名3S

17、exchar(20)性別4DepIdint院系編號(hào) 5SpeIdint專業(yè)編號(hào)6ClassNamevarchar(20)班級(jí)名稱7iYearint入學(xué)年度8IdCardvarchar(20)身份證號(hào)9Zhusuchar(2)是否住宿10CunChechar(2)是否存車11PinKunchar(2)是否貧困生12FillinPersonvarchar(30)填表用戶13FillinTimevarchar(20)填表時(shí)間和日期(4) 收費(fèi)項(xiàng)目表ChargeItem,用來(lái)保存各個(gè)收費(fèi)項(xiàng)目的信息。表結(jié)構(gòu)如表2.4所示。表2.4 表ChargeItem的結(jié)構(gòu)編號(hào)字段名稱數(shù)據(jù)類型說(shuō)明1ItemIdint

18、項(xiàng)目編號(hào) (主鍵)2SpeIdint專業(yè)編號(hào)3iYearint年度4Tuitionfloat學(xué)費(fèi)5Zafeifloat雜費(fèi)6Jishifeifloat機(jī)時(shí)費(fèi)7Baoxianfeifloat保險(xiǎn)費(fèi)8Zhusufeifloat住宿費(fèi)9Cunchefeifloat存車費(fèi)10Shufeifloat書費(fèi)11Ziliaofeifloat資料費(fèi)(5)收費(fèi)信息表StuCharge,用來(lái)保存學(xué)生收費(fèi)信息。表結(jié)構(gòu)如表2.5所示。表2.5 表StuCharge的結(jié)構(gòu)編號(hào)字段名稱數(shù)據(jù)類型說(shuō)明1ChgIdint編號(hào) (主鍵)2StuIdint學(xué)生編號(hào)3iYearint費(fèi)用年度4ChargeDatadatetime收費(fèi)日

19、期5Yingjiaoxuefeifloat應(yīng)交學(xué)費(fèi)6Shijiaoxuefeifloat實(shí)交學(xué)費(fèi)7Yingjiaozafeifloat應(yīng)交雜費(fèi)8Shijiaozafeifloat實(shí)交雜費(fèi)9Yingjiaojishifeifloat應(yīng)交機(jī)時(shí)費(fèi)10Shijiaojishifeifloat實(shí)交機(jī)時(shí)費(fèi)11Yingjiaobaoxianfeifloat應(yīng)交保險(xiǎn)費(fèi)12Shijiaobaoxianfeifloat實(shí)交保險(xiǎn)費(fèi)13Yingjiaozhusufeifloat 應(yīng)交住宿費(fèi)14Shijiaozhusufeifloat實(shí)交住宿費(fèi)15Yingjiaoshufeifloat應(yīng)交書費(fèi)16Shijiaoshuf

20、eifloat實(shí)交書費(fèi)17Yingjiaoziliaofeifloat應(yīng)交資料費(fèi)18Shijiaoziliaofeifloat實(shí)交資料費(fèi)19YingjiaoTotalfloat應(yīng)交總額20ShijiaoTotalfloat實(shí)交總額21Memovarchar(400)備注(6)用戶信息表UserInfo,用來(lái)保存系統(tǒng)各個(gè)用戶的信息。表結(jié)構(gòu)如表2.6所示。表2.6 表UserInfo的結(jié)構(gòu)編號(hào)字段名稱數(shù)據(jù)類型說(shuō)明1UserNamevarchar(50)用戶名(主鍵)2Passwdvarchar(50)密碼3UserTypetinyint用戶類型(1-系統(tǒng)管理員用戶2-普通用戶)在表的結(jié)構(gòu)表中興義每

21、一個(gè)表的主鍵,為了規(guī)定各表之間的關(guān)系,還需要定義一組外鍵,如表2.7所示。表2.7 外鍵定義關(guān)系名主鍵表主鍵字段外鍵表外鍵字段FK_Student_DepInfoDepInfoDepIdStudentDepId FK_Specially_DepInfoDepInfoDepIdSpecialityDepIdFK_Student_SpecialitySpecialitySpeIdStudentSpeIdFK_ChargeItem_SpecialitySpecialitySpeIdChargeItemSpeIdFK_StuCharge_StudentStudent StuIdStuChargeStu

22、Id2.3 創(chuàng)建表的腳本文件2.3.1 創(chuàng)建表DepInfo創(chuàng)建表DepInfo(院系信息表)的腳本文件為DepInfo.sql,它的代碼如圖2.6所示:圖2.6 創(chuàng)建表DepInfo2.3.2 創(chuàng)建表Specially創(chuàng)建表Specially(專業(yè)信息表)的腳本文件為Specially.sql,它的代碼如圖2.7所示:圖2.7 創(chuàng)建表Specially2.3.3 創(chuàng)建表Student創(chuàng)建表Student(學(xué)生信息表)的腳本文件為Student.sql,它的代碼如圖2.8所示:圖2.8 創(chuàng)建表Student 2.3.4 創(chuàng)建表ChargeItem創(chuàng)建表ChargeItem(收費(fèi)項(xiàng)目表)的腳本文

23、件為ChargeItem.sql,它的代碼如圖2.9所示:圖2.9 創(chuàng)建表ChargeItem2.3.5 創(chuàng)建表StuCharge創(chuàng)建表StuCharge(收費(fèi)信息表)的腳本文件為StuCharge.sql,它的代碼如圖2.10所示:圖2.10 創(chuàng)建表StuCharge2.3.6 創(chuàng)建表UserInfo創(chuàng)建表UserInfo(用戶信息表)的腳本文件為UserInfo.sql,它的代碼如圖2.11所示:圖2.11 創(chuàng)建表UserInfo在 創(chuàng)建表UserInfo的同時(shí),將默認(rèn)用戶Admin插入到表中。默認(rèn)的密碼為“111111”。3 設(shè)計(jì)工程框架3.1 創(chuàng)建工程并設(shè)置主界面本系統(tǒng)是一個(gè)基于對(duì)話框

24、的工程,工程名為ChargeManage,默認(rèn)的主對(duì)話框?yàn)镮DD_CHARGEMANAGE_DIALOG。參照表3.1設(shè)置主界面對(duì)話框的屬性。主界面如圖3.1所示。表3.1 設(shè)置主對(duì)話框的屬性屬性設(shè)置值Caption學(xué)校收費(fèi)管理系統(tǒng)Minimize BoxTrue圖3.1 創(chuàng)建工程并設(shè)置主界面屬性將ADO Data控件、DataGrid控件、DataCombo控件和DataList控件添加到工程中。在工程中添加類ADOConn。選擇背景圖片,操作如下:?jiǎn)螕簟癛esource View”選項(xiàng)卡,右鍵單擊“ChargeManage Resources”,選擇“Import”菜單項(xiàng),打開“Impor

25、t Resource”窗口,選擇背景圖片,將其添加到工程中。新添加的Bitmap資源ID值為IDB_BITMAP1,如圖3.2所示。圖3.2 新增的Bitmap資源拉動(dòng)對(duì)話框IDD_CHARGEMANAGE_DIALOG的邊框,將其調(diào)整到適當(dāng)?shù)拇笮?。在?duì)話框中添加一個(gè)Picture控件,右鍵單擊Picture控件,選擇Properties菜單項(xiàng),打開屬性窗口。在“Type”組合框中選擇Bitmap,在“Image”組合框中選擇IDB_BITMAP1。下面設(shè)置主界面的菜單。單擊“Resource View”選項(xiàng)卡,右鍵單擊“ChargeManage Resources”,選擇“Insert”菜單

26、項(xiàng),打開“Insert Resource”窗口,選擇“Menu”,然后單擊“New”按鈕,在ChargeManage Resources目錄下新增一個(gè)Menu的目錄項(xiàng),菜單ID為IDR_MENU1。雙擊此菜單,參照表3.2設(shè)置菜單項(xiàng)的屬性。表3.2 菜單IDR_MENU1的屬性標(biāo)題ID屬性基本信息管理.院系信息管理IDR_DEP.專業(yè)信息管理IDR_SPECIALITY.學(xué)生信息管理IDR_STUDNT.退出系統(tǒng)IDR_EXIT學(xué)生收費(fèi)管理.收費(fèi)項(xiàng)目管理IDR_CHARGE_INFO.學(xué)生收費(fèi)管理IDR_STU_CHARGE統(tǒng)計(jì)查詢.按日詳細(xì)查詢IDR_CHARGE_SEL.每月交費(fèi)統(tǒng)計(jì)IDR

27、_CHARGE_STAT系統(tǒng)用戶管理.用戶管理IDR_USER.修改密碼IDR_PASSWD打開對(duì)話框IDD_CHARGEMANAGE_DIALOG的屬性窗口,在Menu組合框中選擇IDR_MENU1。單擊 “運(yùn)行”按鈕,可以看到系統(tǒng)的主界面如圖3.3所示。圖3.3 系統(tǒng)主界面3.2 為表添加類為數(shù)據(jù)庫(kù)的每個(gè)表都創(chuàng)建一個(gè)類,類的成員變量對(duì)應(yīng)表的列,類的成員函數(shù)是對(duì)成員變量和表的操作。在系統(tǒng)菜單中選擇“Insert”/“New Class”,打開“New Class”窗口,選擇“Generic Class”,然后輸入類名,類的命名規(guī)則是大寫字母“C”加上表名。例如表Student對(duì)應(yīng)的類命名為C

28、Student。1. CDepInfoCDepInfo類是用來(lái)管理表DepInfo的數(shù)據(jù)庫(kù)的操作,該類的成員函數(shù)如表3.3所示。表3.3 CDepInfo類的成員函數(shù)函數(shù)名具體說(shuō)明CDepInfo初始化成員變量LoadDep讀取所有院系編號(hào)名稱和上級(jí)院系編號(hào)等信息到數(shù)組對(duì)象CStringArrary。此函數(shù)在把院系裝入到樹狀結(jié)構(gòu)的過(guò)程中將起重要的作用HaveName判斷指定的院系名稱是否已經(jīng)在數(shù)據(jù)庫(kù)中,參數(shù)paraName表示制定的院系名稱。返回-1表示不存在,返回1表示存在HaveSon判斷指定院系中是否存在下級(jí)院系。參數(shù)paraId表示指定的院系的編號(hào)。返回-1表示不存在,返回1表示存在。

29、此函數(shù)將在刪除院系數(shù)據(jù)之前調(diào)用,如果返回1,則不能刪除指定的院系HaveSpeciality判斷指定的院系中是否包含專業(yè)信息。參數(shù)paraId表示指定的院系的編號(hào)。返回-1表示不存在,返回1表示存在GetInfo讀取指定的院系記錄。參數(shù)paraId表示要讀取院系的編號(hào)SqlInsert插入新的院系記錄,返回新插入記錄的編號(hào)SqlUpdate修改指定的院系記錄。參數(shù)paraId表示要修改的院系的編號(hào)SqlDelete刪除指定的院系記錄。參數(shù)paraId表示要?jiǎng)h除的院系的編號(hào)Load_dep()函數(shù)是個(gè)批量讀取表DepInfo中數(shù)據(jù)的過(guò)程,讀取數(shù)據(jù)的條件是指定的上一級(jí)院系編號(hào)。程序?qū)⒃合禂?shù)據(jù)讀取到

30、3個(gè)CStringArray數(shù)組對(duì)象中,即a_DepId、a_DepName、a_UId,它們被定義為類CDepInfo的成員變量。CStringArray對(duì)象是支持CString對(duì)象的數(shù)組,包含在afxcoil.h中。程序首先將新紀(jì)錄插入到表DepInfo中,然后使用SELECT語(yǔ)句返回表DepInfo中最大的DepId字段值,并以此作為新紀(jì)錄的編號(hào)值返回。在添加院系記錄時(shí),程序需要得到新紀(jì)錄的院系編號(hào)值,并將其添加到Tree控件中。2. CSpeciality類CSpeciality類是用來(lái)管理表Speciality的數(shù)據(jù)庫(kù)的操作,該類的成員函數(shù)如表3.4所示。表3.4 CSpeciali

31、ty類的成員函數(shù)函數(shù)名具體說(shuō)明CSpeciality初始化成員變量LoadSep裝入專業(yè)信息到CStringArray數(shù)組對(duì)象HaveName判斷指定的專業(yè)名稱是否存在。參數(shù)paraName表示專業(yè)名稱HaveStu判斷指定的專業(yè)中是否包含學(xué)生。參數(shù)paraId表示記錄編號(hào)GetDepName返回專業(yè)信息所屬的院系名稱GetInfo讀取指定的記錄。參數(shù)paraId表示記錄編號(hào)SqlInsert插入新的記錄SqlUpdate修改指定的記錄。參數(shù)paraId表示記錄編號(hào)SqlDelete刪除指定的記錄。參數(shù)paraId表示要?jiǎng)h除的記錄編號(hào)程序調(diào)用m_AdoConn.GetRecordSet(vSQ

32、L)函數(shù)執(zhí)行SELECT語(yǔ)句,判斷指定的名稱是否存在。如果返回的結(jié)果集為空,則表示指定記錄不存在;否則表示記錄存在。3. CStudent類CStudent類是用來(lái)管理表Student的數(shù)據(jù)庫(kù)的操作,該類的成員函數(shù)如表3.5所示。表3.5 CStudent類的成員函數(shù)函數(shù)名具體說(shuō)明CStudent初始化成員變量GetName根據(jù)指定的學(xué)生編號(hào)讀取學(xué)生姓名。參數(shù)paraId表示學(xué)生編號(hào)GetInfo讀取指定的記錄。參數(shù)paraId表示記錄編號(hào)SqlDelete刪除指定的記錄。參數(shù)paraId表示要?jiǎng)h除的記錄編號(hào)SqlInsert插入新的記錄SqlUpdate修改指定的記錄。參數(shù)paraId表示記

33、錄編號(hào)4. CChargeItem類CChargeItem類是用來(lái)管理表 ChargeItem的數(shù)據(jù)庫(kù)的操作,該類的成員函數(shù)如表3.6所示。表3.6 CChargeItem類的成員函數(shù)函數(shù)名具體說(shuō)明CChargeItem初始化成員變量HaveSpe判斷指定的記錄是否存在。參數(shù)cItemName表示項(xiàng)目名稱GetInfo讀取指定的記錄。參數(shù)paraId表示記錄編號(hào)GetItemId返回項(xiàng)目編號(hào)。參數(shù)paraId表示專業(yè)編號(hào),cYear表示年度GetSum返回指定專業(yè)的收費(fèi)總額。參數(shù)paraId表示專業(yè)編號(hào),cYear表示年度SqlDelete刪除指定的記錄。參數(shù)paraId表示要?jiǎng)h除的記錄編號(hào)S

34、qlInsert插入新的記錄SqlUpdate修改指定的記錄。參數(shù)paraId表示記錄編號(hào)GetSum()函數(shù)的代碼如下:float CChargeItem:GetSum(CString paraId,CString cYear) /連接數(shù)據(jù)庫(kù) ADOConn m_AdoConn; m_AdoConn.OnInitADOConn(); /設(shè)置SELECT語(yǔ)句 _bstr_t vSQL; vSQL = "SELECT (Tuition+Incidental+MacTimeFee+Insurance+DormFee+""BicycleFee+BookFee+FileF

35、ee) AS cSum FROM ChargeItem "" WHERE SpeId = " + paraId + " And iYear = " + cYear; /執(zhí)行SELECT語(yǔ)句 _RecordsetPtr m_pRecordset; m_pRecordset = m_AdoConn.GetRecordSet(vSQL); if (m_pRecordset->adoEOF) return 0; else return atof(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("

36、cSum"); m_AdoConn.ExitConnect(); /斷開與數(shù)據(jù)庫(kù)的連接程序執(zhí)行SELECT語(yǔ)句,將指定專業(yè)和年份的所有費(fèi)用相加,將結(jié)果返回。5. CStuCharge類CStuCharge類是用來(lái)管理表StuCharge的數(shù)據(jù)庫(kù)的操作,該類的成員函數(shù)如表3.7所示。表3.7 CStuCharge類的成員函數(shù)函數(shù)名具體說(shuō)明CStuCharge初始化成員變量HaveChargeInfo判斷是否存在相同的交費(fèi)信息。參數(shù)paraId表示學(xué)生編號(hào),cYear表示交費(fèi)年度GetInfo讀取指定的記錄。參數(shù)paraId表示記錄編號(hào)SqlDelete刪除指定的記錄。參數(shù)paraId表

37、示要?jiǎng)h除的記錄編號(hào)SqlInsert插入新的記錄SqlUpdate修改指定的記錄。參數(shù)paraId表示記錄編號(hào)6. CUserInfo類CUserInfo類是用來(lái)管理表UserInfo的數(shù)據(jù)庫(kù)的操作,CUserInfo類的成員函數(shù)如表3.8所示。表3.8 CUserInfo類的成員函數(shù)函數(shù)名具體說(shuō)明CUserInfo初始化成員變量GetInfo讀取指定的記錄。參數(shù)paraId表示記錄編號(hào)IsExistUser判斷指定的用戶名是否已經(jīng)在數(shù)據(jù)庫(kù)中。參數(shù)paraUser表示用戶名SqlDelete刪除指定的記錄。參數(shù)paraId表示要?jiǎng)h除的記錄編號(hào)SqlInsert插入新的記錄SqlUpdate修改

38、指定的記錄。參數(shù)paraId表示記錄編號(hào)3.3 設(shè)計(jì)登錄模塊用戶要使用本系統(tǒng),首先必須通過(guò)系統(tǒng)的身份認(rèn)證,這個(gè)過(guò)程叫做登錄。當(dāng)前用戶的數(shù)據(jù)是全局有效的,在工程的任何位置都可以訪問(wèn)它。添加一個(gè)類CGlobal,用于保存全局變量。添加一個(gè)對(duì)話框,參照表3.9設(shè)置對(duì)話框的屬性。登錄對(duì)話框的界面如圖3.4所示。表3.9 設(shè)置主對(duì)話框的屬性屬性設(shè)置值具體說(shuō)明IDIDD_LOGIN_DIALOG對(duì)話框的ID值Caption登錄對(duì)話框?qū)υ捒虻臉?biāo)題條文本Font name宋體設(shè)置對(duì)話框中的字體Font size9設(shè)置對(duì)話框中的字號(hào)圖3.4 登錄對(duì)話框的界面輸入用戶名的編輯框?yàn)镮DC_USER_EDIT,輸入密

39、碼的編輯框?yàn)镮DC_PASSWD_EDIT。在屬性窗口中,選中編輯框IDC_PASSWD_EDI的Password屬性,這樣用戶在輸入數(shù)據(jù)是編輯框中只顯示“*”。在主對(duì)話框中添加代碼,使對(duì)話框在啟動(dòng)時(shí)首先打開登錄對(duì)話框。在ClassWizard窗口中添加CCarServiceDlg:OnInitDialog()函數(shù),并在其中添加如下代碼:CLoginDlg dlg;If(dlg.DoModal()!=IDOK)OnOK();else/讀取用戶信息到curUser對(duì)象中curUser.GetInfo(dlg.m_User);程序?qū)⒋蜷_登錄對(duì)話框,如果用戶不是通過(guò)單擊“確定”按鈕關(guān)閉登錄對(duì)話框,則

40、調(diào)用OnOK()函數(shù)關(guān)閉對(duì)話框。在登錄對(duì)話框的代碼中,用戶只有在通過(guò)身份認(rèn)證后才能調(diào)用OnOK()函數(shù)關(guān)閉對(duì)話框。因此可以判斷,如果dlg.DoModal()的返回值為IDOK,則表示用戶已經(jīng)通過(guò)了身份認(rèn)證。4 模塊設(shè)計(jì)4.1 基本信息管理模塊設(shè)計(jì)基本信息管理模塊可以實(shí)現(xiàn)以下功能:院系信息管理專業(yè)信息管理學(xué)生信息管理4.1.1 設(shè)計(jì)院系信息編輯對(duì)話框編輯院系信息的對(duì)話框可以用來(lái)添加和修改院系信息。該對(duì)話框的布局如圖4.1所示。圖4.1 院系信息編輯的對(duì)話框院系信息編輯對(duì)話框包含的主要控件及其屬性如表4.1所示。表4.1 院系信息編輯對(duì)話框中包含的主要控件及其屬性控件類型屬性屬性值Staitc

41、TextIDIDC_UPPER_STATIC(用于顯示上級(jí)院系名稱)Edit BoxIDIDC_DEPNAME_EDIT(用來(lái)編輯院系名稱)Edit BoxIDIDC_DEPNAME_EDIT(用來(lái)編輯院系的功能描述)Multiline選中(多行輸入)Auto VScroll自動(dòng)添加垂直滾動(dòng)條ButtonIDIDOKCaption確定ButtonIDIDCANCELCaption取消打開ClassWizard窗口,為院系信息編輯對(duì)話框創(chuàng)建類CDepEditDlg。參照表4.2為控件設(shè)置成員變量。表4.2 為控件設(shè)置成員變量控件ID類型成員變量名IDC_DEPNAME_EDITCStringm_

42、DepNameIDC_DEPNAME_EDITCStringm_DescribeIDC_UPPER_STATICCStringm_Upper4.1.2 設(shè)計(jì)院系信息管理對(duì)話框本系統(tǒng)中使用樹狀結(jié)構(gòu)來(lái)貓叔院系數(shù)據(jù),所以在院系信息管理對(duì)話框中添加Tree控件,ID屬性為IDC_TREE1。打開屬性窗口,選中如下屬性:Has buttons 表示在節(jié)點(diǎn)左側(cè)顯示展開和折疊的按鈕框;Has lines 表示在節(jié)點(diǎn)之間顯示連線;Client edge 表示控件的邊框呈3D效果。設(shè)置完成后在對(duì)話框中添加4個(gè)控件,使得院系信息管理的對(duì)話框的布局更加得美觀,效果如圖4.2所示。圖4.2 院系信息管理對(duì)話框布局4.

43、1.3 設(shè)計(jì)專業(yè)信息編輯對(duì)話框編輯專業(yè)信息的對(duì)話框可以用來(lái)添加和修改專業(yè)信息,它的對(duì)話框的布局如圖4.3所示。圖4.3 專業(yè)信息編輯對(duì)話框布局4.1.4 設(shè)計(jì)專業(yè)信息管理對(duì)話框?qū)I(yè)信息管理對(duì)話框的布局如圖4.4所示。圖4.4 專業(yè)信息管理對(duì)話框布局4.1.5 設(shè)計(jì)學(xué)生信息編輯對(duì)話框編輯學(xué)生基本信息的對(duì)話框可以用來(lái)添加和修改學(xué)生的基本信息,對(duì)話框的布局如圖4.6所示。圖4.6 編輯學(xué)生信息對(duì)話框布局4.1.6 設(shè)計(jì)學(xué)生信息選擇對(duì)話框在編輯學(xué)生收費(fèi)信息時(shí),要選擇學(xué)生信息。為了方便用戶在其他模塊中選擇學(xué)生,故設(shè)計(jì)了一個(gè)選擇學(xué)生的對(duì)話框,對(duì)話框的布局如圖4.7所示。圖4.7 選擇學(xué)生對(duì)話框布局該對(duì)話框

44、的主要控件及其屬性如表4.3所示。表4.3 選擇學(xué)生對(duì)話框包含的控件及其屬性控件ID屬性屬性值IDC_ADODC1ConnectionStringProvider=SQLOLEDB.1;Passwoed=sa;Persist Security Info=True;User ID=sa;Initial Catalog=ChargeManage;Data Source=127.0.0.1Visible取消CommandType8-Unknown CommandTypeIDC_DATALIST1BoundColumnStuIdListFieldNameRowSourceIDC_ADODC1IDC_T

45、REE1Has buttons選中Has line選中Client edge選中IDOKCaption確定IDCANCELCaption取消4.2 學(xué)生收費(fèi)管理模塊設(shè)計(jì)學(xué)生收費(fèi)管理是本系統(tǒng)的重要模塊,它的主要功能包括收費(fèi)項(xiàng)目管理學(xué)生收費(fèi)管理4.2.1 設(shè)計(jì)收費(fèi)項(xiàng)目編輯對(duì)話框收費(fèi)項(xiàng)目遍及對(duì)話框的布局如圖4.8所示。圖4.8 收費(fèi)項(xiàng)目編輯對(duì)話框布局4.2.2 設(shè)計(jì)收費(fèi)項(xiàng)目管理對(duì)話框收費(fèi)項(xiàng)目管理對(duì)話框的布局如圖4.9所示。圖4.9 收費(fèi)項(xiàng)目管理對(duì)話框布局4.2.3 設(shè)計(jì)學(xué)生收費(fèi)編輯對(duì)話框?qū)W生收費(fèi)編輯對(duì)話框的布局如圖4.10所示。圖4.10 學(xué)生收費(fèi)編輯對(duì)話框布局4.2.4 設(shè)計(jì)學(xué)生收費(fèi)管理對(duì)話框?qū)W生收費(fèi)管理對(duì)話框的布局如圖4.11所示。圖4.11 學(xué)生收費(fèi)管理對(duì)話框布局4.3 查詢統(tǒng)計(jì)模塊設(shè)計(jì)查詢統(tǒng)計(jì)模塊可以實(shí)現(xiàn)以下功能:日詳細(xì)查詢表月收費(fèi)統(tǒng)計(jì)表4.3.1 設(shè)計(jì)日詳細(xì)查詢表對(duì)話框日詳細(xì)查詢表可以按日查詢所有學(xué)生的各項(xiàng)收費(fèi)信息。它的對(duì)話框的布局如圖4.12所示。圖4.12 日詳細(xì)查詢表對(duì)話框布局程序根據(jù)選擇的院系信息和收費(fèi)日期設(shè)置SELECT語(yǔ)句,查詢指定院系中所有學(xué)生在選擇日期的收費(fèi)項(xiàng)目、已收費(fèi)信息和欠費(fèi)信息。4.3.2 設(shè)計(jì)月

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論