版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、目錄1 引言11.1課程設(shè)計選題11.2課程設(shè)計的目的11.3本選題的設(shè)計背景12 系統(tǒng)分析與設(shè)計22.1 系統(tǒng)功能需求分析22.2 系統(tǒng)功能模塊設(shè)計32.3 系統(tǒng)開發(fā)運行環(huán)境33 數(shù)據(jù)庫設(shè)計44 模塊詳細設(shè)計與實現(xiàn)64.1 登錄模塊64.2 主頁面模塊74.3書籍管理頁面模塊84.4讀者管理模塊94.5書籍借還模塊114.6系統(tǒng)查詢模塊154.7系統(tǒng)設(shè)置模塊164.8更改口令模塊17結(jié)論19參考文獻201 引言1.1課程設(shè)計選題書刊租借信息管理系統(tǒng)1.2課程設(shè)計的目的通過本課程設(shè)計,掌握使用ASP.NET技術(shù)進行網(wǎng)絡(luò)程序設(shè)計的基本知識,如:服務(wù)器控件、內(nèi)部對象、數(shù)據(jù)庫建立、數(shù)據(jù)庫的讀取、數(shù)據(jù)
2、顯示等;熟悉網(wǎng)絡(luò)程序設(shè)計每個步驟中的任務(wù)和實施方法,并加深對C#語言的理解。通過設(shè)計一個圖書館借閱管理系統(tǒng),進一步熟悉網(wǎng)絡(luò)環(huán)境下的程序設(shè)計方法,綜合訓(xùn)練動手能力,提高分析問題、解決實際問題的能力。1.3本選題的設(shè)計背景人們對于借閱書籍的需求和途徑越來越多,并且隨著網(wǎng)絡(luò)技術(shù)的高速發(fā)展和計算機應(yīng)用的普及,在一些小書店,仍然手工進行圖書的管理,又因管理人員對圖書的類型不了解,讀者需要圖書難以在短時間內(nèi)找到,不便于及時的調(diào)整書籍的結(jié)構(gòu)。書租借管理系統(tǒng)有效的解決了這些問題,提供了有效的解決手段,所以一個使用功能的系統(tǒng)必須的。2 系統(tǒng)分析與設(shè)計2.1 系統(tǒng)功能需求分析功能主要是對書刊租借信息進行管理。其開
3、發(fā)主要包括后臺數(shù)據(jù)庫的建立,維護以及前臺應(yīng)用程序的開發(fā)兩個方面:一方面要求建立數(shù)據(jù)一致和完整性強、數(shù)據(jù)安全性高的數(shù)據(jù)庫:另一方面要求應(yīng)用程序具有功能完美、易使用等特點。(1)管理員用戶要求實現(xiàn)如下功能:修改個人密碼:可以修改管理員密碼。添加管理員:可以再添加其他用戶,對讀者的權(quán)限進行設(shè)置,對其基本信息進行、改、刪除。書籍管理:包括書籍類型管理和書籍信息管理。書籍類型管理包括添加、刪除、修改書籍類型。書籍信息管理包括書籍添加書籍和名稱,作者,單價,出版社等信息的修改及刪除。讀者管理:包括讀者類型瀏覽和讀者信息管理。查看讀者的類型。讀者信息管理包括對對著信息進行添加、刪除和修改。書籍借還:對書籍進
4、行借閱、續(xù)借及歸還。系統(tǒng)查詢:借閱書籍信息及其借閱情況。(2)系統(tǒng)根據(jù)最高權(quán)限的管理員進行其他用戶的設(shè)置。系統(tǒng)包括如下功能:讀者用戶要求實現(xiàn)如下功能:修改個人信息:用戶登錄后,可以修改個人的信息,如:密碼等。查詢圖書信息:實現(xiàn)按書名、作者、出版社等多種方式的查詢。查詢圖書外借信息:實現(xiàn)按書名、作者、出版社等多種方式的查詢。書籍借閱:讀者可以進行借書操作。書籍續(xù)借:可以進行書籍的續(xù)借。書籍歸還:用戶歸還圖書,可以查看還有哪些書沒有歸還。2.2 系統(tǒng)功能模塊設(shè)計書刊借閱信息系統(tǒng)通過對系統(tǒng)進行需求分析得到,系統(tǒng)主要包括十一大功能模塊,分別是登錄、注冊、修改刪除讀者信息、圖書查詢、借閱查詢、添加管理用
5、戶、添加圖書、借書、還書、續(xù)借等。功能模塊圖如圖1所示:用戶管理員系統(tǒng)查詢書籍借還系統(tǒng)查詢書籍借還讀者管理書籍管理圖1 功能模塊圖2.3 系統(tǒng)開發(fā)運行環(huán)境本系統(tǒng)開發(fā)平臺:ASP.NET+Microsoft SQL Server2000.本系統(tǒng)運行環(huán)境:Windows XP或以上版本(安裝IIS5.0以上版本)3 數(shù)據(jù)庫設(shè)計系統(tǒng)選用Microsoft SQL Server2000數(shù)據(jù)庫,共建立四個數(shù)據(jù)表,分別是管理員信息表、讀者信息表,圖書信息表,圖書借閱信息表。管理員信息表,用于存儲管理員的基本信息,主要包括用戶名、密碼。其結(jié)構(gòu)如下所示:表一 tb_user(管理員信息)表序號字段名數(shù)據(jù)類型主
6、鍵允許空說明1userId文本是否2userName文本否否用戶名字3userPwd文本否否用戶密碼用戶信息表,用于存儲管理員的基本信息,主要包括用戶名、密碼。其結(jié)構(gòu)如下所示:表二 tb_user1(用戶信息)表序號字段名數(shù)據(jù)類型主鍵允許空說明1userId文本是否2userName文本否否用戶名字3userPwd文本否否用戶密碼讀者信息表,用于存儲讀者的基本信息,其結(jié)構(gòu)如下所示:表三tb_readerInfo(讀者信息)表序號字段名數(shù)據(jù)類型主鍵允許空說明1ReaderBarCode自動編號否否自動編號2readerName文本是否讀者姓名3sex文本否否性別4readerType文本否否讀者
7、類型5certificateType文本否否證件類型6certificate文本否否證件號7tel文本否否聯(lián)系電話8email文本否否郵箱9remark文本否否備注讀者類型表,用于存儲讀者類型的基本信息,其結(jié)構(gòu)如下所示:表四tb_readerType(讀者類型)表字段名數(shù)據(jù)類型主鍵允許空說明typeID數(shù)字是否序列號typeName文本否否類型borrowDay數(shù)字否否允許外借時間書籍類型表,用于存儲讀者類型的基本信息,其結(jié)構(gòu)如下所示:表五 tb_bookType(書籍類型)表字段名數(shù)據(jù)類型主鍵允許空說明typeID數(shù)字是否序列號typeName文本否否類型borrowDay數(shù)字否否允許外借時
8、間書籍信息表,用于存儲書籍的基本信息,其結(jié)構(gòu)如下所示:表六tb_bookInfo(書籍信息)表字段名數(shù)據(jù)類型主鍵允許空說明bookBarCode文本是否書籍代碼條bookName文本否否書名bookType數(shù)字否否類型bookConcern文本否否出版社aothor數(shù)字否否定價pricemoney否否價格borrowSum文本否否借閱次數(shù)書籍借閱信息表,用于存儲書籍的基本信息,其結(jié)構(gòu)如下所示:表七tb_bookborrow(書籍借閱信息)表字段名數(shù)據(jù)類型主鍵允許空說明bookBarCode文本是否書籍代碼條bookName文本否否書名borrowTime時間/日期否否借書時間returnTim
9、e時間/日期否否歸還時間readerBarCode文本否否讀者姓名isReturnBit否否是否歸還4模塊詳細設(shè)計與實現(xiàn)4.1 登錄模塊主要用于用戶登錄.登陸界面的設(shè)計,登錄運行界面圖1如下所示:圖1用戶登陸界面關(guān)鍵代碼如下:protectedvoid btnEntry_Click(object sender, EventArgs e) string userName = txtName.Text;string Pwd = txtPwd.Text;string sql = "select * from tb_user where userName='" + user
10、Name + "' and userPwd='" + Pwd + "'"string sql1 = "select * from tb_user1 where userName='" + userName + "' and userPwd='" + Pwd + "'"if (dataOperate.seleSQL(sql) > 0) Session"userName" = txtName.Text; Respons
11、e.Redirect("index.aspx"); elseif (dataOperate.seleSQL(sql1) > 0) Session"userName" = txtName.Text; Response.Redirect("dzindex.aspx"); else RegisterStartupScript("", "<script>alert('登錄失??!')</script>"); 4.2 主頁面模塊主要是展示了圖書的借閱信息,主要包
12、括用戶和管理員的頁面:模塊的運行界面如圖2,3所示:圖2管理員注冊界面圖3 用戶注冊界面4.3書籍管理頁面模塊書籍管理功能主要是對書籍的類型和書籍信息進行添加、刪除和修改。運行界面如圖4,、5所示:圖4書籍類型管理頁面圖5 書籍檔案管理頁面實現(xiàn)功能的主要代碼如下:protectedvoid btnEntry_Click(object sender, EventArgs e) string userName = txtName.Text;string Pwd = txtPwd.Text;string sql = "select * from tb_user where userName
13、='" + userName + "' and userPwd='" + Pwd + "'"string sql1 = "select * from tb_user1 where userName='" + userName + "' and userPwd='" + Pwd + "'"if (dataOperate.seleSQL(sql) > 0) Session"userName" = tx
14、tName.Text; Response.Redirect("index.aspx"); elseif (dataOperate.seleSQL(sql1) > 0) Session"userName" = txtName.Text; Response.Redirect("dzindex.aspx"); else RegisterStartupScript("", "<script>alert('登錄失?。?#39;)</script>"); 4.4讀者管理
15、模塊該模塊是管理員用的權(quán)限。主要包括讀者的類型管理和讀者信息管理。讀者類型瀏覽主要是將數(shù)據(jù)庫的數(shù)據(jù)顯示給管理員,更好的設(shè)置管理。讀者信息管理主要有用戶信息的添加、刪除、修改的功能。運行界面如圖6、7所示:圖6讀者類型瀏覽圖7 讀者檔案管理關(guān)鍵代碼如下:用戶瀏覽:publicvoid bindReaderType() string sql = "select * from tb_readerType" gvReaderType.DataSource = dataOperate.getDataset(sql, "tb_readerType"); gvRead
16、erType.DataKeyNames = newstring "id" ; gvReaderType.DataBind(); protectedvoid gvReaderType_PageIndexChanging(object sender, GridViewPageEventArgs e) gvReaderType.PageIndex = e.NewPageIndex; gvReaderType.DataBind(); 用戶信息管理:publicvoid bindReaderInfo() string sql = "select * from tb_read
17、erInfo as a inner join tb_readerType as b on a.readerType=b.id" gvReaderInfo.DataSource = dataOperate.getDataset(sql, "tb_readerInfo"); gvReaderInfo.DataKeyNames = newstring "readerBarCode" ; gvReaderInfo.DataBind(); protectedvoid gvReaderInfo_RowDeleting(object sender, Grid
18、ViewDeleteEventArgs e) string id = gvReaderInfo.DataKeyse.RowIndex.Value.ToString();string sql = "delete tb_readerInfo where readerBarCode='" + id + "'"dataOperate.execSQL(sql); bindReaderInfo(); 4.5書籍借還模塊這是系統(tǒng)的主要功能,主要包括書籍借閱、書籍續(xù)借和書籍歸還功能,書籍借閱主要是根據(jù)讀者的條形碼和書籍的條形碼進行判斷,根據(jù)其借閱的數(shù)量去
19、判斷是否能借閱書籍;書籍的續(xù)借和書籍歸還實現(xiàn)類似。書籍借閱主要是返回用戶的信息和所要借閱的書籍信息。并根據(jù)可借數(shù)量去判斷是否進行借閱。運行界面如圖8所示:圖8 書籍借閱運行界面關(guān)鍵代碼如下:publicvoid bindReaderInfo() string readerBarCode = txtReaderBarCode.Text;string readerSql = "select * from tb_readerInfo where readerBarCode='" + readerBarCode + "'"SqlDataReade
20、r sdr = dataOperate.getRow(readerSql);if (sdr.Read() txtReaderName.Text = sdr"readerName".ToString(); txtReaderSex.Text = sdr"Sex".ToString(); txtCertificateType.Text = sdr"certificateType".ToString(); txtCertificate.Text = sdr"certificate".ToString();string r
21、eaderTypeSql = "select * from tb_readerType where id=" + sdr"readerType".ToString();SqlDataReader typeSdr = dataOperate.getRow(readerTypeSql); typeSdr.Read(); txtReaderType.Text = typeSdr"type".ToString();int borrowNum = Convert.ToInt32(typeSdr"num");string se
22、lSql = "select count(*) from tb_bookBorrow where readerBarCode='" + readerBarCode + "' and isReturn ='0'"int alreadyNum = dataOperate.seleSQL(selSql); txtNum.Text = Convert.ToString(borrowNum - alreadyNum); isSum = 1; else RegisterStartupScript("", "
23、;<script>alert('讀者條形碼輸入錯誤!')</script>"); protectedvoid btnBookSearch_Click(object sender, EventArgs e) if (isSum > 0) if (Convert.ToInt32(txtNum.Text.Trim() > 0) if (txtBookBarCode.Text.Trim() != "") string bookBarCode = txtBookBarCode.Text;string sql = "
24、;select * from tb_bookInfo where bookBarCode='" + bookBarCode + "'"DataSet ds = dataOperate.getDataset(sql, "tb_bookInfo");if (ds.Tables"tb_bookInfo".DefaultView.Count > 0) gvBookBorrow.DataSource = ds.Tables"tb_bookInfo".DefaultView; gvBookBor
25、row.DataKeyNames = newstring "bookBarCode" ; gvBookBorrow.DataBind(); else RegisterStartupScript("", "<script>alert('圖書條形碼錯誤!')</script>"); else RegisterStartupScript("", "<script>alert('圖書條形碼不能為空')</script>");
26、 else RegisterStartupScript("", "<script>alert('借閱數(shù)量已滿!不可以再借閱')</script>"); else RegisterStartupScript("", "<script>alert('請先輸入正確的讀者條形碼!')</script>"); 書籍續(xù)借主要是返回用戶的信息和所要借閱的書籍信息。運行界面如圖9所示:圖9 書籍續(xù)借運行界面續(xù)借的關(guān)鍵代碼:protectedvoid g
27、vBookRenewal_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) string bookBarCode = gvBookRenewal.DataKeyse.NewSelectedIndex.Value.ToString();string sql = "select * from tb_bookInfo as a inner join tb_bookType as b on a.bookType=typeID where a.bookBarCode='" + bookBarCode
28、 + "'"SqlDataReader sdr = dataOperate.getRow(sql); sdr.Read(); int borrowDay = Convert.ToInt32(sdr"borrowDay"); string returnTime = DateTime.Now.Date.AddDays(borrowDay).ToShortDateString(); string updateSql = "update tb_bookBorrow set returnTime='" + returnTime
29、+ "' where bookBarCode='" + bookBarCode + "'and readerBarCode='" + txtReaderBarCode.Text + "' and isReturn='0' "if (dataOperate.execSQL(updateSql) RegisterStartupScript("", "<script>alert('續(xù)借成功!')</script>&q
30、uot;);string selSql = "select * from tb_bookBorrow where bookBarCode='" + bookBarCode + "'and readerBarCode='" + txtReaderBarCode.Text + "'and isReturn='0'" bindGridView(selSql); else RegisterStartupScript("", "<script>alert(
31、'續(xù)借失??!')</script>"); 書籍歸還主要是返回用戶的信息和所要借閱的書籍信息。并根據(jù)歸還之后,借閱數(shù)量會增加。運行界面如圖10所示:圖10 書籍續(xù)借運行界面關(guān)鍵代碼:protectedvoid gvBookReturn_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) string bookBarCode = gvBookReturn.DataKeyse.NewSelectedIndex.Value.ToString();string updateSql = &qu
32、ot;update tb_bookBorrow set isReturn='1' where bookBarCode='" + bookBarCode + "'and readerBarCode='" + txtReaderBarCode.Text + "'"if (dataOperate.execSQL(updateSql) RegisterStartupScript("", "<script>alert('歸還成功!')</scr
33、ipt>"); gvBookReturn.DataSource = null; gvBookReturn.DataBind(); txtBookBarCode.Text = null; else RegisterStartupScript("", "<script>alert('歸還失??!')</script>"); 4.6系統(tǒng)查詢模塊系統(tǒng)查詢模塊可以查詢各類書籍詳細信息,以及根據(jù)書籍的借閱信息查詢。其運行界面如圖11所示:圖11書籍信息查詢界面其中關(guān)鍵代碼如下:protectedvoid gvBo
34、okInfo_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlRowType.DataRow) string bookType = e.Row.Cells2.Text.ToString();string typeSql = "select * from tb_bookType where TypeID=" + bookType;SqlDataReader typeSdr = dataOperate.getRow(typeSql); typeSdr.Read(
35、); e.Row.Cells2.Text = typeSdr"typeName".ToString(); 書籍借閱查詢,返回書籍信息及借閱的次數(shù)。其運行界面如圖12所示:圖11 書籍借閱信息查詢界面其中關(guān)鍵代碼如下:protectedvoid btnSearch_Click(object sender, EventArgs e) string condition = ddlCondition.SelectedValue;string key = txtKey.Text; sql = "select * from tb_bookBorrow where "
36、 + condition + " like '%" + key + "%'" bindBookBorrow(sql, getisReturn(); 4.7系統(tǒng)設(shè)置模塊主要是用于管理員度用戶的增加和刪除;運行界面如圖12所示:圖12 用戶管理界面添加和刪除的關(guān)鍵代碼如下:publicvoid bindUerManage() string sql = "select * from tb_user1" gvAdmSet.DataSource = dataOperate.getDataset(sql, "tb_use
37、r1"); gvAdmSet.DataKeyNames=newstring "userName" gvAdmSet.DataBind(); protectedvoid gvAdmSet_RowDeleting(object sender, GridViewDeleteEventArgs e) string userName = this.gvAdmSet.DataKeyse.RowIndex.Value.ToString(); string sql = "delete from tb_user where userName='" + u
38、serName + "'"dataOperate.execSQL(sql); bindUerManage(); 彈出用戶窗口的關(guān)鍵代碼如下:if (dataOperate.execSQL(sql) RegisterStartupScript("", "<script>alert('添加成功!');window.opener.location.href=window.opener.location='userManage.aspx'window.close();</script>&q
39、uot;); else RegisterStartupScript("", "<script>alert('設(shè)置失?。?#39;)</script>"); 4.8更改口令模塊主要是用于用戶的密碼修改,運行的界面如圖 13所示:圖13用戶口令修改運行界面關(guān)鍵代碼如下:protectedvoid btnSave_Click(object sender, EventArgs e) string sql = "select * from tb_user where userName='" + Session"userName".ToString() + "'"SqlDataReader sdr = dataOperate.getRow(sql); sdr.Read();if (txtOldPass.Text = sdr"userPwd".ToString() string upSql = "update tb_user set userPwd='" + tx
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版教學(xué)課件動物細胞培養(yǎng)和細胞核移植
- 迎接2024:智能UG數(shù)控編程培訓(xùn)課件革新
- 注冊會計師考試《審計》專項練習(xí)合集9
- 2024版安全生產(chǎn)培訓(xùn)記錄表助力企業(yè)安全培訓(xùn)
- 超級詳細音標講解教程-恐龍版
- 初二物理學(xué)習(xí)常見問題解答
- 2024-2025學(xué)年高中化學(xué)第四章電化學(xué)基礎(chǔ)綜合訓(xùn)練含解析新人教版選修4
- 2025屆高考生物一輪復(fù)習(xí)第8單元生命活動的調(diào)節(jié)第4講免疫調(diào)節(jié)教案新人教版必修3
- 2024-2025年新教材高中生物第二章細胞的結(jié)構(gòu)第二節(jié)細胞膜控制細胞與周圍環(huán)境的聯(lián)系2學(xué)案浙科版必修1
- 生物教學(xué)常規(guī)
- 小班安全我要跟著老師走
- (正式版)JBT 14795-2024 內(nèi)燃機禁用物質(zhì)要求
- 基于核心素養(yǎng)初中數(shù)學(xué)跨學(xué)科教學(xué)融合策略
- 200TEU 長江集裝箱船設(shè)計
- 辦公樓物業(yè)服務(wù)管理的培訓(xùn)
- 智慧能源管理平臺建設(shè)項目解決方案
- JTG∕T F30-2014 公路水泥混凝土路面施工技術(shù)細則
- 2024年高中語文學(xué)業(yè)水平過關(guān)測試四-名句名篇默寫積累過關(guān)訓(xùn)練(全國通用)學(xué)生版
- 糖尿病性舞蹈病
- 醫(yī)學(xué)類-教學(xué)查房異位妊娠(宮外孕)
- 眼視光技術(shù)職業(yè)生涯規(guī)劃大賽
評論
0/150
提交評論