图书管理组织系统结题报告Word文档下载推荐.docx
《图书管理组织系统结题报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《图书管理组织系统结题报告Word文档下载推荐.docx(47页珍藏版)》请在冰点文库上搜索。
日常操作:
A、图书归还
B、图书借出
C、借阅情况
4、第二个任务:
资料管理
A、添加书籍
B、修改书籍
C、删除书籍
D、查询书籍
5、第三个任务:
用户管理
A、用户查询
B、用户修改
C、用户删除
D、用户增加
项目详细设计:
1.程序清单:
11个界面设计
frmBookAdd.cs
书籍添加
frmReturnBooks.cs
归还书籍
frmBorrowBooks.cs
借出书籍
frmChangePassword.cs
密码修改
frmBookManage.cs
书籍管理
frmReaderManage.cs
frmLogin.cs
登陆
frmMain.cs
主界面
frmAddReader.cs
添加用户
frmoperation.cs
用户管理(注销与挂失)
frmUpdateBooks.cs
图书修改
frmQueryReader.cs
查询用户
frmfindBooks.cs
查询图书
具体设计简介:
操作流程
1、数据库设计:
2、界面的设计:
13个界面
3、第一个任务:
E、图书归还
F、图书借出
3、第三个任务:
G、用户查询
H、用户修改
I、用户删除
J、用户增加
详细设计
登陆:
主界面:
实现,图书管理,用户管理,图书借阅,图书归还,修改用户密码等界面的跳转
借阅书籍:
先查询读者的信息,
再根据读者额的相关信息做图书的借阅:
读者信息:
图书借阅:
privatevoidbutton1_Click(objectsender,EventArgse)
{
StringBuilderbuilder=newStringBuilder();
builder.Append("
select*fromBookstorewherebookidlike'
"
+tbbooksid.Text.ToString().Trim()+"
'
);
dgvBooksINfor.AutoGenerateColumns=false;
SqlConnectionsc1=newSqlConnection("
datasource=(local);
initialcatalog=BMS;
integratedsecurity=true"
SqlDataAdaptersda1=newSqlDataAdapter(builder.ToString(),sc1);
dsbook=newDataSet();
sda1.Fill(dsbook);
bsbook=newBindingSource(dsbook,"
Table"
//renovate();
if(tbname.Text=="
)
MessageBox.Show("
请?
先è
选?
择?
读á
者?
,?
然?
后ó
再ù
增?
加ó
图?
书酣?
return;
}
if(tbbooksid.Text=="
"
系μ统?
提示?
//手?
动ˉ添加ó
行D
DataRowViewdrv=(DataRowView)bsbook.Current;
if(Convert.ToInt32(drv["
count"
])<
1)//判断是否能够借出
图书酣库存不足,暂时骸不能借è
出!
系统提示"
if(tbrentnum.Text.ToString()=="
0"
)//根据当獭前用户判断用户的可借本数簓
当獭前用户的可借本数簓达到最大洙值"
DataGridViewRowrow=newDataGridViewRow();
DataGridViewCheckBoxCellcb1=newDataGridViewCheckBoxCell();
cb1.Value=false;
row.Cells.Add(cb1);
DataGridViewTextBoxCelltb2=newDataGridViewTextBoxCell();
tb2.Value=drv["
bookid"
].ToString();
row.Cells.Add(tb2);
DataGridViewTextBoxCelltb3=newDataGridViewTextBoxCell();
tb3.Value=drv["
name"
row.Cells.Add(tb3);
DataGridViewTextBoxCelltb4=newDataGridViewTextBoxCell();
tb4.Value=drv["
ISBN"
row.Cells.Add(tb4);
DataGridViewTextBoxCelltb5=newDataGridViewTextBoxCell();
tb5.Value=drv["
className"
row.Cells.Add(tb5);
DataGridViewTextBoxCelltb6=newDataGridViewTextBoxCell();
tb6.Value=DateTime.Now.ToLongDateString();
row.Cells.Add(tb6);
DataGridViewTextBoxCelltb7=newDataGridViewTextBoxCell();
tb7.Value=DateTime.Now.AddDays(Convert.ToInt32(tbrentTime.Text.Trim()));
row.Cells.Add(tb7);
DataGridViewTextBoxCelltb_8=newDataGridViewTextBoxCell();
tb_8.Value=drv["
price"
row.Cells.Add(tb_8);
dgvBooksINfor.Rows.Add(row);
drv["
]=Convert.ToInt32(drv["
])-1;
//count--;
图书归还:
图书借阅情况查询:
privatevoidbtnfindid_Click(objectsender,EventArgse)
tbid.Clear();
tbname.Clear();
tbreadtype.Clear();
tbtype.Clear();
dgvBooksINfor.Rows.Clear();
select*fromReaderswhereidlike'
+tbreadid.Text.ToString().Trim()+"
oridlike'
%"
%'
SqlConnectionsc=newSqlConnection("
SqlDataAdaptersda=newSqlDataAdapter(builder.ToString(),sc);
dsRead=newDataSet();
sda.Fill(dsRead);
bsread=newBindingSource(dsRead,"
tbid.DataBindings.Add("
Text"
bsread,"
id"
tbname.DataBindings.Add("
tbreadtype.DataBindings.Add("
readTYpe"
tbtype.DataBindings.Add("
type"
//tbreadid.Clear();
//ReturnBooks();
StringBuilderbuilder1=newStringBuilder();
builder1.Append("
select*fromBorrowBookswherereadIdlike'
orderbyborrowTimeasc"
//orderbyborrowTimeasc
SqlConnectionsc2=newSqlConnection("
SqlDataAdaptersda1=newSqlDataAdapter(builder1.ToString(),sc2);
图书借阅归还:
privatevoidbtreturnbooks_Click(objectsender,EventArgse)
if(tbtype.Text=="
挂骸||tbtype.Text=="
冻结á
读者已经-"
+tbtype.Text+"
不能进行归还"
系统提示?
foreach(DataGridViewRowrowindgvBooksINfor.Rows)
//DataGridViewCheckBoxCellcb=(DataGridViewCheckBoxCell)row.Cells[0];
if(row.Cells[0]!
=null&
&
Convert.ToBoolean(row.Cells[0].Value)==true)
//数簓据Y库a中D的?
已?
连?
接ó
问ê
题琣的?
编括写′
SqlConnectionscinsert=newSqlConnection("
scinsert.Open();
SqlCommandscmdinsert=newSqlCommand("
updateBookstoresetcount=count+1wherebookid='
+row.Cells[1].Value.ToString()+"
scinsert);
scmdinsert.ExecuteNonQuery();
scinsert.Close();
归还成é
功!
书籍管理:
修改书籍、添加书籍、删除书籍、查询书籍、书籍类型的树状图
privatevoidbt_DB_addbook_Click(objectsender,EventArgse)//增?
书酣
frmAddBooksfrm=newfrmAddBooks(dsRead,dr,sdaRead,tableBookType);
frm.Show();
privatevoidbt_DB_deletebook_Click(objectsender,EventArgse)//删?
除y图?
if(dgvReadManage.SelectedRows.Count==0)
//return;
您ú
要癮删?
除y的?
行D再ù
进?
行D操ù
作痢!
?
"
for(inti=0;
i<
this.dgvReadManage.SelectedRows.Count;
i++)
this.dgvReadManage.Rows.Remove(this.dgvReadManage.SelectedRows[i]);
sdaRead.Update(dsRead);
dsRead.AcceptChanges();
保馈存?
成é
功|!
privatevoidbt_DB_updatebook_Click(objectsender,EventArgse)//修T改?
中D要癮修T改?
的?
行D后ó
在ú
行D修T改?
!
DataGridViewRowdgvrow=dgvReadManage.SelectedRows[0];
stringid1=dgvrow.Cells[1].Value.ToString().Trim();
DataRow[]dr=dsRead.Tables[0].Select("
bookid='
+id1+"
frmUpdateBooksfrm=newfrmUpdateBooks(dsRead,tableBookType,dr[0]);
bs=newBindingSource(dsRead,"
privatevoidbt_DB_findbook_Click(objectsender,EventArgse)//查é
询ˉ图?
frmfindBooksfr=newfrmfindBooks(dsRead);
fr.Show();
privatevoidbt_DB_exit_Click(objectsender,EventArgse)
frmMainfrm=newfrmMain(user);
this.Close();
privatevoidfrmBookManage_Load(objectsender,EventArgse)
//dgvReadManage的填充
SqlConnectionsc=newSqlConnection
("
sdaRead=newSqlDataAdapter("
select*fromBookstore"
sc);
SqlCommandBuilderscb=newSqlCommandBuilder(sdaRead);
sdaRead.Fill(dsRead);
dgvReadManage.AutoGenerateColumns=false;
dgvReadManage.DataSource=dsRead.Tables[0];
//获取书酣籍列表括
SqlDataAdaptersdrBookType=newSqlDataAdapter("
select*fromBooksType"
tableBookType=newDataTable();
sdrBookType.Fill(tableBookType);
dgvReadManage.DataSource=dsRead.Tables[0].DefaultView;
if(!
TV_Bookstype.Nodes.ContainsKey("
所ù
有瓺书酣籍?
))
TreeNoderoot=newTreeNode("
root.Name="
;
root.Tag="
-1"
TV_Bookstype.Nodes.Add(root);
foreach(DataRowrowintableBookType.Rows)
TreeNodetn=newTreeNode(row["
].ToString().Trim());
tn.Name=row["
].ToString().Trim();
tn.Tag=row["
root.Nodes.ContainsKey(tn.Name))
root.Nodes.Add(tn);
TV_Bookstype.ExpandAll();
TV_Bookstype.HideSelection=false;
TV_Bookstype.SelectedNode=TV_Bookstype.Nodes[0];
privatevoiddgvReadManage_DataBindingComplete(objectsender,DataGridViewBindingCompleteEventArgse)
if(this.dgvReadManage.Rows.Count!
=0)
this.dgvReadManage.Rows.Count;
)
this.dgvReadManage.Rows[i].DefaultCellStyle.BackColor=System.Drawing.Color.FromArgb(111,222,233);
i+=2;
} ?
书籍类型的树状图(鼠标双击)
privatevoidTV_Bookstype_NodeMouseDoubleClick(objectsender,TreeNodeMouseClickEventArgse)
TreeNodeclickedNode=e.Node;
selectnamefromBookstorewhereclassNumber='
+clickedNode.Tag.ToString()+"
DataSetds=newDataSet();
sdaRead.Fill(ds);
foreach(DataRowrowinds.Tables[0].Rows)
tn.Tag="
clickedNode.Nodes.ContainsKey(tn.Name))
clickedNode.Nodes.Add(tn);
privatevoidTV_Bookstype_AfterSelect(objectsender,TreeViewEventArgse)
if(e.Node.Tag.ToString()=="
dsRead.Tables[0].DefaultView.RowFilter="
"
else
classNum