![校園圖書館管理系統(tǒng)方案_第1頁(yè)](http://file4.renrendoc.com/view/1a88c0d51bdabb9a49e0760b71dfc394/1a88c0d51bdabb9a49e0760b71dfc3941.gif)
![校園圖書館管理系統(tǒng)方案_第2頁(yè)](http://file4.renrendoc.com/view/1a88c0d51bdabb9a49e0760b71dfc394/1a88c0d51bdabb9a49e0760b71dfc3942.gif)
![校園圖書館管理系統(tǒng)方案_第3頁(yè)](http://file4.renrendoc.com/view/1a88c0d51bdabb9a49e0760b71dfc394/1a88c0d51bdabb9a49e0760b71dfc3943.gif)
![校園圖書館管理系統(tǒng)方案_第4頁(yè)](http://file4.renrendoc.com/view/1a88c0d51bdabb9a49e0760b71dfc394/1a88c0d51bdabb9a49e0760b71dfc3944.gif)
![校園圖書館管理系統(tǒng)方案_第5頁(yè)](http://file4.renrendoc.com/view/1a88c0d51bdabb9a49e0760b71dfc394/1a88c0d51bdabb9a49e0760b71dfc3945.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
..校園圖書館管理系統(tǒng)1產(chǎn)品主要功能和特色〔1本圖書館管理系統(tǒng)的主要功能如下表:表1-1功能名稱功能說明使用對(duì)象用戶登錄功能不同用戶登錄系統(tǒng),擁有不同的使用權(quán)限圖書館管理員、學(xué)生、員工圖書信息管理圖書入庫(kù)功能圖書館的現(xiàn)有圖書及后來購(gòu)入的圖書進(jìn)行圖書的入庫(kù)〔增添圖書的編碼、書名、購(gòu)買日期、價(jià)格等圖書信息圖書館管理員圖書信息編輯功能對(duì)系統(tǒng)內(nèi)的圖書信息〔出版社、版次、作者、內(nèi)容簡(jiǎn)介等進(jìn)行編輯處理借閱證管理借閱證辦理功能辦理新的借閱證圖書館管理員借閱證查詢功能查詢已辦理的借閱證列表,查看借閱證的狀態(tài)圖書館管理員、學(xué)生、員工借閱證掛失功能掛失借閱證圖書館管理員、學(xué)生、員工借閱證補(bǔ)辦功能補(bǔ)辦借閱證圖書館管理員借閱證注銷功能注銷借閱證圖書館管理員圖書借閱管理圖書借閱功能借閱者滿足借閱條件,借閱圖書時(shí),管理員對(duì)圖書狀態(tài)進(jìn)行修改圖書館管理員圖書歸還功能借閱者按要求歸還圖書時(shí),管理員對(duì)圖書狀態(tài)進(jìn)行修改借閱者未按要求歸還圖書時(shí),管理員對(duì)圖書狀態(tài)進(jìn)行修改,并對(duì)借閱者進(jìn)行相應(yīng)罰款和記錄圖書館管理員圖書掛失功能借閱者不能歸還圖書時(shí),對(duì)圖書進(jìn)行掛失,修改圖書庫(kù)存記錄圖書館管理員、學(xué)生、員工圖書續(xù)借功能借閱者滿足續(xù)借條件,需要續(xù)借圖書時(shí),可通過系統(tǒng)對(duì)圖書進(jìn)行續(xù)借,圖書借閱期限自動(dòng)進(jìn)行修改圖書館管理員、學(xué)生、員工圖書催還功能自動(dòng)生成逾期未歸還圖書的書目和借閱記錄,便于打印催還圖書館管理員信息查詢統(tǒng)計(jì)功能圖書查找功能輸入圖書的名字、關(guān)鍵字、作者等對(duì)圖書進(jìn)行查找;也可以分類查找圖書圖書館管理員、學(xué)生、員工圖書信息查詢功能可查詢圖書的相關(guān)信息〔作者、出版社、內(nèi)容簡(jiǎn)介、版次、存放地點(diǎn)、圖書狀態(tài)〔在館/出借和最快可借閱時(shí)間圖書館管理員、學(xué)生、員工借書歷史查詢功能登錄圖書館管理系統(tǒng)后,可以個(gè)人查詢圖書的借閱歷史情況,以及圖書借出時(shí)間和應(yīng)歸還時(shí)間,并提醒借閱者應(yīng)立即歸還的圖書圖書館管理員、學(xué)生、員工最新入庫(kù)的圖書查詢功能查詢顯示最新入庫(kù)的圖書信息圖書館管理員、學(xué)生、員工最熱借閱的圖書查詢功能查詢顯示最熱借閱的圖書信息圖書館管理員、學(xué)生、員工圖書借閱統(tǒng)計(jì)功能對(duì)一段時(shí)間里的這各種圖書借閱信息進(jìn)行分類匯總,顯示每一類的熱門圖書和借閱需求,也可統(tǒng)計(jì)借閱時(shí)間信息圖書館管理員、學(xué)生、員工圖書的收藏評(píng)論圖書的收藏功能借閱者可以對(duì)想要借閱,但受條件限制,必須下次借閱的圖書進(jìn)行收藏,以便下次借閱圖書館管理員、學(xué)生、員工圖書的評(píng)論功能對(duì)閱讀過的圖書可以發(fā)表讀后感,與他人分享對(duì)某本圖書的心得感想,也方便其他借閱者對(duì)圖書有更為全面直觀的了解2.產(chǎn)品中的角色角色名稱職責(zé)描述管理員除了具有普通用戶的對(duì)圖書信息的查詢?yōu)g覽功能,還具有管理權(quán)限。主要負(fù)責(zé)圖書館管理系統(tǒng)的基本管理,如圖書信息管理、借閱證管理、圖書借閱管理。學(xué)生、員工是圖書館管理系統(tǒng)前臺(tái)的使用者,可以進(jìn)行圖書信息的查詢?yōu)g覽、圖書評(píng)論、圖書續(xù)借、掛失,圖書借閱證查詢和掛失,查詢自己的借閱歷史。3.產(chǎn)品的功能性需求功能3.1功能類別子功能圖書信息統(tǒng)計(jì)查詢圖書信息查詢功能最熱借閱的圖書查詢功能圖書借閱分類統(tǒng)計(jì)功能功能3.2功能類別子功能圖書借閱管理功能〔特殊情況下的續(xù)借功能掛失圖書功能催還圖書功能功能3.3功能類別子功能圖書信息管理圖書入庫(kù)功能圖書信息編輯功能功能類別子功能信息查詢統(tǒng)計(jì)功能圖書查找功能最新入庫(kù)的圖書查詢功能功能3.4功能類別子功能圖書借閱管理功能〔一般情況下的圖書借閱功能圖書歸還功能用戶登錄功能登錄功能密碼修改功能功能3.5功能類別子功能借閱證管理借閱證辦理功能借閱證查詢功能借閱證掛失功能借閱證補(bǔ)辦功能借閱證注銷功能借書歷史查詢功能功能3.1.1名稱、標(biāo)識(shí)符圖書信息查詢功能功能描述管理員或?qū)W生可查詢圖書的相關(guān)信息〔作者、出版社、內(nèi)容簡(jiǎn)介、版次、存放地點(diǎn)、圖書狀態(tài)〔在館/出借和最快可借閱時(shí)間優(yōu)先級(jí)一般輸入索書號(hào)或圖書名操作序列1.獲取查詢者輸入的索書號(hào)或圖書名;2.查詢圖書表,找到匹配記錄;3.提取圖書信息,包括作者、出版社、內(nèi)容簡(jiǎn)介、版次、存放地點(diǎn)、圖書狀態(tài)和最快可借閱時(shí)間輸出圖書信息,包括作者、出版社、內(nèi)容簡(jiǎn)介、版次、存放地點(diǎn)、圖書狀態(tài)和最快可借閱時(shí)間補(bǔ)充說明名稱、標(biāo)識(shí)符最熱借閱的圖書查詢功能功能描述管理員或?qū)W生查詢顯示最熱借閱的圖書信息優(yōu)先級(jí)一般輸入查詢最熱借閱的圖書信息請(qǐng)求操作序列1.選定一段時(shí)間內(nèi)的借閱記錄,得到每本書及其借閱次數(shù)的視圖;2.將記錄按照書的借閱次數(shù)進(jìn)行排序,并選取前20名的圖書進(jìn)行顯示。輸出一段時(shí)間內(nèi)借閱次數(shù)排在前20名的圖書進(jìn)行顯示補(bǔ)充說明名稱、標(biāo)識(shí)符圖書最熱借閱分類統(tǒng)計(jì)功能功能描述對(duì)一段時(shí)間里的這各種圖書借閱信息進(jìn)行分類匯總,顯示每一類的熱門圖書優(yōu)先級(jí)一般輸入欲查詢的圖書的類別操作序列1.選定一段時(shí)間內(nèi)特定類別的圖書借閱記錄,得到該類別每本書及其借閱次數(shù)的視圖;2.將記錄按照書的借閱次數(shù)進(jìn)行排序,并選取前20名的圖書進(jìn)行顯示。輸出將特定類別的圖書,一段時(shí)間內(nèi)借閱次數(shù)排在前20名的進(jìn)行顯示補(bǔ)充說明功能3.2.1名稱、標(biāo)識(shí)符續(xù)借功能功能描述普通借閱時(shí)間上限為從圖書館借書之日起的30天,但借閱者如若對(duì)本書很感興趣,想多借幾天,就可以登錄本系統(tǒng),查看自己已借書目并在相應(yīng)書目后選擇"續(xù)借",其借閱時(shí)間就可以在原基礎(chǔ)上延長(zhǎng)15天。優(yōu)先級(jí)中輸入借閱證件號(hào),系統(tǒng)登錄密碼操作序列進(jìn)入系統(tǒng);查看已借閱未歸還書單;在欲續(xù)借書目后點(diǎn)擊"續(xù)借"按鈕,并確認(rèn)輸出彈出提示續(xù)借成功對(duì)話框補(bǔ)充說明若沒有已借閱未歸還的圖書,則不可完成此功能名稱、標(biāo)識(shí)符掛失功能功能描述當(dāng)借閱者借閱的圖書遺失后,帶著借閱證去圖書館管理臺(tái)由管理員登錄本系統(tǒng)完成掛失。管理員用其自己的賬號(hào)及密碼登錄系統(tǒng),輸入該借閱者的借閱證號(hào),看到已借閱的圖書,點(diǎn)擊"掛失"按鈕,將這本書存儲(chǔ)在數(shù)據(jù)庫(kù)中的狀態(tài)信息改為"掛失",并更改借閱證的狀態(tài)為"不可借",直到借閱者支付了丟失本書應(yīng)賠償?shù)娜拷痤~后,借閱證的狀態(tài)才可恢復(fù)為"可借"。優(yōu)先級(jí)高輸入管理員賬號(hào)、密碼,借閱證件號(hào)操作序列管理員登陸系統(tǒng);輸入借閱證號(hào);查找已丟失書目;點(diǎn)擊"掛失"按鈕,確認(rèn)掛失;輸出彈出提示已掛失對(duì)話框補(bǔ)充說明若無管理員賬號(hào)、密碼則不可完成此功能;若借閱證件號(hào)無效,則不可完成此功能;若沒有該書目項(xiàng),則不可完成此功能。名稱、標(biāo)識(shí)符催還功能功能描述如若借閱者未申請(qǐng)續(xù)借而已經(jīng)借書超過30天,或申請(qǐng)了續(xù)借而已經(jīng)借書超過45天,系統(tǒng)就會(huì)在管理員登錄后做出相應(yīng)提醒,列出名單告知有哪些借閱證所借圖書應(yīng)當(dāng)催還,并根據(jù)超期時(shí)間長(zhǎng)短算出借閱者應(yīng)繳費(fèi)用。優(yōu)先級(jí)高輸入管理員賬號(hào)、密碼操作序列管理員登陸系統(tǒng);點(diǎn)擊"查看催還名單"按鈕查看近日應(yīng)催還圖書以及借閱證件號(hào)輸出生成近日催還名單補(bǔ)充說明若無管理員賬號(hào)、密碼則不可完成此功能名稱、標(biāo)識(shí)符圖書入庫(kù)功能功能描述圖書館的現(xiàn)有圖書及后來購(gòu)入的圖書進(jìn)行圖書的入庫(kù)〔增添圖書的編碼、書名、購(gòu)買日期、價(jià)格等圖書信息優(yōu)先級(jí)輸入圖書的編碼、圖書名、購(gòu)買日期、價(jià)格操作序列1.對(duì)圖書進(jìn)行編碼2.將圖書編碼、書名、購(gòu)買日期、價(jià)格等圖書信息輸入數(shù)據(jù)庫(kù)3.輸出圖書的編碼、圖書名、購(gòu)買日期、價(jià)格補(bǔ)充說明名稱、標(biāo)識(shí)符圖書信息編輯功能功能描述對(duì)系統(tǒng)內(nèi)的圖書信息〔出版社、版次、作者、內(nèi)容簡(jiǎn)介等進(jìn)行編輯處理優(yōu)先級(jí)輸入查詢最熱借閱的圖書信息請(qǐng)求圖書的編碼操作序列1.輸入圖書的編碼2.找到需要編輯的信息3.對(duì)信息進(jìn)行編輯4.保存編輯后的信息輸出編輯后的圖書信息補(bǔ)充說明名稱、標(biāo)識(shí)符圖書查找功能功能描述輸入圖書的名字、關(guān)鍵字、作者等對(duì)圖書進(jìn)行查找;也可以分類查找圖書優(yōu)先級(jí)輸入欲查找的圖書的類別或圖書編號(hào)或圖書名稱操作序列1.選定整個(gè)數(shù)據(jù)庫(kù)的信息;2.按照用戶輸入的信息進(jìn)行查找3.將查找的圖書進(jìn)行排序輸出與用戶輸入信息相一致的有關(guān)圖書補(bǔ)充說明功能3.3.4名稱、標(biāo)識(shí)符最新入庫(kù)的圖書查詢功能功能描述查詢顯示最新入庫(kù)的圖書信息優(yōu)先級(jí)輸入欲查找最新入庫(kù)的圖書操作序列1.選定一段時(shí)間內(nèi)的圖書入庫(kù)記錄,得到每本書入庫(kù)時(shí)間的視圖;2.將記錄按照書的入庫(kù)時(shí)間進(jìn)行排序,并選取前20名的圖書進(jìn)行顯示。輸出最新入庫(kù)的有關(guān)圖書補(bǔ)充說明名稱、標(biāo)識(shí)符圖書借閱功能功能描述借閱者滿足借閱條件,借閱圖書時(shí),管理員對(duì)圖書狀態(tài)進(jìn)行修改優(yōu)先級(jí)輸入借閱證號(hào)、圖書編號(hào)操作序列1.輸入借閱者的借閱證號(hào)2.查詢?cè)摻栝喿C號(hào)的借閱記錄,是否滿足借閱條件〔是否還可以借書,是否有到期但尚未歸還的圖書,借閱證的狀態(tài)是否正確;3.輸入圖書編號(hào),添加至該借閱證的當(dāng)前借閱記錄中,記錄借閱時(shí)間,更改圖書的狀態(tài)——由在館變?yōu)榻璩?借閱證的還可借書的本數(shù)減14.完成圖書借閱輸出借閱證號(hào),借閱記錄,可借書的本數(shù),借到圖書的信息〔圖書編號(hào)、圖書名稱、借閱時(shí)間、應(yīng)歸還時(shí)間、實(shí)際歸還時(shí)間補(bǔ)充說明名稱、標(biāo)識(shí)符圖書歸還功能功能描述借閱者按要求歸還圖書時(shí),管理員對(duì)圖書狀態(tài)進(jìn)行修改借閱者未按要求歸還圖書時(shí),管理員對(duì)圖書狀態(tài)進(jìn)行修改,并對(duì)借閱者進(jìn)行相應(yīng)罰款和記錄優(yōu)先級(jí)輸入借閱證號(hào)、圖書編號(hào)操作序列1.輸入借閱者的借閱證號(hào)2.查詢?cè)摻栝喿C號(hào)的當(dāng)前借閱記錄,查看圖書編號(hào)的借閱和應(yīng)歸還時(shí)間,3.記錄實(shí)際歸還時(shí)間,更改圖書的狀態(tài)——由借出變?yōu)樵陴^,借閱證的還可借書的本數(shù)加14.完成圖書歸還輸出借閱證號(hào),借閱記錄,可借書的本數(shù),借到圖書的信息〔圖書編號(hào)、圖書名稱、借閱時(shí)間、歸還時(shí)間補(bǔ)充說明若實(shí)際歸還時(shí)間在應(yīng)歸還時(shí)間之內(nèi),則無其他記錄若實(shí)際歸還時(shí)間超出應(yīng)歸還時(shí)間,則有管理者對(duì)借閱者進(jìn)行相應(yīng)罰款和記錄名稱、標(biāo)識(shí)符登錄功能功能描述不同用戶登錄系統(tǒng),擁有不同的使用權(quán)限優(yōu)先級(jí)高輸入用戶名〔學(xué)生為學(xué)號(hào),員工為員工號(hào),管理員為用戶名,密碼〔初始密碼與用戶名相同操作序列1.輸入用戶名與密碼2.點(diǎn)擊登錄按鈕,登錄圖書館管理系統(tǒng)輸出登錄成功補(bǔ)充說明用戶名與密碼輸入錯(cuò)誤,則不能成功登錄管理員和用戶登錄后現(xiàn)實(shí)的界面不同功能3.4.4名稱、標(biāo)識(shí)符密碼修改功能功能描述用戶登錄之后,可以對(duì)密碼進(jìn)行修改優(yōu)先級(jí)中輸入原始密碼,2次新密碼操作序列1.用戶進(jìn)行圖書館管理系統(tǒng)登錄2.點(diǎn)擊修改密碼3.輸入原始密碼,2次新密碼4.點(diǎn)擊確定按鈕輸出修改密碼成功補(bǔ)充說明原始密碼輸入錯(cuò)誤或密碼不合規(guī)范,則密碼修改不成功名稱、標(biāo)識(shí)符借閱證辦理功能功能描述辦理新的借閱證,新的借閱證注冊(cè),信息入庫(kù)優(yōu)先級(jí)一般輸入新借閱證的所有必備信息,如:借閱證編號(hào),用戶的一些基本信息操作序列1.生成新借閱證編號(hào)2.輸入用戶基本信息3.儲(chǔ)存于數(shù)據(jù)庫(kù)中輸出無補(bǔ)充說明名稱、標(biāo)識(shí)符借閱證查詢功能功能描述查詢已辦理的借閱證列表,查看借閱證的狀態(tài)〔及已經(jīng)借了幾本書優(yōu)先級(jí)一般輸入借閱證查詢的必備信息,如:借閱證編號(hào),或用戶的一些基本信息操作序列1.獲得用戶輸入的信息2.查詢數(shù)據(jù)庫(kù)中借閱證表3.獲得借閱證的相關(guān)信息。如現(xiàn)借圖書數(shù)量,是否有未及時(shí)歸還圖書等輸出借閱證的相關(guān)信息。如現(xiàn)借圖書數(shù)量,是否有未及時(shí)歸還圖書等。補(bǔ)充說明名稱、標(biāo)識(shí)符借閱證掛失功能功能描述掛失借閱證優(yōu)先級(jí)一般輸入掛失證查詢的必備信息,用戶的學(xué)號(hào)操作序列1.獲得用戶輸入的信息2.查詢數(shù)據(jù)庫(kù)中借閱證表3.修改借閱證的狀態(tài)為已掛失輸出借閱證的狀態(tài)改為已掛失補(bǔ)充說明名稱、標(biāo)識(shí)符借閱證補(bǔ)辦功能功能描述補(bǔ)辦借閱證優(yōu)先級(jí)一般輸入補(bǔ)辦借閱證的必備信息,用戶的學(xué)號(hào)操作序列1.獲得用戶輸入的信息,并生成新借閱證編號(hào)2.儲(chǔ)存于數(shù)據(jù)庫(kù)中輸出用戶有新的借閱證補(bǔ)充說明名稱、標(biāo)識(shí)符借閱證注銷功能功能描述注銷借閱證優(yōu)先級(jí)一般輸入注銷借閱證的必備信息,如用戶的學(xué)號(hào)或借閱證的編號(hào)操作序列1.獲得用戶輸入的信息2.給用戶補(bǔ)辦借閱證,將原借閱證信息轉(zhuǎn)移到新借閱證3.刪除老借閱證信息。輸出用戶老的借閱證信息轉(zhuǎn)移到新借閱證上。補(bǔ)充說明名稱、標(biāo)識(shí)符借閱證歷史查詢功能功能描述登錄圖書館管理系統(tǒng)后,可以個(gè)人查詢圖書的借閱歷史情況,以及圖書借出時(shí)間和應(yīng)歸還時(shí)間,并提醒借閱者應(yīng)立即歸還的圖書優(yōu)先級(jí)一般輸入借閱證歷史查詢的必備信息,如:借閱證編號(hào),或用戶的一些基本信息操作序列1.獲得用戶輸入的信息2.查詢數(shù)據(jù)庫(kù)中借閱證表3.獲得借閱證的相關(guān)信息。如個(gè)人查詢圖書的借閱歷史情況,以及圖書借出時(shí)間和應(yīng)歸還時(shí)間,并提醒借閱者應(yīng)立即歸還的圖書等輸出借閱歷史的相關(guān)信息。如個(gè)人查詢圖書的借閱歷史情況,以及圖書借出時(shí)間和應(yīng)歸還時(shí)間,并提醒借閱者應(yīng)立即歸還的圖書等。補(bǔ)充說明4.系統(tǒng)總體結(jié)構(gòu)[畫出系統(tǒng)的包圖,并簡(jiǎn)單說明每個(gè)包的功能以及負(fù)責(zé)人]圖1:系統(tǒng)包圖:包名稱包功能Inquiry圖書信息查詢、最熱借閱的圖書查詢、圖書借閱分類統(tǒng)計(jì)功能BorrowCard借閱證密碼修改、借閱證注銷功能bookMAXNumber表示某書的復(fù)本數(shù)Book實(shí)現(xiàn)書的各種功能BookSort指明書是哪種類型,例如哲學(xué)、文學(xué)等BorrowExtend圖書續(xù)借、圖書催還、圖書掛失功能BorrowRecord完成圖書館的基本功能——書籍的借閱歸還,以及用戶的借閱歷史查詢、當(dāng)前借閱情況查詢Administration管理者的登錄、修改密碼表1:包圖的簡(jiǎn)單說明5.1識(shí)別類[場(chǎng)景描述、識(shí)別出的概念類]場(chǎng)景描述:借閱者憑借閱證<BorrowCard>的借閱證號(hào)和密碼登錄系統(tǒng),通過圖書查詢<Inquiry>找到預(yù)借圖書<Book>,若該書狀態(tài)顯示為"在館"且"可借",則本借閱證可以在借閱管理員<Administration>處將此書借走,同時(shí)生成相應(yīng)的借閱記錄<BorrowRecord>,存入系統(tǒng)。借閱記錄加載后,管理員和借閱證持有者都可以瀏覽已保存的借閱記錄,并擁有借閱記錄的部分修改權(quán)限。借閱證持有者可以管理借閱證,如修改借閱證密碼等,也可以在所借圖書應(yīng)當(dāng)歸還日期前續(xù)借圖書,修改特殊情況下的借閱記錄<BorrowExtend>。若借閱記錄中已到期圖書尚未歸還,則管理員可通過系統(tǒng)打印出超期借閱證號(hào)名單。若某借閱證持有者在借閱過程中遺失圖書,就要告知管理員并由管理員完成圖書掛失。對(duì)于圖書,管理員要在圖書入館前定義其索書號(hào),并確定相同索書號(hào)圖書的復(fù)本數(shù)<BookMAXNumber>,還要將圖書分類<BookSort>。有關(guān)圖書借閱或管理的操作結(jié)束后,借閱證持有者和管理員都可以退出本系統(tǒng)。過濾后的概念類:用戶可以在登陸系統(tǒng)后進(jìn)行借閱證密碼修改;用戶也可以查詢借閱記錄,查看用戶現(xiàn)在借了幾本書及每本書借出時(shí)間和應(yīng)歸還時(shí)間;用戶登陸系統(tǒng)后,亦可進(jìn)行借閱歷史查詢;后臺(tái)管理員在用戶離校后,登陸后臺(tái)進(jìn)行用戶注銷。識(shí)別出的概念類:用戶,借閱證,借閱記錄,管理員。用戶登錄系統(tǒng),對(duì)書目進(jìn)行簡(jiǎn)單檢索,選擇檢索類型,輸入關(guān)鍵字進(jìn)行檢索,可獲得書的詳細(xì)信息〔作者、出版社、內(nèi)容簡(jiǎn)介、版次、存放地點(diǎn)、圖書狀態(tài)〔在館/出借和最快可借閱時(shí)間。另外用戶可以查詢最熱借閱圖書,此排行以2個(gè)月內(nèi)借閱記錄為依據(jù)。最后用戶可以按照?qǐng)D書類別,查詢某類別圖書的最熱借閱排行,此排行同樣以2個(gè)月內(nèi)借閱記錄為依據(jù)。識(shí)別出的概念類:用戶,查詢,借閱記錄,圖書類別。管理員將現(xiàn)有及后來購(gòu)入的圖書進(jìn)行圖書入庫(kù)〔增添圖書的編碼、書名、購(gòu)買日期、價(jià)格等圖書信息。管理員對(duì)系統(tǒng)內(nèi)的圖書信息〔出版社、版次、作者、內(nèi)容簡(jiǎn)介等進(jìn)行編輯處理。用戶輸入圖書的名字、關(guān)鍵字、作者等對(duì)圖書進(jìn)行查找;也可以分類查找圖書。用戶查詢顯示最新入庫(kù)的圖書信息。識(shí)別出的概念類:用戶,圖書,管理員。場(chǎng)景描述1:圖書館管理員登錄圖書管理系統(tǒng)之后,借閱者告訴圖書管理員其借書證卡號(hào),圖書館管理員點(diǎn)擊新增借閱記錄后,輸入相應(yīng)的借閱證號(hào)、圖書編號(hào)和當(dāng)前借閱時(shí)間,系統(tǒng)會(huì)首先查詢書籍的狀態(tài)和借閱證的狀態(tài),及是否有到期應(yīng)還而未還的圖書,判斷是否可借,如果條件都符合,則顯示新增的借閱記錄,其中應(yīng)歸還時(shí)間是在當(dāng)前借閱時(shí)間加30天后自動(dòng)生成的,若有條件不滿足,則顯示為什么不能進(jìn)行書籍正常借閱的原因。場(chǎng)景描述2:圖書館管理員登錄圖書管理系統(tǒng)之后,借閱者告訴圖書管理員其借書證卡號(hào),圖書館管理員點(diǎn)擊圖書歸還后,輸入相應(yīng)的借閱證號(hào)、圖書編號(hào)找到相應(yīng)的借閱記錄,更新數(shù)據(jù)庫(kù),輸入歸還時(shí)間,系統(tǒng)會(huì)根據(jù)歸還時(shí)間與應(yīng)歸還時(shí)間作比較,判斷是否超期,若超期,則需借閱者繳納相應(yīng)的罰款,同時(shí),將圖書的狀態(tài)更新為在館。場(chǎng)景描述3:圖書館管理員或借閱者可根據(jù)借閱證號(hào)查詢,該借閱者的所有借閱歷史記錄。場(chǎng)景描述4:圖書館管理員或借閱者可根據(jù)圖書編號(hào)查詢,該圖書被借閱的所有借閱歷史記錄。場(chǎng)景描述5:圖書館管理員或借閱者可根據(jù)借閱證號(hào)查詢?cè)摻栝喺弋?dāng)前的借閱記錄,反映借閱者當(dāng)前借閱的書籍信息,借閱時(shí)間和借出應(yīng)還時(shí)間,提醒借閱者按時(shí)歸還圖書。識(shí)別出的概念類:管理員,借書證,借閱記錄,圖書。2.2域模型[域模型簡(jiǎn)單說明、畫域模型圖]添加了關(guān)系和屬性的域模型如下圖:在場(chǎng)景描述中共抽出了8個(gè)概念類,依次為BorrowCard、Inquiry、Book、Administration、BorrowRecord、BorrowExtend、BookMAXNumber、BookSort.3.類圖設(shè)計(jì)3.1以數(shù)據(jù)庫(kù)模式的實(shí)體類圖[畫出整個(gè)系統(tǒng)所有的實(shí)體類的類圖,并簡(jiǎn)單說明,小組成員可共同完成]3.1子功能類圖由于子功能只有2個(gè),故合并之畫在如下類圖中。圖2:1.表現(xiàn)層BorrowCardForm:與用戶進(jìn)行交互,供用戶進(jìn)行密碼修改及管理員注銷離校用戶。用于接收用戶輸入的新密碼或管理員檢索用戶命令及點(diǎn)擊注銷用戶按鈕進(jìn)行用戶注銷。2.中間業(yè)務(wù)層BorrowCardBLL:受Form層的調(diào)用進(jìn)行業(yè)務(wù)處理,業(yè)務(wù)處理通過調(diào)用DAL層的數(shù)據(jù)庫(kù)訪問函數(shù)實(shí)現(xiàn)。3.數(shù)據(jù)訪問層BorrowCardDAL:直接訪問數(shù)據(jù)庫(kù),實(shí)現(xiàn)對(duì)信息的讀取和修改。訪問數(shù)據(jù)庫(kù)中的表BorrowCard表獲取和修改信息。圖2:圖書信息查詢、最熱借閱的圖書查詢、圖書借閱分類統(tǒng)計(jì)功能類圖表現(xiàn)層InquiryForm:位于最外層〔最上層,供用戶進(jìn)行簡(jiǎn)單檢索、最熱借閱、分類最熱借閱的查詢。用于接收用戶輸入的檢索數(shù)據(jù)或按鈕的點(diǎn)擊及呈現(xiàn)書目信息。中間業(yè)務(wù)層InquiryBLL:負(fù)責(zé)據(jù)Form層的要求進(jìn)行數(shù)據(jù)檢索。調(diào)用DAL層的數(shù)據(jù)庫(kù)訪問函數(shù)實(shí)現(xiàn)業(yè)務(wù)。數(shù)據(jù)訪問層InquiryDAL:實(shí)現(xiàn)對(duì)信息的讀取操作。訪問數(shù)據(jù)庫(kù)中的表BorrowRecord及Book表獲取信息。3.2子功能一類圖圖2-1:圖書信息查詢功能類圖表現(xiàn)層InquiryForm:接收用戶輸入的檢索數(shù)據(jù)。中間業(yè)務(wù)層InquiryBLL:負(fù)責(zé)據(jù)Form層的要求進(jìn)行數(shù)據(jù)檢索。數(shù)據(jù)訪問層InquiryDAL:實(shí)現(xiàn)對(duì)信息的讀取操作。訪問數(shù)據(jù)庫(kù)中的表Book表獲取書本詳細(xì)信息,訪問BorrowRecord表進(jìn)行書目借出應(yīng)還時(shí)間信息獲取。3.2子功能二類圖圖2-2:最熱借閱的圖書查詢功能類圖表現(xiàn)層InquiryForm:接收用戶點(diǎn)擊按鈕時(shí)提交的類別數(shù)據(jù)。中間業(yè)務(wù)層InquiryBLL:負(fù)責(zé)據(jù)Form層的要求進(jìn)行數(shù)據(jù)檢索。數(shù)據(jù)訪問層InquiryDAL:實(shí)現(xiàn)對(duì)信息的讀取操作。訪問BorrowRecord表進(jìn)行特定類別書目借閱量的查詢,獲取訪問數(shù)據(jù)庫(kù)中的表Book表獲取書本詳細(xì)信息,供用戶查看。3.2子功能三類圖圖2-3:圖書最熱借閱分類統(tǒng)計(jì)功能類圖表現(xiàn)層InquiryForm:接收用戶點(diǎn)擊按鈕時(shí)提交的類別數(shù)據(jù)。中間業(yè)務(wù)層InquiryBLL:負(fù)責(zé)據(jù)Form層的要求進(jìn)行數(shù)據(jù)檢索。數(shù)據(jù)訪問層InquiryDAL:實(shí)現(xiàn)對(duì)信息的讀取操作。訪問BorrowRecord表進(jìn)行書目借閱量的查詢,獲取訪問數(shù)據(jù)庫(kù)中的表Book表獲取書本詳細(xì)信息,供用戶查看。1.表現(xiàn)層BookInformationForm:與用戶和管理員進(jìn)行交互,供用戶根據(jù)信息查找圖書及分類查找圖書,管理員對(duì)圖書進(jìn)行入庫(kù)及修改圖書信息的操作。2.中間業(yè)務(wù)層BookInformationBLL:受Form層的調(diào)用進(jìn)行業(yè)務(wù)處理,業(yè)務(wù)處理通過調(diào)用DAL層的數(shù)據(jù)庫(kù)訪問函數(shù)實(shí)現(xiàn)。3.數(shù)據(jù)訪問層BookInformationDAL:直接訪問數(shù)據(jù)庫(kù),實(shí)現(xiàn)對(duì)信息的讀取和修改。訪問數(shù)據(jù)庫(kù)中的表Book、BookSort、BookMAXNumber表獲取和修改信息。1.表現(xiàn)層BookRecordForm:用戶和管理員通過圖書管理系統(tǒng)和網(wǎng)上平臺(tái)的界面類直觀的進(jìn)行相關(guān)的操作,供用戶輸入卡號(hào)查詢自己所有的借閱歷史或是查詢自己當(dāng)前的借閱情況,看看自己是否有書快到歸還期,管理員則通過界面進(jìn)行書籍的借閱歸還,修改相應(yīng)的狀態(tài)記錄。2.中間業(yè)務(wù)層BookRecordBLL:受Form層的調(diào)用進(jìn)行業(yè)務(wù)處理,業(yè)務(wù)處理通過調(diào)用DAL層的數(shù)據(jù)庫(kù)訪問函數(shù)實(shí)現(xiàn),當(dāng)觸發(fā)了BookRecordForm上的一個(gè)按鈕時(shí),就調(diào)用BookRecordBLL進(jìn)行相關(guān)的業(yè)務(wù)處理,進(jìn)一步調(diào)用BookRecordDAL層的數(shù)據(jù)庫(kù)的進(jìn)行數(shù)據(jù)庫(kù)的增改查詢。3.數(shù)據(jù)訪問層BookRecordDAL:直接訪問數(shù)據(jù)庫(kù),實(shí)現(xiàn)對(duì)信息的讀取和修改。訪問數(shù)據(jù)庫(kù)中的表BorrowRecord、Book、BorrowCard表獲取和修改信息。圖中BorrowExtend、BorrowExtendDAL、BorrowExtendBLL、BorrowExtendForm依次為實(shí)體類、數(shù)據(jù)訪問類、業(yè)務(wù)邏輯類和界面類。主要實(shí)現(xiàn)續(xù)借、借閱超期和圖書掛失記錄的管理。數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)4.物理設(shè)計(jì)4.0表匯總表名功能說明表A:Book存儲(chǔ)具體的一本書特有的信息表B:BookDetail存儲(chǔ)某種書共有的信息表C:BookMAXNumber存儲(chǔ)某種書所擁有的本數(shù)表D:BookSort存儲(chǔ)書的每種類型的具體信息表E:BorrowCard存儲(chǔ)借閱證卡號(hào)和借閱者信息表F:BorrowExtend主要實(shí)現(xiàn)續(xù)借、借閱超期和圖書掛失記錄的管理表G:BorrowRecord存儲(chǔ)圖書館借閱圖書的基本信息的表,進(jìn)行圖書館的借閱管理和借閱信息的記錄,方便對(duì)借閱信息進(jìn)行查詢統(tǒng)計(jì)表H:Administration存儲(chǔ)圖書館管理系統(tǒng)的管理員的信息,是管理員可以登入系統(tǒng)進(jìn)行相應(yīng)權(quán)限的操作視圖A:BookInfo用于顯示相同索書號(hào)的圖書的基本信息,如書名、作者、出版機(jī)構(gòu)等。視圖B:BookDetailInfo用于顯示每本書的條碼號(hào),具體存放地點(diǎn),副本數(shù),狀態(tài)<是否在館,借出應(yīng)還日期>。系統(tǒng)各功能模塊實(shí)現(xiàn)的說明2.1.模塊A提示:開發(fā)人員根據(jù)"編程計(jì)劃"編寫軟件的代碼,并隨時(shí)記錄編程技術(shù)、問題與對(duì)策、心得體會(huì)等等,產(chǎn)生《編程文檔》〔類似于編程日記。程序名稱圖書借閱功能描述圖書管理員在登錄圖書館管理系統(tǒng)之后,可以幫助借閱者進(jìn)行圖書借閱記錄編程技術(shù)、問題與對(duì)策、心得體會(huì)等等UI層newborrowusingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingWindowsFormsApplication_BookManagement.BLL;usingWindowsFormsApplication_BookManagement.Model;usingSystem.Data.SqlClient;namespaceWindowsFormsApplication_BookManagement.UI{publicpartialclassnewborrow:Form{BorrowRecordBLLborrowRecordBLL;BorrowCardBLLborrowCardBLL;BookBLLbookBLL;BorrowRecordborrRecord;publicnewborrow<>{InitializeComponent<>;borrowRecordBLL=newBorrowRecordBLL<>;borrowCardBLL=newBorrowCardBLL<>;bookBLL=newBookBLL<>;label4.Text=DateTime.Now.ToString<>;label6.Text=DateTime.Now.AddDays<30>.ToString<>;}privatevoidnewborrow_Load<objectsender,EventArgse>{//TODO:這行代碼將數(shù)據(jù)加載到表"bookManageDataSet4.BorrowRecord"中。您可以根據(jù)需要移動(dòng)或移除它。//this.borrowRecordTableAdapter1.Fill<this.bookManageDataSet4.BorrowRecord>;//TODO:這行代碼將數(shù)據(jù)加載到表"bookManageDataSet3.BorrowRecord"中。您可以根據(jù)需要移動(dòng)或移除它。//this.borrowRecordTableAdapter.Fill<this.bookManageDataSet3.BorrowRecord>;}privatevoidbutton1_Click<objectsender,EventArgse>{stringcardID=textBox1.Text.ToString<>.Trim<>;stringbookCode=textBox2.Text.ToString<>.Trim<>;DateTimeborrowTime=DateTime.Now;DateTimeshouldReturnTime=DateTime.Now.AddDays<30>;DateTimereturnTime=DateTime.MinValue;borrRecord=newBorrowRecord<cardID,bookCode,borrowTime,returnTime,shouldReturnTime>;intins1=borrowRecordBLL.insertBorrowRecord<borrRecord>;intins2=borrowCardBLL.delBorrowedCount<cardID>;intins3=bookBLL.updateBookState<bookCode,"已借出">;intins4=bookBLL.addBorrowCount<bookCode>;if<ins1==1&&ins2==1&&ins3==1&&ins4==1>MessageBox.Show<"已成功新增借閱記錄!">;elseMessageBox.Show<"新增借閱記錄失敗!">;}privatevoidbutton3_Click<objectsender,EventArgse>{textBox1.Text="";textBox2.Text="";}privatevoidbutton2_Click<objectsender,EventArgse>{BorrowCardChangeborrcardchange=newBorrowCardChange<>;borrcardchange.Show<>;}privatevoidbookreturnTooStripMenuItem_Click<objectsender,EventArgse>{bookreturnbookreturn1=newbookreturn<>;bookreturn1.Show<>;this.Hide<>;}privatevoidnewborrowToolStripMenuItem_Click<objectsender,EventArgse>{newborrownewborrow1=newnewborrow<>;newborrow1.Show<>;this.Hide<>;}privatevoid圖書催還ToolStripMenuItem_Click<objectsender,EventArgse>{reminderremind=newreminder<>;remind.Show<>;}privatevoid圖書掛失ToolStripMenuItem_Click<objectsender,EventArgse>{lossreportlossreport=newlossreport<>;lossreport.Show<>;this.Hide<>;}privatevoid退出ToolStripMenuItem1_Click<objectsender,EventArgse>{MessageBox.Show<"已退出!">;Homeh=newHome<>;h.Show<>;this.Hide<>;}privatevoid圖書入庫(kù)ToolStripMenuItem_Click<objectsender,EventArgse>{AddBook_1ad1=newAddBook_1<>;ad1.Show<>;this.Hide<>;}privatevoid辦理借閱證ToolStripMenuItem_Click<objectsender,EventArgse>{BorrowCardManageboorowcardnew=newBorrowCardManage<>;boorowcardnew.Show<>;this.Hide<>;}privatevoid注銷借閱證ToolStripMenuItem_Click<objectsender,EventArgse>{BorrowCardCancelboorowcardcal=newBorrowCardCancel<>;boorowcardcal.Show<>;this.Hide<>;}privatevoid編輯借閱證狀態(tài)ToolStripMenuItem_Click<objectsender,EventArgse>{BorrowCardChangeborrcardchange=newBorrowCardChange<>;borrcardchange.Show<>;this.Hide<>;}}}BLL層BorrowRecordBLL中的usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingWindowsFormsApplication_BookManagement.DAL;usingSystem.Data;usingSystem.Data.SqlClient;usingWindowsFormsApplication_BookManagement.Model;namespaceWindowsFormsApplication_BookManagement.BLL{classBorrowRecordBLL{privateBorrowRecordDALborrowRecordDAL;publicBorrowRecordBLL<>{borrowRecordDAL=newBorrowRecordDAL<>;}publicintinsertBorrowRecord<BorrowRecordborrRecord>{returnborrowRecordDAL.insertBorrowRecord<borrRecord>;}}}BookBLL中的publicintaddBorrowCount<stringbookCode>{returnbookDAL.addBorrowCount<bookCode>;}publicintupdateBookState<stringbookCode,stringbookState>{returnbookDAL.updateBookState<bookCode,bookState>;}BorrowCardBLL中的publicintdelBorrowedCount<stringcardID>{returnborrowCardDAL.delBorrowedCount<cardID>;}DAL層BorrowRecordDAL中的usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingWindowsFormsApplication_BookManagement.Model;usingSystem.Data;namespaceWindowsFormsApplication_BookManagement.DAL{classBorrowRecordDAL{DBHelperdbHelper;publicBorrowRecordDAL<>{dbHelper=newDBHelper<>;}publicintinsertBorrowRecord<BorrowRecordborrRecord>{stringsql=string.Format<"insertinto[BorrowRecord]<CardID,BookCode,BorrowTime,ShouldReturnTime>values<'{0}','{1}','{2}','{3}'>",borrRecord.CardID,borrRecord.BookCode,borrRecord.BorrowTime,borrRecord.ShouldReturnTime>;//DateTime.Now.Date.ToShortDateString<>,DateTime.Now.AddDays<7>.ToShortDateString<>returndbHelper.ExecuteNonQuery<sql>;}}}BookDAL中的publicintgetBorrowCount<stringbookCode>{intborrowCount=0;stringqueryStr=string.Format<"select[BookDetail].BorrowCountfrom[BookDetail],[Book]where[BookDetail].BookNumber=[Book].BookNumberand[Book].BookCode='{0}'",bookCode>;DataTabledt=dbHelper.ExecuteQuery<queryStr>;if<dt.Rows.Count!=0>{borrowCount=Convert.ToInt32<dt.Rows[0]["BorrowCount"].ToString<>.Trim<>>;}returnborrowCount;}publicintaddBorrowCount<stringbookCode>{intborrowCount=getBorrowCount<bookCode>+1;stringupdateSql=string.Format<"update[BookDetail]set[BookDetail].BorrowCount='{0}'from[Book]where[BookDetail].BookNumber=[Book].BookNumberand[Book].BookCode='{1}'",borrowCount,bookCode>;returndbHelper.ExecuteNonQuery<updateSql>;}publicintupdateBookState<stringbookCode,stringbookState>{stringupdateSql2=string.Format<"update[Book]setBookState='{0}'whereBookCode='{1}'",bookState,bookCode>;returndbHelper.ExecuteNonQuery<updateSql2>;}BorrowCardDAL里的publicintgetBorrowedCount<stringcardID>{intborrowedCount=0;stringqueryStr=string.Format<"select*from[BorrowCard]whereCardID='{0}'",cardID>;DataTabledt=dbHelper.ExecuteQuery<queryStr>;if<dt.Rows.Count!=0>{borrowedCount=Convert.ToInt32<dt.Rows[0]["BorrowedCount"].ToString<>.Trim<>>;}returnborrowedCount;}publicintdelBorrowedCount<stringcardID>{intborrowedCount=getBorrowedCount<cardID>-1;stringupdateSql=string.Format<"update[BorrowCard]setBorrowedCount='{0}'wherecardID='{1}'",borrowedCount,cardID>;returndbHelper.ExecuteNonQuery<updateSql>;}MODEL層BorrowRecordusingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceWindowsFormsApplication_BookManagement.Model{publicclassBorrowRecord{privatestringcardID;privatestringbookCode;publicDateTimeborrowTime;publicDateTimereturnTime;publicDateTimeshouldReturnTime;publicBorrowRecord<>{}publicBorrowRecord<stringcardID,stringbookCode,DateTimeborrowTime,DateTimereturnTime,DateTimeshouldReturnTime>{this.cardID=cardID;this.bookCode=bookCode;this.borrowTime=borrowTime;this.returnTime=returnTime;this.shouldReturnTime=shouldReturnTime;}//屬性publicstringCardID{get{returncardID;}set{cardID=value;}}publicstringBookCode{get{returnbookCode;}set{bookCode=value;}}publicDateTimeBorrowTime{get{returnborrowTime;}set{borrowTime=value;}}publicDateTimeReturnTime{get{returnreturnTime;}set{returnTime=value;}}publicDateTimeShouldReturnTime{get{returnshouldReturnTime;}set{shouldReturnTime=value;}}}}新增借閱記錄,首先需要滿足一定的條件,這就需要點(diǎn)擊查詢借閱證狀態(tài)按鈕,輸入借閱證號(hào),顯示借閱者的借閱證狀態(tài)及可借書數(shù)〔初始是借閱證的可借書數(shù)都為5,注銷和欠費(fèi)時(shí),會(huì)將可借書數(shù)置為0,當(dāng)借閱證狀態(tài)為可借,可借書數(shù)>=1時(shí),即可在newborrow中辦理借閱,這里我沒有查詢圖書狀態(tài)是因?yàn)榭紤]到實(shí)際情況,借閱者拿著圖書辦理借閱,圖書的借閱狀態(tài)應(yīng)為在館,于是省略了這一功能。因?yàn)樾略鼋栝喒δ苁菆D書館管理系統(tǒng)中比較重要和基本的功能,因此新增圖書功能的實(shí)現(xiàn),并不單一是對(duì)數(shù)據(jù)庫(kù)中BorrowRecord這張表進(jìn)行,在界面中按下一個(gè)新增借閱按鈕,就要在后臺(tái)對(duì)多張表進(jìn)行操作,首先是在BorrowRecord中會(huì)新增一條借閱證號(hào)與書號(hào)做復(fù)合主鍵的記錄,利用DateTime.Now將系統(tǒng)當(dāng)前時(shí)間插入borrowTime列中,利用DateTime.Now.AddDays<30>將系統(tǒng)當(dāng)前時(shí)間加上30天之后的時(shí)間插入shouldReturnTime列中,利用DateTime.MinValue將NULL插入returnTime列中,其次需要引用BookBLL和BorrowCardBLL完成借閱記錄新增的同時(shí),將BookState改為借出,同時(shí)在BookDetail表中將書的借閱次數(shù)加1,方便最熱借閱功能的實(shí)現(xiàn),將BorrowCard這張表中的可借書數(shù)減1,。因?yàn)橐淮螆?zhí)行的SQL語句較多而且之間牽扯的很多數(shù)據(jù)是datetime類型的,因此在一開始進(jìn)行調(diào)試的時(shí)候,出現(xiàn)了錯(cuò)誤,并不知道是哪,一條語句出現(xiàn)了錯(cuò)誤,必須對(duì)數(shù)據(jù)庫(kù)改變的4張表同時(shí)進(jìn)行查看,看哪一張表未出現(xiàn)變化,在查看對(duì)應(yīng)的語句,最容易出現(xiàn)錯(cuò)誤的是stringupdateSql=string.Format<"update[BookDetail]set[BookDetail].BorrowCount='{0}'from[Book]where[BookDetail].BookNumber=[Book].BookNumberand[Book].BookCode='{1}'",borrowCount,bookCode>,因?yàn)樾枰ㄟ^BookCode將Book和BookDetail表連起來然后通過BookCode查詢到對(duì)應(yīng)的記錄在BookDetail表中更改BorrowCount,前面變成的時(shí)候sql語句中一直沒有寫from[Book],程序怎么調(diào)都不對(duì),之間還將語句改成過select嵌套的形式,也沒能實(shí)現(xiàn),sql語句改了又改,最終調(diào)試時(shí)出現(xiàn)新增借閱記錄成功的時(shí)候,非常興奮,又看了看數(shù)據(jù)庫(kù)的4張表,也都實(shí)現(xiàn)了更改,知道終于完成了圖書借閱的操作。模塊B提示:開發(fā)人員根據(jù)"編程計(jì)劃"編寫軟件的代碼,并隨時(shí)記錄編程技術(shù)、問題與對(duì)策、心得體會(huì)等等,產(chǎn)生《編程文檔》〔類似于編程日記。程序名稱圖書歸還功能描述管理員使用圖書館管理系統(tǒng)可以幫助借閱者實(shí)現(xiàn)圖書歸還的操作記錄編程技術(shù)、問題與對(duì)策、心得體會(huì)等等UI層bookreturnusingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingWindowsFormsApplication_BookManagement.BLL;usingWindowsFormsApplication_BookManagement.Model;usingSystem.Data.SqlClient;namespaceWindowsFormsApplication_BookManagement.UI{publicpartialclassbookreturn:Form{BorrowRecordBLLborrowRecordBLL;BorrowCardBLLborrowCardBLL;BookBLLbookBLL;publicbookreturn<>{InitializeComponent<>;borrowRecordBLL=newBorrowRecordBLL<>;borrowCardBLL=newBorrowCardBLL<>;bookBLL=newBookBLL<>;}privatevoidbookreturn_Load<objectsender,EventArgse>{//TODO:這行代碼將數(shù)據(jù)加載到表"bookManageDataSet2.BorrowRecord"中。您可以根據(jù)需要移動(dòng)或移除它。//this.borrowRecordTableAdapter.Fill<this.bookManageDataSet2.BorrowRecord>;}privatevoidbutton1_Click<objectsender,EventArgse>{stringcardID=textBox1.Text.ToString<>;stringbookCode=textBox2.Text.ToString<>;DateTimereturnTime=DateTime.Now;DataTablebookreturnDT;borrowRecordBLL.updateReturnTime<cardID,bookCode,returnTime>;intins2=borrowCardBLL.addBorrowedCount<cardID>;intins3=bookBLL.updateBookState<bookCode,"可借">;if<ins2==1&&ins3==1>MessageBox.Show<"已成功歸還圖書!">;elseMessageBox.Show<"更新借閱記錄失敗!">;bookreturnDT=borrowRecordBLL.getBorrowRecordDT<textBox1.Text.Trim<>,textBox2.Text.Trim<>>;if<bookreturnDT!=null>dataGridView1.DataSource=bookreturnDT.DefaultView;elsedataGridView1.DataSource=null;}privatevoidbutton2_Click<objectsender,EventArgse>{DataTablebookreturnDT;if<!string.IsNullOrEmpty<textBox1.Text.Trim<>>&&!string.IsNullOrEmpty<textBox2.Text.Trim<>>>{bookreturnDT=borrowRecordBLL.getBorrowRecordDT<textBox1.Text.Trim<>,textBox2.Text.Trim<>>;}else{MessageBox.Show<"請(qǐng)輸入借書證號(hào)及書號(hào)!">;bookreturnDT=null;}if<bookreturnDT!=null>dataGridView1.DataSource=bookreturnDT.DefaultView;elsedataGridView1.DataSource=null;}privatevoidnewborrowToolStripMenuItem_Click<objectsender,EventArgse>{newborrownewborrow1=newnewborrow<>;newborrow1.Show<>;this.Hide<>;}privatevoidbookreturnTooStripMenuItem_Click<objectsender,EventArgse>{bookreturnbookreturn1=newbookreturn<>;bookreturn1.Show<>;this.Hide<>;}privatevoid圖書催還ToolStripMenuItem_Click<objectsender,EventArgse>{reminderremind=newreminder<>;remind.Show<>;}privatevoid圖書掛失ToolStripMenuItem_Click<objectsender,EventArgse>{lossreportlossreport=newlossreport<>;lossreport.Show<>;this.Hide<>;}privatevoid退出ToolStripMenuItem1_Click<objectsender,EventArgse>{MessageBox.Show<"已退出!">;Homeh=newHome<>;h.Show<>;this.Hide<>;}privatevoid圖書入庫(kù)ToolStripMenuItem_Click<objectsender,EventArgse>{AddBook_1ad1=newAddBook_1<>;ad1.Show<>;this.Hide<>;}privatevoid辦理借閱證ToolStripMenuItem_Click<objectsender,EventArgse>{BorrowCardManageboorowcardnew=newBorrowCardManage<>;boorowcardnew.Show<>;this.Hide<>;}privatevoid注銷借閱證ToolStripMenuItem_Click<objectsender,EventArgse>{BorrowCardCancelboorowcardcal=newBorrowCardCancel<>;boorowcardcal.Show<>;this.Hide<>;}privatevoid編輯借閱證狀態(tài)ToolStripMenuItem_Click<objectsender,EventArgse>{BorrowCardChangeborrcardchange=newBorrowCardChange<>;borrcardchange.Show<>;this.Hide<>;}}}BLL層BorrowRecordBLL中的usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingWindowsFormsApplication_BookManagement.DAL;usingSystem.Data;usingSystem.Data.SqlClient;usingWindowsFormsApplication_BookManagement.Model;namespaceWindowsFormsApplication_BookManagement.BLL{classBorrowRecordBLL{privateBorrowRecordDALborrowRecordDAL;publicBorrowRecordBLL<>{borrowRecordDAL=newBorrowRecordDAL<>;}publicDataTablegetBorrowRecordDT<stringcardID,stringbookCode>{returnborrowRecordDAL.getBorrowRecordDT<cardID,bookCode>;}publicintupdateReturnTime<stringcardID,stringbookCode,DateTimeReturnTime>{returnborrowRecordDAL.updateReturnTime<cardID,bookCode,ReturnTime>;}}}BookBLL中的publicintupdateBookState<stringbookCode,stringbookState>{returnbookDAL.updateBookState<bookCode,bookState>;}BorrowCardBLL中的publicintaddBorrowedCount<stringcardID>{returnborrowCardDAL.addBorrowedCount<cardID>;}DAL層BorrowRecordDAL中的usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingWindowsFormsApplication_BookManagement.Model;usingSystem.Data;namespaceWindowsFormsApplication_BookManagement.DAL{classBorrowRecordDAL{DBHelperdbHelper;publicBorrowRecordDAL<>{dbHelper=newDBHelper<>;}publicDataTablegetBorrowRecordDT<stringcardID,stringbookCode>{stringqueryStr=string.Format<"selecttop1CardIDas借閱證,BookCodeas書號(hào),BorrowTimeas借閱時(shí)間,ShouldReturnTimeas借出應(yīng)還時(shí)間,ReturnTimeas歸還時(shí)間fromBorrowRecordwherecardID='{0}'andBookCode='{1}'orderbyBorrowIDdesc",cardID,bookCode>;DataTabledt=dbHelper.ExecuteQuery<queryStr>;if<dt.Rows.Count==0>{returnnull;}else{returndt;}}publicintupdateReturnTime<stringcardID,stringbookCode,DateTimereturnTime>{stringupdateSql=string.Format<"update[BorrowRecord]setReturnTime='{0}'wherecardID='{1}'andbookCode='{2}'",returnTime,cardID,bookCode>;returndbHelper.ExecuteNonQuery<updateSql>;}publicintupdateShouldReturnTime<stringcardID,DateTimeshouldReturnTime>{stringupdateSql=string.Format<"update[BorrowRecord]setShouldReturnTime='{0}'wherecardID='{1}'",shouldReturnTime,cardID>;returndbHelper.ExecuteNonQuery<updateSql>;}}}BookDAL中的publicintupdateBookState<stringbookCode,stringbookState>{stringupdateSql2=string.Format<"update[Book]setBookState='{0}'whereBookCode='{1}'",bookState,bookCode>;returndbHelper.ExecuteNonQuery<updateSql2>;}BorrowCardDAL中的publicintgetBorrowedCount<stringcardID>{intborrowedCount=0;stringqueryStr=string.Format<"select*from[BorrowCard]whereCardID='{0}'",cardID>;DataTabledt=dbHelper.ExecuteQuery<queryStr>;if<dt.Rows.Count!=0>{borrowedCount=Convert.ToInt32<dt.Rows[0]["BorrowedCount"].ToString<>.Trim<>>;}returnborrowedCount;}publicintaddBorrowedCount<stringcardID>{intborrowedCount=getBorrowedCount<cardID>+1;stringupdateSql=string.Format<"update[BorrowCard]setBorrowedCount='{0}'wherecardID='{1}'",borrowedCount,cardID>;returndbHelper.ExecuteNonQuery<updateSql>;}MODEL層BorrowRecordusingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceWindowsFormsApplication_BookManagement.Model{publicclassBorrowRecord{privatestringcardID;privatestringbookCode;publicDateTimeborrowTime;publicDateTimereturnTime;publicDateTimeshouldReturnTime;publicBorrowRecord<>{}publicBorrowRecord<stringcardID,stringbookCode,DateTimeborrowTime,DateTimereturnTime,DateTimeshouldReturnTime>{this.cardID=cardID;this.bookCode=bookCode;this.borrowTime=borrowTime;this.returnTime=returnTime;this.shouldReturnTime=shouldReturnTime;}//屬性publicstringCardID{get{returncardID;}set{cardID=value;}}publicstringBookCode{get{returnbookCode;}set{bookCode=value;}}publicDateTimeBorrowTime{get{returnborrowTime;}set{borrowTime=value;}}publicDateTimeReturnTime{get{returnreturnTime;}set{returnTime=value;}}publicDateTimeShouldReturnTime{get{returnshouldReturnTime;}set{shouldReturnTime=value;}}}}圖書歸還功能也是圖書館管理系統(tǒng)中比較重要和基本的功能,圖書歸還功能的實(shí)現(xiàn)與新增圖書借閱功能是
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 七年級(jí)數(shù)學(xué)上冊(cè)第30課時(shí)銷售問題和儲(chǔ)蓄問題聽評(píng)課記錄新湘教版
- 湘教版數(shù)學(xué)八年級(jí)上冊(cè)《1.1 分式》聽評(píng)課記錄
- 人教版歷史七年級(jí)下冊(cè)第1課《隋朝的統(tǒng)一與滅亡》聽課評(píng)課記錄
- 2022年新課標(biāo)八年級(jí)上冊(cè)道德與法治《7.1 關(guān)愛他人 》聽課評(píng)課記錄
- 生物技術(shù)創(chuàng)新合作開發(fā)合同(2篇)
- 理財(cái)委托合同(2篇)
- 人教版數(shù)學(xué)八年級(jí)下冊(cè)20.1.1《平均數(shù)》聽評(píng)課記錄3
- 語文聽評(píng)課記錄九年級(jí)
- 人教版數(shù)學(xué)八年級(jí)上冊(cè)《11.2.2三角形的外角》聽評(píng)課記錄1
- 數(shù)學(xué)七年級(jí)下學(xué)期《立方根》聽評(píng)課記錄
- 安全安全技術(shù)交底模板
- 房屋建筑工程投標(biāo)方案(技術(shù)方案)
- 部編版一年級(jí)語文下冊(cè)語文園地五《單元拓展-字族文》教學(xué)設(shè)計(jì)
- 靜脈輸液法操作并發(fā)癥的預(yù)防及處理
- 牙外傷的遠(yuǎn)期并發(fā)癥監(jiān)測(cè)
- 2025年高考語文作文備考:議論文萬能模板
- 重大事故隱患判定標(biāo)準(zhǔn)與相關(guān)事故案例培訓(xùn)課件(建筑)
- 《我的寒假生活》
- DZ/T 0430-2023 固體礦產(chǎn)資源儲(chǔ)量核實(shí)報(bào)告編寫規(guī)范(正式版)
- (高清版)WST 442-2024 臨床實(shí)驗(yàn)室生物安全指南
- 歷史時(shí)間軸全
評(píng)論
0/150
提交評(píng)論