版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGEPAGE25人民武裝學院圖書管理系統(tǒng)題目:河南大學人民武裝學院圖書館管理系統(tǒng)學院:河南大學人民武裝學院專業(yè):信息系統(tǒng)與信息管理年級:08級課程:C#學生姓名:朱寧博學號:080370137指導教師:朱會東完成時間:2010年6月11日成績:總體目錄:課程設(shè)計目的。課程設(shè)計環(huán)境。課程設(shè)計要求。四、背景資料與需求分析。五、可行性技術(shù)。六、系統(tǒng)功能需求。七、系統(tǒng)實現(xiàn)目標。八、系統(tǒng)總體結(jié)構(gòu)和ER圖。九、系統(tǒng)功能描述。十、主要模塊詳細設(shè)計。十一、數(shù)據(jù)庫設(shè)計相關(guān)報表。十二、出錯分析與處理對策。十三、課程設(shè)計總體體會。十四、運行界面圖表附注。十五、參考資料。一、課程設(shè)計目的。1)要求學生熟悉軟件開發(fā)的一般過程。2)達到熟練掌握.NET基本結(jié)構(gòu)以及C#語言的基本知識和技能;3)基本掌握面向?qū)ο蟪绦蜷_發(fā)的基本思路和方法;4)掌握ADO.NET數(shù)據(jù)庫開發(fā)基本知識;5)能夠利用所學的基本知識和技能,進行簡單數(shù)據(jù)庫應用程序設(shè)計。二、課程設(shè)計環(huán)境。硬件:計算機一臺;軟件:MicrosoftVisualStudio2005//vs2008;SQLServer2005三、課程設(shè)計要求。基本要求:1)利用C#的編程思想以及組件開發(fā)原理來完成系統(tǒng)的設(shè)計;2)體現(xiàn)可視化編程基本東西,如系統(tǒng)帶有菜單、工具欄、狀態(tài)欄以及一些常用的高級控件。創(chuàng)新要求:基本要求達到后,進行創(chuàng)新設(shè)計,如把系統(tǒng)轉(zhuǎn)化為組件、給系統(tǒng)在數(shù)據(jù)方面具有導入導出功能等。四、背景資料與需求分析:圖書館有各種圖書若干冊。每種圖書都有書名、圖書編號、作者(譯者)、出版社、定價和內(nèi)容簡介。借書證記錄有借閱者的姓名、學號、年級等。人民武裝學院憑借書證借書,每次最多能借2本書,借書期限最長為30天。隨著互聯(lián)網(wǎng)的爆炸性發(fā)展,人們越來越習慣于利用網(wǎng)絡(luò)來實現(xiàn)所需的服務,網(wǎng)絡(luò)已深深影響到人們生活的各個方面。另外,傳統(tǒng)的圖書館不能滿足一部分現(xiàn)代人的需要,而電子圖書館,由于其不受時間與空間的限制同時又具有傳統(tǒng)圖書館的大部分功能,能夠滿足各類用戶的常規(guī)與特殊需求,而且其方便快捷,實現(xiàn)技術(shù)又比較成熟,受到當代人的喜愛,因此圖書管理系統(tǒng)應運而生。五、可行性技術(shù):MicrosoftVisualStudio2005//vs2008;<設(shè)計>SQLServer2005;<數(shù)據(jù)庫連接>六、系統(tǒng)功能需求:1)圖書館進行圖書借閱和圖書歸還登記。也就是為讀者建立一個系統(tǒng),應用該系統(tǒng),工作人員能方便地掌握某位讀者借了哪些書,借了多長時間。2)編著逾期圖書表。河南大學人民武裝學院圖書館對所借書籍的最長借閱時間限制為30天,對逾期未還的讀者處以罰款,促其盡快還書,以加快圖書的流通。3)提供快速的圖書搜索功能,方便讀者盡快查出所需要的書。4)系統(tǒng)提供的全部功能要簡單、直觀、實用。七、系統(tǒng)實現(xiàn)目標學校圖書管理系統(tǒng)的開發(fā)主要要實現(xiàn)的目標有以下幾個方面:(1)界面設(shè)計友好、美觀。(2)數(shù)據(jù)存儲安全、可靠。(3)信息分類清晰、準確。(4)強大的查詢功能,保證數(shù)據(jù)查詢的靈活性。(5)實現(xiàn)對圖書借閱和圖書歸還過程的全程數(shù)據(jù)信息跟蹤。(6)提供圖書借閱信息,為圖書管理員提供了真實的數(shù)據(jù)信息。(7)提供靈活、方便的登陸權(quán)限設(shè)置功能,使整個系統(tǒng)的管理分工明確。(8)具有易操作性。八、系統(tǒng)總體結(jié)構(gòu)流程圖和ER圖:1、系統(tǒng)總體結(jié)構(gòu)流程圖在本系統(tǒng)中準備通過如下窗體來實現(xiàn)功能。(1)主界面:管理著各個子窗體。(2)讀者管理子窗體:管理和顯示讀者信息(3)圖書管理子窗體:管理和顯示圖書信息。(4)流通管理子窗體:管理和顯示圖書征訂、圖書借閱、圖書歸還、圖書逾期、圖書罰款信息。2系統(tǒng)數(shù)據(jù)庫關(guān)系的E—R圖:系統(tǒng)所涉及到的實體及關(guān)聯(lián)關(guān)系比較簡單,主要的實體只有讀者和圖書兩個,他們通過讀者的借閱活動而發(fā)生聯(lián)系,其E—R圖如下九、系統(tǒng)功能描述要求實現(xiàn)一個小型的圖書館管理系統(tǒng)。本系統(tǒng)主要可以實現(xiàn)以下的管理功能:登錄管理、讀者管理、圖書管理、流通管理、退出管理等。(1)登錄管理模塊該模塊的主要任務是實現(xiàn)與相關(guān)數(shù)據(jù)庫連接,管理員輸入正確的用戶名和密碼后,登陸進入主界面。(2)讀者管理模塊該模塊的功能是實現(xiàn)對讀者類別的設(shè)置、讀者檔案的管理。(3)圖書管理模塊該模塊的主要功能有:實現(xiàn)對圖書類別的設(shè)置、圖書檔案的管理(4)流通管理模塊該模塊的主要功能是對圖書征訂,圖書借閱,圖書歸還,逾期清單,圖書罰款的管理。十.主要模塊詳細設(shè)計:登陸模塊:功能描述:系統(tǒng)初始時,由操作系統(tǒng)調(diào)用管理員信息,經(jīng)過身份驗證,進入主界面。輸入項:用戶名:管理員表內(nèi)設(shè)定的編號;密碼:管理員表內(nèi)與編號對應的密碼。輸出項:若進入,輸出主界面;否則就提示用戶名和密碼錯誤。流程圖和主要登陸代碼:登陸主要代碼:privatevoidbutton1_Click(objectsender,EventArgse){if(用戶名.Text.Trim()==""||密碼.Text.Trim()=="")MessageBox.Show("請輸入用戶名和密碼","提示");else{stringstrConn="DataSource=(local);InitialCatalog=libbook;IntegratedSecurity=True";SqlConnectioncn=newSqlConnection(strConn);stringsql="select*from管理員where編號='"+用戶名.Text.Trim()+"'and密碼='"+密碼.Text.Trim()+"'";SqlCommandcmd=newSqlCommand(sql,cn);cn.Open();SqlDataReaderdr=cmd.ExecuteReader();if(dr.Read()){mainFrmfrm1=newmainFrm();frm1.Show();this.Hide();}else{MessageBox.Show("用戶名和密碼錯誤");}}}privatevoidbutton2_Click(objectsender,EventArgse){Application.Exit();}}圖書借閱模塊:功能描述:確定借書,取消借書,退出。輸入項:編號或條形碼。輸出項:狀態(tài)、圖書編號、書名、借閱時間、應還時間、出版社、價格。流程圖主要借閱代碼:借書主要代碼:privatevoidborrowBook() { if(this.totalCount>=Convert.ToInt32(txt4.Text.Trim()))//如果借書達到上限,則不允許再借 { MessageBox.Show("已經(jīng)達到最大借書數(shù)量,請先歸還書籍后再借書","借書數(shù)量達到上限",MessageBoxButtons.OK,MessageBoxIcon.Information); groupBox2.Enabled=false; return; }stringstrConn="DataSource=(local);InitialCatalog=libbook;IntegratedSecurity=True"; SqlConnectioncn=newSqlConnection(strConn); cn.Open(); SqlCommandcmd=cn.CreateCommand(); DataRowaRow=tblBooks.NewRow(); stringbookType;//保存新借圖書的類型 if(rbt3.Checked) { cmd.CommandText="select編號,書名,出版社,價格,類型from圖書信息where編號='"+txt5.Text.Trim()+"'"; } else { cmd.CommandText="select編號,書名,出版社,價格,類型from圖書信息where條形碼='"+txt5.Text.Trim()+"'"; } SqlDataReaderdr=cmd.ExecuteReader();//執(zhí)行查詢,并讀入圖書數(shù)據(jù) dr.Read(); if(dr.HasRows==false)//如未能查詢到圖書信息,則提示重新輸入 { MessageBox.Show("無此圖書,請檢查后重新輸入","錯誤",MessageBoxButtons.OK,MessageBoxIcon.Error); return; } else { stringnewbookID=dr.GetValue(0).ToString(); foreach(DataRownewRowintblBooks.Rows)//不允許重復借書 { if(newRow["圖書編號"].ToString().Trim()==newbookID.Trim()) { MessageBox.Show("該讀者已經(jīng)借有此書,不能再借","信息",MessageBoxButtons.OK,MessageBoxIcon.Warning); return; } } aRow["圖書編號"]=dr.GetValue(0).ToString(); aRow["書名"]=dr.GetValue(1).ToString(); aRow["出版社"]=dr.GetValue(2).ToString(); aRow["價格"]=Convert.ToDecimal(dr.GetValue(3)); aRow["狀態(tài)"]="新借"; aRow["借閱時間"]=System.DateTime.Now.ToString(); bookType=dr.GetValue(4).ToString(); } dr.Close(); cmd.CommandText="select可借天數(shù)from圖書類型where類型名稱='"+bookType+"'";//計算歸還時間 intdays=Convert.ToInt32(cmd.ExecuteScalar()); DateTimereturnTime=System.DateTime.Now.AddDays(days); aRow["應還時間"]=returnTime.ToString(); tblBooks.Rows.Add(aRow);//增加新借書記錄 totalCount++; thisCount++; label1.Text="已借書"+totalCount.ToString()+"本"; label2.Text="本次借書"+thisCount.ToString()+"本"; }圖書歸還模塊:功能描述:圖書歸還。輸入項:編號或條形碼。輸出項:還書。流程圖主要代碼:還書主要代碼: privatevoidbtnReturn_Click(objectsender,System.EventArgse) { intcurRow=dataGrid1.CurrentCell.RowNumber; stringborrowID=dataGrid1[curRow,0].ToString().Trim();//借閱編號 DateTimereturnTime=Convert.ToDateTime(dataGrid1[curRow,6]);//應還時間 decimalpenalty=0; if(returnTime<System.DateTime.Now) { penalty=calPenalty(returnTime); } if(penalty!=0)//提示需要支付罰金的讀者 { stringmsg="該圖書應于"+returnTime+"歸還,必須支付過期罰金"+penalty.ToString()+"元"; MessageBox.Show(msg,"圖書過期",MessageBoxButtons.OK,MessageBoxIcon.Information); }stringstrConn="DataSource=(local);InitialCatalog=libbook;IntegratedSecurity=True"; SqlConnectioncn=newSqlConnection(strConn); cn.Open(); SqlCommandcmd=cn.CreateCommand(); cmd.CommandText="execsf_圖書歸還"+borrowID+","+penalty.ToString(); cmd.ExecuteNonQuery(); dataSet21.圖書借閱.Clear(); da1.Fill(dataSet21); } //計算過期書罰金 privatedecimalcalPenalty(DateTimerTime) {//計算過期天數(shù) intoverDays=365*(System.DateTime.Now.Year-rTime.Year)+System.DateTime.Now.DayOfYear-rTime.DayOfYear; //根據(jù)過期天數(shù)計算罰金,本實例中定為每天.2元 decimalfee=(decimal)0.2*overDays; return(fee); } }4)讀者類別、讀者檔案、圖書類別、圖書檔案、圖書征訂、圖書罰款、逾期圖書等模塊:A功能描述:通過相關(guān)編號或類型名稱,進行數(shù)據(jù)庫連接、核查,索引所需信息。B輸入項:編號或類型名稱。C輸出項:相關(guān)讀者和圖書信息。D大致流程圖:十一、數(shù)據(jù)庫設(shè)計相關(guān)報表:
根據(jù)程序的功能得出數(shù)據(jù)實體,進行數(shù)據(jù)庫設(shè)計分析,進行設(shè)計時應注意各表之間的關(guān)系,所涉及的主要數(shù)據(jù)表應包括:“讀者信息”表:{條形碼,編號,姓名,性別,類型,出生日期,有效證件,證件號碼,聯(lián)系方式,登記日期,有限期至,操作員,備注,圖書借閱次數(shù),期刊借閱次數(shù),是否掛失}“圖書信息”表:{條形碼,編號,書名,類型,作者,譯者,ISBN,出版社,價格,頁碼,書架名稱,現(xiàn)存量,庫存總量,入庫時間,操作員,簡介,借出次數(shù),是否注銷}“圖書借閱”表:{借閱編號,圖書編號,讀者編號,借閱時間,應還時間,續(xù)借次數(shù),操作員,狀態(tài)}“圖書歸還”表:{歸還編號,圖書編號,讀者編號,退還押金,歸還時間,操作員,確認歸還}“圖書征訂”表:{征訂編號,圖書編號,訂購者,訂購者聯(lián)系方式,訂購數(shù)量,訂購單價,訂購日期,是否驗收,驗收日期,操作員}“圖書罰款”表:{罰款編號,圖書編號,讀者編號,罰款日期,應罰金額,實收金額,是否交款,備注}“管理員”表:{編號,名稱,密碼,圖書管理,期刊管理,讀者管理,圖書借還,期刊借還,系統(tǒng)設(shè)置,系統(tǒng)查詢,排行榜,系統(tǒng)維護}(1)讀者信息表:字段名稱類型寬度是否為空條形碼Varchar20否編號Varchar20否姓名Varchar10否性別Varchar4否類型Varchar20否出生日期Smallldatetime是有效證件Varchar30否證件號碼Varchar30否聯(lián)系方式Varchar200是登記日期Smalldatetime否有限期至Smalldatetime否操作員Varchar10否備注Ntext是圖書借閱次數(shù)Int否期刊借閱次數(shù)Int否是否掛失bit否(2)圖書信息表:字段名稱類型寬度是否為空條形碼Varchar20否編號varchar20否書名varchar100否類型varchar50否作者varchar200是譯者varchar100是ISBNvarchar20否出版社varchar50是價格Money是頁碼Int是書架名稱Varchar100否現(xiàn)存量Int是庫存總量Int是入庫時間Smalldatetime否操作員Varchar10否簡介Ntext是借出次數(shù)Int否是否注銷Bit否(3)圖書借閱表:字段名稱類型寬度是否為空借閱編號Int16否圖書編號Varchar20否讀者編號Varchar5否借閱時間Smalldatetime8否應還時間Smalldatetime16否綾借次數(shù)Int8否操作員Varchar否狀態(tài)varchar否(4)圖書歸還表:字段名稱類型寬度是否為空歸還編號Int20否圖書編號Varchar20否讀者編號Varchar20否退還押金Money50否歸還時間Smalldatetime否操作員Varchar10否確認歸還bit否(5)圖書征訂表:字段名稱類型寬度是否為空征訂編號varchar50否圖書編號varchar50否訂購者varchar100否訂購者聯(lián)系方式varchar400是訂購數(shù)量Int否訂購單價Money否訂購日期Smalldatetime否是否驗收Bit否驗收日期Smalldatetime否操作員varchar20否(6)圖書罰款表:字段名稱類型寬度是否為空罰款編號Int否圖書編號Varchar20否讀者編號Varchar20否罰款日期Smalldatetime否應罰金額Money否實收金額Money否是否交款Bit否備注varchar200是(7)管理員表:字段名稱類型寬度是否為空編號Varchar10否姓名Varchar10否年齡Varchar10是聯(lián)系電話Varchar10是住址Varchar10是照片varchar20是權(quán)限Varchar10否說明Varchar10是密碼Varchar10否十二、出錯分析與處理對策:對于本程序的幾種可能的錯誤進行了分析,分別進行了不同的處理。主要的錯誤可能有:數(shù)據(jù)庫連接錯誤: 這類錯誤主要是數(shù)據(jù)庫設(shè)置不正確,或SQLServer2005異常引起的,只要取消本次操作,提醒用戶檢查數(shù)據(jù)庫問題就可。輸入錯誤: 這主要是用戶輸入不規(guī)范造成的,在盡量減少用戶出錯的條件的情況下,主要也是通過對話框,提醒用戶,然后再次操作。其他操作錯誤: 對于用戶的不正當操作,有可能使程序發(fā)生錯誤。主要是中止操作,并提醒用戶中止的原因和操作的規(guī)范。其他不可預知的錯誤: 程序也會有一些無法預知或沒考慮完全的錯誤,對此不可能作出萬全的異常處理,這時主要要保證數(shù)據(jù)的安全,所以要經(jīng)常的進行數(shù)據(jù)庫備份。十課程設(shè)計體會總結(jié):通過老師的指導,同學們的幫助和自身的不斷努力
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育法規(guī)全真模擬考試試卷B卷含答案
- 2023年貴金屬:鉑資金申請報告
- 河北省保定市歷史初二上學期期末試題及答案指導(2024-2025學年)
- 2024年度水庫工程承建商協(xié)議模板
- 2024外匯資金借款協(xié)議參考樣式
- 2024年裝修住宅維護服務協(xié)議
- 2024年出口商品協(xié)議格式
- 二手房買賣2024中介服務協(xié)議樣本
- 2024年度污水站運維專業(yè)服務協(xié)議
- 2024年度企業(yè)專屬物流配送服務協(xié)議
- 湘少版英語五年級下冊全冊教案(教學設(shè)計)
- 2024醫(yī)院消防培訓
- 上海中心大廈綠色結(jié)構(gòu)設(shè)計關(guān)鍵技術(shù)
- 我們的太陽系兒童故事
- 智聯(lián)招聘題庫國企筆試題型
- “文明交通-安全出行”主題班會
- 非車險新人培訓課件
- 老舊小區(qū)物業(yè)管理方案
- 《物業(yè)交房培訓》
- 小時工合同(范本)
- 化工產(chǎn)品物流作業(yè)流程設(shè)計方案
評論
0/150
提交評論