软件工程学习与程序设计.docx
《软件工程学习与程序设计.docx》由会员分享,可在线阅读,更多相关《软件工程学习与程序设计.docx(17页珍藏版)》请在冰点文库上搜索。
软件工程学习与程序设计
课程设计报告
(2010--2011年度第2学期)
名称:
软件设计与实践
题目:
人事管理系统的设计与实现
院系:
计算机系
班级:
网络0702班
学号:
200709030217
学生姓名:
孟岩
指导教师:
软件设计与实践教学组
设计周数:
2
成绩:
日期:
2011年5月10日
一、课程设计的目的与要求
1.目的:
通过综合性实验的设计,使学生综合训练自己的需求分析、系统设计、编程、测试等各种能力,积累软件开发的经验,提高学生进行软件开发所需具备的专业素质以及团队协作能力。
2.要求:
完成一个人事管理系统的分析、设计、编程、测试工作。
二、设计正文
1、系统分析(需求分析)
1.需求分析:
能够输入职工的综合情况的输入、修改以及删除;
能够实现对职工信息的浏览;
能够实现对职工进行查询;
能够实现职工考勤
2.系统性能要求:
系统安全、可靠;
功能齐全;
操作方便、界面友好;
3.系统的功能分析:
资料维护:
系统维护包括对各种表记录的修改、删除、添加等操作。
资料维护:
对数据表中的信息进行浏览。
系统查询:
可以按职工编号、姓名等相关信息进行详细或模糊查询。
报表统计:
包括统计职工编号、职工姓名、职工性别、所在部门、职工年龄、基本工资、考勤字段。
其它操作:
系统封面、计时器控制。
4.系统功能模块
人事管理系统有:
数据浏览、数据修改、考勤、报表显示和系统封面构成。
5.功能的实现:
“数据浏览”模块:
数据浏览:
可以对数据表中的数据实现,上一项、下一项、首相、尾项等操作。
“数据修改”模块:
(1)添加数据:
增加一个新的记录
(2)修改数据:
修改原有记录。
“考勤”模块:
对员工考勤
“报表显示”模块:
显示当前查找到的数据内容,以报表形式打印。
“系统封面构成”模块:
功能实现:
进入主界面与退出系统。
2.系统设计
1、界面设计:
管理员的界面
普通员工
添加个人信息
解雇员工
考勤查询
报表生成
2、功能设计
通过主窗体调用其他窗体,具体实现可以参照系统分析相关内容。
应用系统主控界面包括记录编辑和记录查询等功能模块。
记录编辑功能完成职工记录编辑的记录增加、记录删除、记录刷新和记录查询等功能。
记录查询功能可以对数据集中的记录进行查询
三、课程设计总结或结论
本次实验利用C#窗体编程,使用了TextBox、label、Button、dataGridView、reportViewer等控件实现界面,人机数据交流的功能。
使用SQLserver实现数据的存储功能。
通过SQL与virualstudio的连接完成了本系统的设计。
本次实验完成的较为成功。
四、参考文献
[1]王海龙,董智勇C#.电子工业出版社,2006.9
附录(设计流程图、程序、表格、数据等)
流程图:
程序:
增加员工界面源代码:
publicpartialclassadd:
Form
{
privateintdep;
privateintedu;
privateintsal;
privateintex=01;
publicadd()
{
InitializeComponent();
}
privatevoidadd_Load(objectsender,EventArgse)
{
SqlConnectionMyConnection=DB.creatCon();
MyConnection.Open();
SqlCommandcom=newSqlCommand("select*fromdepInfo",MyConnection);
SqlDataReaderdr=com.ExecuteReader();
while(dr.Read())
{
this.listBox1.Items.Add(dr[1].ToString());
}
dr.Close();
com=newSqlCommand("select*fromeduInfo",MyConnection);
dr=com.ExecuteReader();
while(dr.Read())
{
this.listBox2.Items.Add(dr[1].ToString());
}
dr.Close();
com=newSqlCommand("select*fromsalInfo",MyConnection);
dr=com.ExecuteReader();
while(dr.Read())
{
this.listBox3.Items.Add(dr[1].ToString());
}
dr.Close();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
intID=Convert.ToInt32(txtID.Text);
stringname=txtName.Text.ToString();
stringsex=txtSex.Text.ToString();
stringbirth=txtBirth.Text.ToString();
SqlConnectionMyConnection=DB.creatCon();
MyConnection.Open();
SqlCommandcmd=newSqlCommand("insertintoeInfovalues('"+ID+"','"+name+"','"+sex+"','"+birth+"')",MyConnection);
cmd.ExecuteNonQuery();
//cmd.Close();
txtName.Text="";
txtBirth.Text="";
txtID.Text="";
txtSex.Text="";
MyConnection.Close();
SqlConnectioncon=DB.creatCon();
con.Open();
SqlCommandcmd2=newSqlCommand("insertintobaseInfovalues('"+ID+"','"+dep+"','"+edu+"','"+sal+"','"+ex+"')",con);
cmd2.ExecuteNonQuery();
con.Close();
System.Windows.Forms.MessageBox.Show("添加成功!
");
}
privatevoidlistBox2_SelectedIndexChanged(objectsender,EventArgse)
{
if(listBox2.SelectedItem.ToString()!
=null)
{
SqlConnectioncon=DB.creatCon();
con.Open();
stringstr=listBox2.SelectedItem.ToString();
SqlCommandcmd=newSqlCommand("selecteduIDfromeduInfowhereedu='"+str+"'",con);
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
{
edu=(int)sdr["eduID"];
}
con.Close();
}
textBox2.Text=edu.ToString();
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
Application.Exit();
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
txtName.Text="";
txtBirth.Text="";
txtID.Text="";
txtSex.Text="";
}
privatevoidlistBox1_SelectedIndexChanged(objectsender,EventArgse)
{
if(listBox1.SelectedItem.ToString()!
=null)
{
SqlConnectioncon=DB.creatCon();
con.Open();
stringstr=listBox1.SelectedItem.ToString();
SqlCommandcmd=newSqlCommand("selecteDepIDfromdepInfowheredepName='"+str+"'",con);
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
{
dep=(int)sdr["eDepID"];
}
con.Close();
textBox1.Text=dep.ToString();
}
}
privatevoidlistBox3_SelectedIndexChanged(objectsender,EventArgse)
{
if(listBox3.SelectedItem.ToString()!
=null)
{
SqlConnectioncon=DB.creatCon();
con.Open();
stringstr=listBox3.SelectedItem.ToString();
SqlCommandcmd=newSqlCommand("selecteSalIDfromsalInfowhereSal='"+str+"'",con);
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
{
sal=(int)sdr["eSalID"];
}
con.Close();
}
textBox3.Text=sal.ToString();
}
修改信息源代码
publicpartialclassmodify:
Form
{
privateints;
privateintdep;
privateintsal;
publicmodify()
{
InitializeComponent();
}
privatevoidtextBox1_TextChanged(objectsender,EventArgse)
{
SqlConnectioncon=DB.creatCon();
con.Open();
s=Convert.ToInt32(txtID.Text);
SqlCommandcmd=newSqlCommand("selectdepNamefromdepInfo,baseInfowheredepInfo.eDepID=baseInfo.eDepIDandbaseInfo.eID='"+s+"'",con);
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
{
textBox2.Text=sdr["depName"].ToString();
}
sdr.Close();
con.Close();
con.Open();
cmd=newSqlCommand("selectsalfrombaseInfo,salInfowherebaseInfo.eSalID=salInfo.eSalIDandbaseInfo.eID='"+s+"'",con);
SqlDataReadersdr2=cmd.ExecuteReader();
while(sdr2.Read())
{
textBox3.Text=sdr2["sal"].ToString();
}
con.Close();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
SqlConnectioncon=DB.creatCon();
con.Open();
SqlCommandcmd=newSqlCommand("updatebaseInfosetbaseInfo.eDepID='"+dep+"'wherebaseInfo.eID='"+s+"'",con);
cmd.ExecuteNonQuery();
con.Close();
System.Windows.Forms.MessageBox.Show("修改成功!
");
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
SqlConnectioncon=DB.creatCon();
con.Open();
SqlCommandcmd=newSqlCommand("updatebaseInfosetbaseInfo.eSalID='"+sal+"'wherebaseInfo.eID='"+s+"'",con);
cmd.ExecuteNonQuery();
con.Close();
System.Windows.Forms.MessageBox.Show("修改成功!
");
}
privatevoidlistBox1_SelectedIndexChanged(objectsender,EventArgse)
{
if(listBox1.SelectedItem.ToString()!
=null)
{
SqlConnectioncon=DB.creatCon();
con.Open();
stringstr=listBox1.SelectedItem.ToString();
SqlCommandcmd=newSqlCommand("selecteDepIDfromdepInfowheredepName='"+str+"'",con);
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
{
dep=(int)sdr["eDepID"];
}
con.Close();
}
}
privatevoidmodify_Load(objectsender,EventArgse)
{
SqlConnectionMyConnection=DB.creatCon();
MyConnection.Open();
SqlCommandcom=newSqlCommand("select*fromdepInfo",MyConnection);
SqlDataReaderdr=com.ExecuteReader();
while(dr.Read())
{
//this.listBox1.Items.Add(dr[0].ToString());
this.listBox1.Items.Add(dr[1].ToString());
}
dr.Close();
com=newSqlCommand("select*fromsalInfo",MyConnection);
dr=com.ExecuteReader();
while(dr.Read())
{
this.listBox2.Items.Add(dr[1].ToString());
}
dr.Close();
}
privatevoidlistBox2_SelectedIndexChanged(objectsender,EventArgse)
{
if(listBox2.SelectedItem.ToString()!
=null)
{
SqlConnectioncon=DB.creatCon();
con.Open();
stringstr=listBox2.SelectedItem.ToString();
SqlCommandcmd=newSqlCommand("selecteSalIDfromsalInfowhereSal='"+str+"'",con);
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
{
sal=(int)sdr["eSalID"];
}
con.Close();
}
}
}
解雇源代码
privatevoidbutton1_Click(objectsender,EventArgse)
{
inteID=Convert.ToInt32(textBox1.Text);
SqlConnectioncon=DB.creatCon();
con.Open();
SqlCommandcmd=newSqlCommand("deletefrombaseInfowhereeID='"+eID+"'",con);
cmd.ExecuteNonQuery();
cmd=newSqlCommand("deletefromeInfowhereeID='"+eID+"'",con);
cmd.ExecuteNonQuery();
con.Close();
System.Windows.Forms.MessageBox.Show("解雇成功!
");
}