1、第二步系统将验证读者是否有效,并查询数据库以确认借阅图书是否存在。只有这两个条件都被满足时,借阅请求才被接受,读者才可以借出图书。同时,系统还要保存读者的借阅记录,以便读者归还图书后,系统可以删除被借阅图书的借阅记录。三、概要设计图书馆管理信息系统需要完成功能主要有:1. 读者基本信息的输入,包括借书证编号、读者姓名、读者性别。2读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。3书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。4书籍类别信息的查询、修改,包括类别编号、类别名称。5书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期
2、、登记日期。6书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期登记日期等。7借书信息的输入,包括读者借书证编号、书籍编号、借书日期。8借书信息的查询、修改,包括借书证编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。9还书信息的输入,包括借书证编号、书籍编号、还书日期。 10还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。11超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。12超期还书罚款查询,删除,包括读者借书证编号、读者姓名、书籍编号、书籍名称,罚款金额等关
3、系模式(一) 书籍类别(种类编号,种类名称)(二) 读者(借书证编号,读者姓名,读者性别,读者种类,登记时期)(三) 书籍(书籍编号,书籍名称,书籍类别,书记作者,出版社名称,出版日期,登记日期)(四) 借阅(借书证编号,书籍编号,读者借书时间)(五) 还书(借书证编号,书籍编号,读者还书时间)(六) 罚款(借书证编号,读者姓名,借书证编号,书籍编号,读者借书时间)全组成员成员分工四、详细设计1、图书管理信息系统可以划分的实体有:书籍类别信息实体、读者信息实体、书籍信息实体、借阅记录信息实体,归还记录信息实体。书籍类别实体读者姓名类别名称2、读者信息读者信息实体读者借书证编号读者性别读者种类e
4、登记时间3、信息实体书籍信息实体书籍编号书籍名称书籍类别编号书籍作者出版时间收录时间是否被借出版社2.2数据流程图源代码查询并读入读者信息以及读者已经借书的信息private void txt1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)if(e.KeyChar=13&txt1.Text.Trim()!=)txt2.Clear();txt3.Clear();txt4.Clear();this.showInfo();/显示读者信息显示读者信息和所借图书信息private void showInfo() str
5、ing strConn = Data Source=.;Initial Catalog=libbook;Integrated Security=True;SqlConnection cn=new SqlConnection(strConn);cn.Open();SqlCommand cmd=cn.CreateCommand();if(rbt1.Checked)/判断根据编号查询读者信息还是根据条形码cmd.CommandText=select a.姓名,a.类型,b.图书册书,a.编号 from 读者信息 a,读者类型 b+ where (a.类型=b.类型)and(a.编号=+txt1.Te
6、xt.Trim()+)else where (a.类型=b.类型)and(a.条形码=SqlDataReader dr=cmd.ExecuteReader();/执行查询,并读入读者数据dr.Read();if(dr.HasRows=false)/如未能查询到读者信息,则提示重新输入MessageBox.Show(无此读者,请检查后重新输入,错误,MessageBoxButtons.OK,MessageBoxIcon.Error);return;txt2.Text=dr.GetValue(0).ToString().Trim();txt3.Text=dr.GetValue(1).ToStrin
7、g().Trim();txt4.Text=dr.GetValue(2).ToString().Trim();readerID=dr.GetValue(3).ToString().Trim();dr.Close();string strCmd=select a.状态,a.图书编号,b.书名,a.借阅时间,a.应还时间,b.出版社,b.价格+ from 图书借阅 a,图书信息 b where (a.图书编号=b.编号)and(a.状态=未还and(读者编号=+readerID+/查询读者所借书籍信息SqlDataAdapter da=new SqlDataAdapter(strCmd,cn);tb
8、lBooks.Clear();/清空借书记录da.Fill(tblBooks);/读入读者借阅图书信息totalCount=tblBooks.Rows.Count;/显示已借书数量和本次借书数量thisCount=0;label1.Text=已借书+totalCount.ToString()+本label2.Text=本次借书0本groupBox2.Enabled=true;/允许借书txt5.Focus();/光标移动到输入图书编号文本框处,开始借书读者借书private void borrowBook()if(this.totalCount=Convert.ToInt32(txt4.Tex
9、t.Trim()/如果借书达到上限,则不允许再借已经达到最大借书数量,请先归还书籍后再借书借书数量达到上限,MessageBoxButtons.OK,MessageBoxIcon.Information);groupBox2.Enabled=false;string strConn = workstation id=localhost;Integrated Security=SSPI;database=libbookDataRow aRow=tblBooks.NewRow();string bookType;/保存新借图书的类型if(rbt3.Checked)select 编号,书名,出版社,
10、价格,类型 from 图书信息 where 编号=+txt5.Text.Trim()+select 编号,书名,出版社,价格,类型 from 图书信息 where 条形码=/执行查询,并读入图书数据if(dr.HasRows=false)/如未能查询到图书信息,则提示重新输入无此图书,请检查后重新输入string newbookID=dr.GetValue(0).ToString();foreach(DataRow newRow in tblBooks.Rows)/不允许重复借书if(newRow图书编号.ToString().Trim()=newbookID.Trim()MessageBox
11、.Show(该读者已经借有此书,不能再借信息,MessageBoxButtons.OK,MessageBoxIcon.Warning);return;aRow=dr.GetValue(0).ToString();书名=dr.GetValue(1).ToString();出版社=dr.GetValue(2).ToString();价格=Convert.ToDecimal(dr.GetValue(3);状态=新借借阅时间=System.DateTime.Now.ToString();bookType=dr.GetValue(4).ToString();cmd.CommandText=select
12、可借天数 from 图书类型 where 类型名称=+bookType+/计算归还时间int days=Convert.ToInt32(cmd.ExecuteScalar();DateTime returnTime=System.DateTime.Now.AddDays(days);aRow应还时间=returnTime.ToString();tblBooks.Rows.Add(aRow);/增加新借书记录totalCount+;thisCount+;本次借书+thisCount.ToString()+五、程序使用说明、测试分析及结果进入Visual Studio 2010,创建一个新的“Wi
13、ndows应用程序”类型的项目,名为“图书馆管理”。将默认创建的窗体命名为“图书馆管理系统”,把“图书馆管理系统”作为本系统中的主界面。在窗体中添加一个菜单(MenuStrip)控件,一个工具栏(ToolStrip)控件。本系统的用户非为普通用户和管理用户,管理用户具有系统提供的所有权限,普通用户可以查询图书、借阅图书。管理员有权限将图书添加到数据库中,图书入库界面的设计.在窗体的左边的分组框中添加标签和文本框,用来接收管理员输入的图书信息,以便保存到数据库中。在右边的分组框中添加DataGridView控件,可以显示数据库中的图书信息,新添加的图书信息也可以显示出来。根据图书馆中已有的图书信
14、息,用户可以通过图书证号实现借阅。六、课程设计总结在这次项目工作中,虽然很辛苦,但收获也不少。我们懂得众人拾柴火焰高,团队的合作不但节省时间,而且提高效率,从合作过程中,我们互相请教,也学了不少的东西,团队的成员在这过程中编写代码的能力也提高了不少;我们懂得严谨的精神,编写代码过程中都要很细心,有时小小的错误,就会是给后期的改正增加难度;我们也懂得做软件要有专注的精神,想做好软件,就要全心全意地投入进去。回想这个过程,我们一步步克服苦难,也一步步积累我们的成就感,到做完软件那一刻,我们感到无比地兴奋。我们也懂得了,做软件也是一件很幸福的事情。l 参考文献1王汝涌,管理信息系统,中国财政经济,2001.72张海藩,软件工程,清华大学出版社,2001.63萨师煊、王珊数据库系统概论(第二版)高等教育出版社,2001.44李红等编著,管理信息系统开发与应用,电子工业出版社,2003
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2