校園圖書館管理系統(tǒng)方案_第1頁
校園圖書館管理系統(tǒng)方案_第2頁
校園圖書館管理系統(tǒng)方案_第3頁
校園圖書館管理系統(tǒng)方案_第4頁
校園圖書館管理系統(tǒng)方案_第5頁
已閱讀5頁,還剩60頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

..校園圖書館管理系統(tǒng)1產(chǎn)品主要功能和特色〔1本圖書館管理系統(tǒng)的主要功能如下表:表1-1功能名稱功能說明使用對象用戶登錄功能不同用戶登錄系統(tǒng),擁有不同的使用權(quán)限圖書館管理員、學(xué)生、員工圖書信息管理圖書入庫功能圖書館的現(xiàn)有圖書及后來購入的圖書進(jìn)行圖書的入庫〔增添圖書的編碼、書名、購買日期、價格等圖書信息圖書館管理員圖書信息編輯功能對系統(tǒng)內(nèi)的圖書信息〔出版社、版次、作者、內(nèi)容簡介等進(jìn)行編輯處理借閱證管理借閱證辦理功能辦理新的借閱證圖書館管理員借閱證查詢功能查詢已辦理的借閱證列表,查看借閱證的狀態(tài)圖書館管理員、學(xué)生、員工借閱證掛失功能掛失借閱證圖書館管理員、學(xué)生、員工借閱證補(bǔ)辦功能補(bǔ)辦借閱證圖書館管理員借閱證注銷功能注銷借閱證圖書館管理員圖書借閱管理圖書借閱功能借閱者滿足借閱條件,借閱圖書時,管理員對圖書狀態(tài)進(jìn)行修改圖書館管理員圖書歸還功能借閱者按要求歸還圖書時,管理員對圖書狀態(tài)進(jìn)行修改借閱者未按要求歸還圖書時,管理員對圖書狀態(tài)進(jìn)行修改,并對借閱者進(jìn)行相應(yīng)罰款和記錄圖書館管理員圖書掛失功能借閱者不能歸還圖書時,對圖書進(jìn)行掛失,修改圖書庫存記錄圖書館管理員、學(xué)生、員工圖書續(xù)借功能借閱者滿足續(xù)借條件,需要續(xù)借圖書時,可通過系統(tǒng)對圖書進(jìn)行續(xù)借,圖書借閱期限自動進(jìn)行修改圖書館管理員、學(xué)生、員工圖書催還功能自動生成逾期未歸還圖書的書目和借閱記錄,便于打印催還圖書館管理員信息查詢統(tǒng)計功能圖書查找功能輸入圖書的名字、關(guān)鍵字、作者等對圖書進(jìn)行查找;也可以分類查找圖書圖書館管理員、學(xué)生、員工圖書信息查詢功能可查詢圖書的相關(guān)信息〔作者、出版社、內(nèi)容簡介、版次、存放地點、圖書狀態(tài)〔在館/出借和最快可借閱時間圖書館管理員、學(xué)生、員工借書歷史查詢功能登錄圖書館管理系統(tǒng)后,可以個人查詢圖書的借閱歷史情況,以及圖書借出時間和應(yīng)歸還時間,并提醒借閱者應(yīng)立即歸還的圖書圖書館管理員、學(xué)生、員工最新入庫的圖書查詢功能查詢顯示最新入庫的圖書信息圖書館管理員、學(xué)生、員工最熱借閱的圖書查詢功能查詢顯示最熱借閱的圖書信息圖書館管理員、學(xué)生、員工圖書借閱統(tǒng)計功能對一段時間里的這各種圖書借閱信息進(jìn)行分類匯總,顯示每一類的熱門圖書和借閱需求,也可統(tǒng)計借閱時間信息圖書館管理員、學(xué)生、員工圖書的收藏評論圖書的收藏功能借閱者可以對想要借閱,但受條件限制,必須下次借閱的圖書進(jìn)行收藏,以便下次借閱圖書館管理員、學(xué)生、員工圖書的評論功能對閱讀過的圖書可以發(fā)表讀后感,與他人分享對某本圖書的心得感想,也方便其他借閱者對圖書有更為全面直觀的了解2.產(chǎn)品中的角色角色名稱職責(zé)描述管理員除了具有普通用戶的對圖書信息的查詢?yōu)g覽功能,還具有管理權(quán)限。主要負(fù)責(zé)圖書館管理系統(tǒng)的基本管理,如圖書信息管理、借閱證管理、圖書借閱管理。學(xué)生、員工是圖書館管理系統(tǒng)前臺的使用者,可以進(jìn)行圖書信息的查詢?yōu)g覽、圖書評論、圖書續(xù)借、掛失,圖書借閱證查詢和掛失,查詢自己的借閱歷史。3.產(chǎn)品的功能性需求功能3.1功能類別子功能圖書信息統(tǒng)計查詢圖書信息查詢功能最熱借閱的圖書查詢功能圖書借閱分類統(tǒng)計功能功能3.2功能類別子功能圖書借閱管理功能〔特殊情況下的續(xù)借功能掛失圖書功能催還圖書功能功能3.3功能類別子功能圖書信息管理圖書入庫功能圖書信息編輯功能功能類別子功能信息查詢統(tǒng)計功能圖書查找功能最新入庫的圖書查詢功能功能3.4功能類別子功能圖書借閱管理功能〔一般情況下的圖書借閱功能圖書歸還功能用戶登錄功能登錄功能密碼修改功能功能3.5功能類別子功能借閱證管理借閱證辦理功能借閱證查詢功能借閱證掛失功能借閱證補(bǔ)辦功能借閱證注銷功能借書歷史查詢功能功能3.1.1名稱、標(biāo)識符圖書信息查詢功能功能描述管理員或?qū)W生可查詢圖書的相關(guān)信息〔作者、出版社、內(nèi)容簡介、版次、存放地點、圖書狀態(tài)〔在館/出借和最快可借閱時間優(yōu)先級一般輸入索書號或圖書名操作序列1.獲取查詢者輸入的索書號或圖書名;2.查詢圖書表,找到匹配記錄;3.提取圖書信息,包括作者、出版社、內(nèi)容簡介、版次、存放地點、圖書狀態(tài)和最快可借閱時間輸出圖書信息,包括作者、出版社、內(nèi)容簡介、版次、存放地點、圖書狀態(tài)和最快可借閱時間補(bǔ)充說明名稱、標(biāo)識符最熱借閱的圖書查詢功能功能描述管理員或?qū)W生查詢顯示最熱借閱的圖書信息優(yōu)先級一般輸入查詢最熱借閱的圖書信息請求操作序列1.選定一段時間內(nèi)的借閱記錄,得到每本書及其借閱次數(shù)的視圖;2.將記錄按照書的借閱次數(shù)進(jìn)行排序,并選取前20名的圖書進(jìn)行顯示。輸出一段時間內(nèi)借閱次數(shù)排在前20名的圖書進(jìn)行顯示補(bǔ)充說明名稱、標(biāo)識符圖書最熱借閱分類統(tǒng)計功能功能描述對一段時間里的這各種圖書借閱信息進(jìn)行分類匯總,顯示每一類的熱門圖書優(yōu)先級一般輸入欲查詢的圖書的類別操作序列1.選定一段時間內(nèi)特定類別的圖書借閱記錄,得到該類別每本書及其借閱次數(shù)的視圖;2.將記錄按照書的借閱次數(shù)進(jìn)行排序,并選取前20名的圖書進(jìn)行顯示。輸出將特定類別的圖書,一段時間內(nèi)借閱次數(shù)排在前20名的進(jìn)行顯示補(bǔ)充說明功能3.2.1名稱、標(biāo)識符續(xù)借功能功能描述普通借閱時間上限為從圖書館借書之日起的30天,但借閱者如若對本書很感興趣,想多借幾天,就可以登錄本系統(tǒng),查看自己已借書目并在相應(yīng)書目后選擇"續(xù)借",其借閱時間就可以在原基礎(chǔ)上延長15天。優(yōu)先級中輸入借閱證件號,系統(tǒng)登錄密碼操作序列進(jìn)入系統(tǒng);查看已借閱未歸還書單;在欲續(xù)借書目后點擊"續(xù)借"按鈕,并確認(rèn)輸出彈出提示續(xù)借成功對話框補(bǔ)充說明若沒有已借閱未歸還的圖書,則不可完成此功能名稱、標(biāo)識符掛失功能功能描述當(dāng)借閱者借閱的圖書遺失后,帶著借閱證去圖書館管理臺由管理員登錄本系統(tǒng)完成掛失。管理員用其自己的賬號及密碼登錄系統(tǒng),輸入該借閱者的借閱證號,看到已借閱的圖書,點擊"掛失"按鈕,將這本書存儲在數(shù)據(jù)庫中的狀態(tài)信息改為"掛失",并更改借閱證的狀態(tài)為"不可借",直到借閱者支付了丟失本書應(yīng)賠償?shù)娜拷痤~后,借閱證的狀態(tài)才可恢復(fù)為"可借"。優(yōu)先級高輸入管理員賬號、密碼,借閱證件號操作序列管理員登陸系統(tǒng);輸入借閱證號;查找已丟失書目;點擊"掛失"按鈕,確認(rèn)掛失;輸出彈出提示已掛失對話框補(bǔ)充說明若無管理員賬號、密碼則不可完成此功能;若借閱證件號無效,則不可完成此功能;若沒有該書目項,則不可完成此功能。名稱、標(biāo)識符催還功能功能描述如若借閱者未申請續(xù)借而已經(jīng)借書超過30天,或申請了續(xù)借而已經(jīng)借書超過45天,系統(tǒng)就會在管理員登錄后做出相應(yīng)提醒,列出名單告知有哪些借閱證所借圖書應(yīng)當(dāng)催還,并根據(jù)超期時間長短算出借閱者應(yīng)繳費用。優(yōu)先級高輸入管理員賬號、密碼操作序列管理員登陸系統(tǒng);點擊"查看催還名單"按鈕查看近日應(yīng)催還圖書以及借閱證件號輸出生成近日催還名單補(bǔ)充說明若無管理員賬號、密碼則不可完成此功能名稱、標(biāo)識符圖書入庫功能功能描述圖書館的現(xiàn)有圖書及后來購入的圖書進(jìn)行圖書的入庫〔增添圖書的編碼、書名、購買日期、價格等圖書信息優(yōu)先級輸入圖書的編碼、圖書名、購買日期、價格操作序列1.對圖書進(jìn)行編碼2.將圖書編碼、書名、購買日期、價格等圖書信息輸入數(shù)據(jù)庫3.輸出圖書的編碼、圖書名、購買日期、價格補(bǔ)充說明名稱、標(biāo)識符圖書信息編輯功能功能描述對系統(tǒng)內(nèi)的圖書信息〔出版社、版次、作者、內(nèi)容簡介等進(jìn)行編輯處理優(yōu)先級輸入查詢最熱借閱的圖書信息請求圖書的編碼操作序列1.輸入圖書的編碼2.找到需要編輯的信息3.對信息進(jìn)行編輯4.保存編輯后的信息輸出編輯后的圖書信息補(bǔ)充說明名稱、標(biāo)識符圖書查找功能功能描述輸入圖書的名字、關(guān)鍵字、作者等對圖書進(jìn)行查找;也可以分類查找圖書優(yōu)先級輸入欲查找的圖書的類別或圖書編號或圖書名稱操作序列1.選定整個數(shù)據(jù)庫的信息;2.按照用戶輸入的信息進(jìn)行查找3.將查找的圖書進(jìn)行排序輸出與用戶輸入信息相一致的有關(guān)圖書補(bǔ)充說明功能3.3.4名稱、標(biāo)識符最新入庫的圖書查詢功能功能描述查詢顯示最新入庫的圖書信息優(yōu)先級輸入欲查找最新入庫的圖書操作序列1.選定一段時間內(nèi)的圖書入庫記錄,得到每本書入庫時間的視圖;2.將記錄按照書的入庫時間進(jìn)行排序,并選取前20名的圖書進(jìn)行顯示。輸出最新入庫的有關(guān)圖書補(bǔ)充說明名稱、標(biāo)識符圖書借閱功能功能描述借閱者滿足借閱條件,借閱圖書時,管理員對圖書狀態(tài)進(jìn)行修改優(yōu)先級輸入借閱證號、圖書編號操作序列1.輸入借閱者的借閱證號2.查詢該借閱證號的借閱記錄,是否滿足借閱條件〔是否還可以借書,是否有到期但尚未歸還的圖書,借閱證的狀態(tài)是否正確;3.輸入圖書編號,添加至該借閱證的當(dāng)前借閱記錄中,記錄借閱時間,更改圖書的狀態(tài)——由在館變?yōu)榻璩?借閱證的還可借書的本數(shù)減14.完成圖書借閱輸出借閱證號,借閱記錄,可借書的本數(shù),借到圖書的信息〔圖書編號、圖書名稱、借閱時間、應(yīng)歸還時間、實際歸還時間補(bǔ)充說明名稱、標(biāo)識符圖書歸還功能功能描述借閱者按要求歸還圖書時,管理員對圖書狀態(tài)進(jìn)行修改借閱者未按要求歸還圖書時,管理員對圖書狀態(tài)進(jìn)行修改,并對借閱者進(jìn)行相應(yīng)罰款和記錄優(yōu)先級輸入借閱證號、圖書編號操作序列1.輸入借閱者的借閱證號2.查詢該借閱證號的當(dāng)前借閱記錄,查看圖書編號的借閱和應(yīng)歸還時間,3.記錄實際歸還時間,更改圖書的狀態(tài)——由借出變?yōu)樵陴^,借閱證的還可借書的本數(shù)加14.完成圖書歸還輸出借閱證號,借閱記錄,可借書的本數(shù),借到圖書的信息〔圖書編號、圖書名稱、借閱時間、歸還時間補(bǔ)充說明若實際歸還時間在應(yīng)歸還時間之內(nèi),則無其他記錄若實際歸還時間超出應(yīng)歸還時間,則有管理者對借閱者進(jìn)行相應(yīng)罰款和記錄名稱、標(biāo)識符登錄功能功能描述不同用戶登錄系統(tǒng),擁有不同的使用權(quán)限優(yōu)先級高輸入用戶名〔學(xué)生為學(xué)號,員工為員工號,管理員為用戶名,密碼〔初始密碼與用戶名相同操作序列1.輸入用戶名與密碼2.點擊登錄按鈕,登錄圖書館管理系統(tǒng)輸出登錄成功補(bǔ)充說明用戶名與密碼輸入錯誤,則不能成功登錄管理員和用戶登錄后現(xiàn)實的界面不同功能3.4.4名稱、標(biāo)識符密碼修改功能功能描述用戶登錄之后,可以對密碼進(jìn)行修改優(yōu)先級中輸入原始密碼,2次新密碼操作序列1.用戶進(jìn)行圖書館管理系統(tǒng)登錄2.點擊修改密碼3.輸入原始密碼,2次新密碼4.點擊確定按鈕輸出修改密碼成功補(bǔ)充說明原始密碼輸入錯誤或密碼不合規(guī)范,則密碼修改不成功名稱、標(biāo)識符借閱證辦理功能功能描述辦理新的借閱證,新的借閱證注冊,信息入庫優(yōu)先級一般輸入新借閱證的所有必備信息,如:借閱證編號,用戶的一些基本信息操作序列1.生成新借閱證編號2.輸入用戶基本信息3.儲存于數(shù)據(jù)庫中輸出無補(bǔ)充說明名稱、標(biāo)識符借閱證查詢功能功能描述查詢已辦理的借閱證列表,查看借閱證的狀態(tài)〔及已經(jīng)借了幾本書優(yōu)先級一般輸入借閱證查詢的必備信息,如:借閱證編號,或用戶的一些基本信息操作序列1.獲得用戶輸入的信息2.查詢數(shù)據(jù)庫中借閱證表3.獲得借閱證的相關(guān)信息。如現(xiàn)借圖書數(shù)量,是否有未及時歸還圖書等輸出借閱證的相關(guān)信息。如現(xiàn)借圖書數(shù)量,是否有未及時歸還圖書等。補(bǔ)充說明名稱、標(biāo)識符借閱證掛失功能功能描述掛失借閱證優(yōu)先級一般輸入掛失證查詢的必備信息,用戶的學(xué)號操作序列1.獲得用戶輸入的信息2.查詢數(shù)據(jù)庫中借閱證表3.修改借閱證的狀態(tài)為已掛失輸出借閱證的狀態(tài)改為已掛失補(bǔ)充說明名稱、標(biāo)識符借閱證補(bǔ)辦功能功能描述補(bǔ)辦借閱證優(yōu)先級一般輸入補(bǔ)辦借閱證的必備信息,用戶的學(xué)號操作序列1.獲得用戶輸入的信息,并生成新借閱證編號2.儲存于數(shù)據(jù)庫中輸出用戶有新的借閱證補(bǔ)充說明名稱、標(biāo)識符借閱證注銷功能功能描述注銷借閱證優(yōu)先級一般輸入注銷借閱證的必備信息,如用戶的學(xué)號或借閱證的編號操作序列1.獲得用戶輸入的信息2.給用戶補(bǔ)辦借閱證,將原借閱證信息轉(zhuǎn)移到新借閱證3.刪除老借閱證信息。輸出用戶老的借閱證信息轉(zhuǎn)移到新借閱證上。補(bǔ)充說明名稱、標(biāo)識符借閱證歷史查詢功能功能描述登錄圖書館管理系統(tǒng)后,可以個人查詢圖書的借閱歷史情況,以及圖書借出時間和應(yīng)歸還時間,并提醒借閱者應(yīng)立即歸還的圖書優(yōu)先級一般輸入借閱證歷史查詢的必備信息,如:借閱證編號,或用戶的一些基本信息操作序列1.獲得用戶輸入的信息2.查詢數(shù)據(jù)庫中借閱證表3.獲得借閱證的相關(guān)信息。如個人查詢圖書的借閱歷史情況,以及圖書借出時間和應(yīng)歸還時間,并提醒借閱者應(yīng)立即歸還的圖書等輸出借閱歷史的相關(guān)信息。如個人查詢圖書的借閱歷史情況,以及圖書借出時間和應(yīng)歸還時間,并提醒借閱者應(yīng)立即歸還的圖書等。補(bǔ)充說明4.系統(tǒng)總體結(jié)構(gòu)[畫出系統(tǒng)的包圖,并簡單說明每個包的功能以及負(fù)責(zé)人]圖1:系統(tǒng)包圖:包名稱包功能Inquiry圖書信息查詢、最熱借閱的圖書查詢、圖書借閱分類統(tǒng)計功能BorrowCard借閱證密碼修改、借閱證注銷功能bookMAXNumber表示某書的復(fù)本數(shù)Book實現(xiàn)書的各種功能BookSort指明書是哪種類型,例如哲學(xué)、文學(xué)等BorrowExtend圖書續(xù)借、圖書催還、圖書掛失功能BorrowRecord完成圖書館的基本功能——書籍的借閱歸還,以及用戶的借閱歷史查詢、當(dāng)前借閱情況查詢Administration管理者的登錄、修改密碼表1:包圖的簡單說明5.1識別類[場景描述、識別出的概念類]場景描述:借閱者憑借閱證<BorrowCard>的借閱證號和密碼登錄系統(tǒng),通過圖書查詢<Inquiry>找到預(yù)借圖書<Book>,若該書狀態(tài)顯示為"在館"且"可借",則本借閱證可以在借閱管理員<Administration>處將此書借走,同時生成相應(yīng)的借閱記錄<BorrowRecord>,存入系統(tǒng)。借閱記錄加載后,管理員和借閱證持有者都可以瀏覽已保存的借閱記錄,并擁有借閱記錄的部分修改權(quán)限。借閱證持有者可以管理借閱證,如修改借閱證密碼等,也可以在所借圖書應(yīng)當(dāng)歸還日期前續(xù)借圖書,修改特殊情況下的借閱記錄<BorrowExtend>。若借閱記錄中已到期圖書尚未歸還,則管理員可通過系統(tǒng)打印出超期借閱證號名單。若某借閱證持有者在借閱過程中遺失圖書,就要告知管理員并由管理員完成圖書掛失。對于圖書,管理員要在圖書入館前定義其索書號,并確定相同索書號圖書的復(fù)本數(shù)<BookMAXNumber>,還要將圖書分類<BookSort>。有關(guān)圖書借閱或管理的操作結(jié)束后,借閱證持有者和管理員都可以退出本系統(tǒng)。過濾后的概念類:用戶可以在登陸系統(tǒng)后進(jìn)行借閱證密碼修改;用戶也可以查詢借閱記錄,查看用戶現(xiàn)在借了幾本書及每本書借出時間和應(yīng)歸還時間;用戶登陸系統(tǒng)后,亦可進(jìn)行借閱歷史查詢;后臺管理員在用戶離校后,登陸后臺進(jìn)行用戶注銷。識別出的概念類:用戶,借閱證,借閱記錄,管理員。用戶登錄系統(tǒng),對書目進(jìn)行簡單檢索,選擇檢索類型,輸入關(guān)鍵字進(jìn)行檢索,可獲得書的詳細(xì)信息〔作者、出版社、內(nèi)容簡介、版次、存放地點、圖書狀態(tài)〔在館/出借和最快可借閱時間。另外用戶可以查詢最熱借閱圖書,此排行以2個月內(nèi)借閱記錄為依據(jù)。最后用戶可以按照圖書類別,查詢某類別圖書的最熱借閱排行,此排行同樣以2個月內(nèi)借閱記錄為依據(jù)。識別出的概念類:用戶,查詢,借閱記錄,圖書類別。管理員將現(xiàn)有及后來購入的圖書進(jìn)行圖書入庫〔增添圖書的編碼、書名、購買日期、價格等圖書信息。管理員對系統(tǒng)內(nèi)的圖書信息〔出版社、版次、作者、內(nèi)容簡介等進(jìn)行編輯處理。用戶輸入圖書的名字、關(guān)鍵字、作者等對圖書進(jìn)行查找;也可以分類查找圖書。用戶查詢顯示最新入庫的圖書信息。識別出的概念類:用戶,圖書,管理員。場景描述1:圖書館管理員登錄圖書管理系統(tǒng)之后,借閱者告訴圖書管理員其借書證卡號,圖書館管理員點擊新增借閱記錄后,輸入相應(yīng)的借閱證號、圖書編號和當(dāng)前借閱時間,系統(tǒng)會首先查詢書籍的狀態(tài)和借閱證的狀態(tài),及是否有到期應(yīng)還而未還的圖書,判斷是否可借,如果條件都符合,則顯示新增的借閱記錄,其中應(yīng)歸還時間是在當(dāng)前借閱時間加30天后自動生成的,若有條件不滿足,則顯示為什么不能進(jìn)行書籍正常借閱的原因。場景描述2:圖書館管理員登錄圖書管理系統(tǒng)之后,借閱者告訴圖書管理員其借書證卡號,圖書館管理員點擊圖書歸還后,輸入相應(yīng)的借閱證號、圖書編號找到相應(yīng)的借閱記錄,更新數(shù)據(jù)庫,輸入歸還時間,系統(tǒng)會根據(jù)歸還時間與應(yīng)歸還時間作比較,判斷是否超期,若超期,則需借閱者繳納相應(yīng)的罰款,同時,將圖書的狀態(tài)更新為在館。場景描述3:圖書館管理員或借閱者可根據(jù)借閱證號查詢,該借閱者的所有借閱歷史記錄。場景描述4:圖書館管理員或借閱者可根據(jù)圖書編號查詢,該圖書被借閱的所有借閱歷史記錄。場景描述5:圖書館管理員或借閱者可根據(jù)借閱證號查詢該借閱者當(dāng)前的借閱記錄,反映借閱者當(dāng)前借閱的書籍信息,借閱時間和借出應(yīng)還時間,提醒借閱者按時歸還圖書。識別出的概念類:管理員,借書證,借閱記錄,圖書。2.2域模型[域模型簡單說明、畫域模型圖]添加了關(guān)系和屬性的域模型如下圖:在場景描述中共抽出了8個概念類,依次為BorrowCard、Inquiry、Book、Administration、BorrowRecord、BorrowExtend、BookMAXNumber、BookSort.3.類圖設(shè)計3.1以數(shù)據(jù)庫模式的實體類圖[畫出整個系統(tǒng)所有的實體類的類圖,并簡單說明,小組成員可共同完成]3.1子功能類圖由于子功能只有2個,故合并之畫在如下類圖中。圖2:1.表現(xiàn)層BorrowCardForm:與用戶進(jìn)行交互,供用戶進(jìn)行密碼修改及管理員注銷離校用戶。用于接收用戶輸入的新密碼或管理員檢索用戶命令及點擊注銷用戶按鈕進(jìn)行用戶注銷。2.中間業(yè)務(wù)層BorrowCardBLL:受Form層的調(diào)用進(jìn)行業(yè)務(wù)處理,業(yè)務(wù)處理通過調(diào)用DAL層的數(shù)據(jù)庫訪問函數(shù)實現(xiàn)。3.數(shù)據(jù)訪問層BorrowCardDAL:直接訪問數(shù)據(jù)庫,實現(xiàn)對信息的讀取和修改。訪問數(shù)據(jù)庫中的表BorrowCard表獲取和修改信息。圖2:圖書信息查詢、最熱借閱的圖書查詢、圖書借閱分類統(tǒng)計功能類圖表現(xiàn)層InquiryForm:位于最外層〔最上層,供用戶進(jìn)行簡單檢索、最熱借閱、分類最熱借閱的查詢。用于接收用戶輸入的檢索數(shù)據(jù)或按鈕的點擊及呈現(xiàn)書目信息。中間業(yè)務(wù)層InquiryBLL:負(fù)責(zé)據(jù)Form層的要求進(jìn)行數(shù)據(jù)檢索。調(diào)用DAL層的數(shù)據(jù)庫訪問函數(shù)實現(xiàn)業(yè)務(wù)。數(shù)據(jù)訪問層InquiryDAL:實現(xiàn)對信息的讀取操作。訪問數(shù)據(jù)庫中的表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:實現(xiàn)對信息的讀取操作。訪問數(shù)據(jù)庫中的表Book表獲取書本詳細(xì)信息,訪問BorrowRecord表進(jìn)行書目借出應(yīng)還時間信息獲取。3.2子功能二類圖圖2-2:最熱借閱的圖書查詢功能類圖表現(xiàn)層InquiryForm:接收用戶點擊按鈕時提交的類別數(shù)據(jù)。中間業(yè)務(wù)層InquiryBLL:負(fù)責(zé)據(jù)Form層的要求進(jìn)行數(shù)據(jù)檢索。數(shù)據(jù)訪問層InquiryDAL:實現(xiàn)對信息的讀取操作。訪問BorrowRecord表進(jìn)行特定類別書目借閱量的查詢,獲取訪問數(shù)據(jù)庫中的表Book表獲取書本詳細(xì)信息,供用戶查看。3.2子功能三類圖圖2-3:圖書最熱借閱分類統(tǒng)計功能類圖表現(xiàn)層InquiryForm:接收用戶點擊按鈕時提交的類別數(shù)據(jù)。中間業(yè)務(wù)層InquiryBLL:負(fù)責(zé)據(jù)Form層的要求進(jìn)行數(shù)據(jù)檢索。數(shù)據(jù)訪問層InquiryDAL:實現(xiàn)對信息的讀取操作。訪問BorrowRecord表進(jìn)行書目借閱量的查詢,獲取訪問數(shù)據(jù)庫中的表Book表獲取書本詳細(xì)信息,供用戶查看。1.表現(xiàn)層BookInformationForm:與用戶和管理員進(jìn)行交互,供用戶根據(jù)信息查找圖書及分類查找圖書,管理員對圖書進(jìn)行入庫及修改圖書信息的操作。2.中間業(yè)務(wù)層BookInformationBLL:受Form層的調(diào)用進(jìn)行業(yè)務(wù)處理,業(yè)務(wù)處理通過調(diào)用DAL層的數(shù)據(jù)庫訪問函數(shù)實現(xiàn)。3.數(shù)據(jù)訪問層BookInformationDAL:直接訪問數(shù)據(jù)庫,實現(xiàn)對信息的讀取和修改。訪問數(shù)據(jù)庫中的表Book、BookSort、BookMAXNumber表獲取和修改信息。1.表現(xiàn)層BookRecordForm:用戶和管理員通過圖書管理系統(tǒng)和網(wǎng)上平臺的界面類直觀的進(jìn)行相關(guān)的操作,供用戶輸入卡號查詢自己所有的借閱歷史或是查詢自己當(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ù)庫訪問函數(shù)實現(xiàn),當(dāng)觸發(fā)了BookRecordForm上的一個按鈕時,就調(diào)用BookRecordBLL進(jìn)行相關(guān)的業(yè)務(wù)處理,進(jìn)一步調(diào)用BookRecordDAL層的數(shù)據(jù)庫的進(jìn)行數(shù)據(jù)庫的增改查詢。3.數(shù)據(jù)訪問層BookRecordDAL:直接訪問數(shù)據(jù)庫,實現(xiàn)對信息的讀取和修改。訪問數(shù)據(jù)庫中的表BorrowRecord、Book、BorrowCard表獲取和修改信息。圖中BorrowExtend、BorrowExtendDAL、BorrowExtendBLL、BorrowExtendForm依次為實體類、數(shù)據(jù)訪問類、業(yè)務(wù)邏輯類和界面類。主要實現(xiàn)續(xù)借、借閱超期和圖書掛失記錄的管理。數(shù)據(jù)庫邏輯設(shè)計4.物理設(shè)計4.0表匯總表名功能說明表A:Book存儲具體的一本書特有的信息表B:BookDetail存儲某種書共有的信息表C:BookMAXNumber存儲某種書所擁有的本數(shù)表D:BookSort存儲書的每種類型的具體信息表E:BorrowCard存儲借閱證卡號和借閱者信息表F:BorrowExtend主要實現(xiàn)續(xù)借、借閱超期和圖書掛失記錄的管理表G:BorrowRecord存儲圖書館借閱圖書的基本信息的表,進(jìn)行圖書館的借閱管理和借閱信息的記錄,方便對借閱信息進(jìn)行查詢統(tǒng)計表H:Administration存儲圖書館管理系統(tǒng)的管理員的信息,是管理員可以登入系統(tǒng)進(jìn)行相應(yīng)權(quán)限的操作視圖A:BookInfo用于顯示相同索書號的圖書的基本信息,如書名、作者、出版機(jī)構(gòu)等。視圖B:BookDetailInfo用于顯示每本書的條碼號,具體存放地點,副本數(shù),狀態(tài)<是否在館,借出應(yīng)還日期>。系統(tǒng)各功能模塊實現(xiàn)的說明2.1.模塊A提示:開發(fā)人員根據(jù)"編程計劃"編寫軟件的代碼,并隨時記錄編程技術(shù)、問題與對策、心得體會等等,產(chǎn)生《編程文檔》〔類似于編程日記。程序名稱圖書借閱功能描述圖書管理員在登錄圖書館管理系統(tǒng)之后,可以幫助借閱者進(jìn)行圖書借閱記錄編程技術(shù)、問題與對策、心得體會等等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ù)需要移動或移除它。//this.borrowRecordTableAdapter1.Fill<this.bookManageDataSet4.BorrowRecord>;//TODO:這行代碼將數(shù)據(jù)加載到表"bookManageDataSet3.BorrowRecord"中。您可以根據(jù)需要移動或移除它。//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圖書入庫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;}}}}新增借閱記錄,首先需要滿足一定的條件,這就需要點擊查詢借閱證狀態(tài)按鈕,輸入借閱證號,顯示借閱者的借閱證狀態(tài)及可借書數(shù)〔初始是借閱證的可借書數(shù)都為5,注銷和欠費時,會將可借書數(shù)置為0,當(dāng)借閱證狀態(tài)為可借,可借書數(shù)>=1時,即可在newborrow中辦理借閱,這里我沒有查詢圖書狀態(tài)是因為考慮到實際情況,借閱者拿著圖書辦理借閱,圖書的借閱狀態(tài)應(yīng)為在館,于是省略了這一功能。因為新增借閱功能是圖書館管理系統(tǒng)中比較重要和基本的功能,因此新增圖書功能的實現(xiàn),并不單一是對數(shù)據(jù)庫中BorrowRecord這張表進(jìn)行,在界面中按下一個新增借閱按鈕,就要在后臺對多張表進(jìn)行操作,首先是在BorrowRecord中會新增一條借閱證號與書號做復(fù)合主鍵的記錄,利用DateTime.Now將系統(tǒng)當(dāng)前時間插入borrowTime列中,利用DateTime.Now.AddDays<30>將系統(tǒng)當(dāng)前時間加上30天之后的時間插入shouldReturnTime列中,利用DateTime.MinValue將NULL插入returnTime列中,其次需要引用BookBLL和BorrowCardBLL完成借閱記錄新增的同時,將BookState改為借出,同時在BookDetail表中將書的借閱次數(shù)加1,方便最熱借閱功能的實現(xiàn),將BorrowCard這張表中的可借書數(shù)減1,。因為一次執(zhí)行的SQL語句較多而且之間牽扯的很多數(shù)據(jù)是datetime類型的,因此在一開始進(jìn)行調(diào)試的時候,出現(xiàn)了錯誤,并不知道是哪,一條語句出現(xiàn)了錯誤,必須對數(shù)據(jù)庫改變的4張表同時進(jìn)行查看,看哪一張表未出現(xiàn)變化,在查看對應(yīng)的語句,最容易出現(xiàn)錯誤的是stringupdateSql=string.Format<"update[BookDetail]set[BookDetail].BorrowCount='{0}'from[Book]where[BookDetail].BookNumber=[Book].BookNumberand[Book].BookCode='{1}'",borrowCount,bookCode>,因為需要通過BookCode將Book和BookDetail表連起來然后通過BookCode查詢到對應(yīng)的記錄在BookDetail表中更改BorrowCount,前面變成的時候sql語句中一直沒有寫from[Book],程序怎么調(diào)都不對,之間還將語句改成過select嵌套的形式,也沒能實現(xiàn),sql語句改了又改,最終調(diào)試時出現(xiàn)新增借閱記錄成功的時候,非常興奮,又看了看數(shù)據(jù)庫的4張表,也都實現(xiàn)了更改,知道終于完成了圖書借閱的操作。模塊B提示:開發(fā)人員根據(jù)"編程計劃"編寫軟件的代碼,并隨時記錄編程技術(shù)、問題與對策、心得體會等等,產(chǎn)生《編程文檔》〔類似于編程日記。程序名稱圖書歸還功能描述管理員使用圖書館管理系統(tǒng)可以幫助借閱者實現(xiàn)圖書歸還的操作記錄編程技術(shù)、問題與對策、心得體會等等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ù)需要移動或移除它。//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<"請輸入借書證號及書號!">;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圖書入庫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書號,BorrowTimeas借閱時間,ShouldReturnTimeas借出應(yīng)還時間,ReturnTimeas歸還時間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)中比較重要和基本的功能,圖書歸還功能的實現(xiàn)與新增圖書借閱功能是

溫馨提示

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

評論

0/150

提交評論