我们一起环游世界吧,在爱你的季节里。
分类: C#/.net
2014-04-15 16:27:23
院(部、中心) 计算机科学与工程学院
专业: 网络工程 班级: 网络工程1班
一、设计题目:
公司员工管理系统
二、设计意义:
通过此次课程设计,让我们进一步了解c#应用程序开发的过程,同时也让我们对前面所学的知识付出实践,达到熟练掌握、综合性应用的目的。
三、设计内容:
1、项目分析:
1) 员工信息管理
2) 员工考勤管理
2、项目设计
首先,我们必须建立一个登录系统和八个子系统。
登录系统:用户在登陆后可以进行权限操作管理。
员工信息管理系统:对员工信息进行查询、修改、添加、删除。
员工考勤管理系统:对员工考勤信息进行查询、修改、添加、删除。
使用SQL SERVER2005建立YGGL数据库,其中包括:
用户表
员工信息表
员工考勤表
四、项目的实现
1、使用SQL2005创建YGGL数据库。
2、分别在SQL2005的YGGL数据库下创建admin表、employee_info表、attendance表,其代表用户表、员工信息表、员工考勤表。
1) 用户信息表:
CREATE TABLE [dbo].[admin]
(
[name] [varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[pwd] [varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL
) ON [PRIMARY]
GO
2) 员工信息表
CREATE TABLE [dbo].[employee_info]
(
[userid] [int] NOT NULL,
[name] [char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[sex] [char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[workyear] [varchar](2) COLLATE Chinese_PRC_CI_AS NULL,
[phone] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[addr] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_employee info] PRIMARY KEY CLUSTERED
(
[userid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
2) 员工考勤表
CREATE TABLE [dbo].[attendance](
[userid] [int] NOT NULL,
[leave] [int] NULL,
[travel] [int] NULL,
[absent] [int] NULL,
CONSTRAINT [PK_attendance] PRIMARY KEY CLUSTERED
(
[userid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
3、使用C#进行窗口设计(源代码)
1)登录系统:
private void btnloginOK_Click_1(object sender, EventArgs e)
{
SqlConnection dbConnection = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
SqlDataReader dataReader;
string sqlString = "SELECT name,pwd FROM admin;";
string loginPassWord = "";
dbConnection.Open();
SqlCommand dbCommand = new SqlCommand(sqlString, dbConnection);
dataReader = dbCommand.ExecuteReader();
try
{
if (dataReader.HasRows)
{
dataReader.Read();
LoginName = dataReader["name"].ToString();
loginPassWord = dataReader["pwd"].ToString();
}
}
catch (Exception e1)
{
MessageBox.Show(e1.Message, "登陆出错");
}
dataReader.Close();
if (LoginName == textBox1.Text && loginPassWord == textBox2.Text)
{
this.Hide();
Main frm1 = new Main();
frm1.ShowDialog();
}
else
{
MessageBox.Show("请输入正确的用户名或者密码!", "登陆出错");
LoginName = null;
}
}
2)员工信息查询系统:
①查询:
private void btnDemand_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
if (rdbid.Checked == true)
{
sda = new SqlDataAdapter("select * from employee_info where userid='"+textChecked.Text.Trim()+"'", conn);
ds = new DataSet();
sda.Fill(ds,"employee_info");
}
if (rdbname.Checked == true)
{
sda = new SqlDataAdapter("select * from employee_info where name='" + textChecked.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "employee_info");
}
else
{
}
dataGridView1.DataSource = ds.Tables[0];
}
3)员工考勤管理系统:
①查询:
private void btnDemand1_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("select * from attendance where userid='" + textChecked1.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
dataGridView2.DataSource = ds.Tables[0];
}
②修改:
private void btnDemand2_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("update attendance set leave=" + textleave.Text.Trim() + " ,travel=" + texttravel.Text.Trim() + ", absent=" + textabsent.Text.Trim() + " where userid='" + textChecked1.Text.Trim() + "' ", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
}
4)新窗体:
①添加窗体:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsApplication1
{
public partial class insert : Form
{
public insert()
{
InitializeComponent();
}
private void insert_Load(object sender, EventArgs e)
{
}
SqlDataAdapter sda;
SqlConnection conn;
DataSet ds;
private void btnDemand5_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("insert into employee_info values( " + textuserid1.Text.Trim() + ",'" + textname1.Text.Trim() + "' ,'" + textsex1.Text.Trim() + "', " + textworkyear1.Text.Trim() + "," + textphone1.Text.Trim() + ",'" + textaddr1.Text.Trim() + "')", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
}
private void btnresult2_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("select * from employee_info" , conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
dataGridView1.DataSource = ds.Tables[0];
}
}
}
②修改窗体:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsApplication1
{
public partial class Update : Form
{
public Update()
{
InitializeComponent();
}
private void Update_Load(object sender, EventArgs e)
{
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
SqlDataAdapter sda;
SqlConnection conn;
DataSet ds;
private void btnDemand3_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("select * from employee_info where userid='" + textChecked2.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
dataGridView1.DataSource = ds.Tables[0];
}
private void btnDemand4_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("update employee_info set name='" + textname.Text.Trim() + "' ,sex='" + textsex.Text.Trim() + "', workyear=" + textworkyear.Text.Trim() + ",phone=" + textphone.Text.Trim() + ",addr='" + textaddr.Text.Trim() + "' where userid='" + textChecked2.Text.Trim() + "' ", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
}
private void btnresult1_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("select * from employee_info where userid='" + textChecked2.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
dataGridView1.DataSource = ds.Tables[0];
}
}
}
③删除窗体:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsApplication1
{
public partial class delete : Form
{
public delete()
{
InitializeComponent();
}
private void delete_Load(object sender, EventArgs e)
{
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
SqlDataAdapter sda;
SqlConnection conn;
DataSet ds;
private void btnDemand6_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("select * from employee_info where userid='" + textChecked2.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
dataGridView1.DataSource = ds.Tables[0];
}
private void btnDemand7_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("delete from employee_info where userid='" + textChecked2.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
}
private void btnDemand8_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("select * from employee_info ", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
dataGridView1.DataSource = ds.Tables[0];
}
}
}
5)员工信息管理系统:
①修改:
private void btnupdate_Click(object sender, EventArgs e)
{
Update frm2 = new Update();
frm2.ShowDialog();
}
private void btnDemand3_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("select * from employee_info where userid='" + t extChecked2.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
dataGridView1.DataSource = ds.Tables[0];
}
private void btnDemand4_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("update employee_info set name='" + textname.Text.Trim() + "' ,sex='" + textsex.Text.Trim() + "', workyear=" + textworkyear.Text.Trim() + ",phone=" + textphone.Text.Trim() + ",addr='" + textaddr.Text.Trim() + "' where userid='" + textChecked2.Text.Trim() + "' ", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
}
②添加:
private void btninsert_Click(object sender, EventArgs e)
{
insert frm2 = new insert();
frm2.ShowDialog();
}
private void btnDemand5_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("insert into employee_info values( " + textuserid1.Text.Trim() + ",'" + textname1.Text.Trim() + "' ,'" + textsex1.Text.Trim() + "', " + textworkyear1.Text.Trim() + "," + textphone1.Text.Trim() + ",'" + textaddr1.Text.Trim() + "')", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
}
③删除:
private void button5_Click(object sender, EventArgs e)
{
delete frm2 = new delete();
frm2.ShowDialog();
}
private void btnDemand7_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=.;database=YGGL;uid=sa;pwd=");
sda = new SqlDataAdapter("delete from employee_info where userid='" + textChecked2.Text.Trim() + "'", conn);
ds = new DataSet();
sda.Fill(ds, "attendance");
}
五、小组成员分工
**:数据库的建立与连接、员工信息管理模块。
**:登陆界面模块。
***:考勤管理的修改模块。
***:员工信息查询模块。
***:界面美化、控件制作等模块。
六、总结与心得
经过本次的课程设计,让我们学到了很多关于C#的知识。虽然之前老师让我们做过一些练习与调试,但是面对一个整体的系统,我们小组遇到了种种困难。首先就是数据库的连接,是我明白了代码的编写决不能出现一丝错误。接着就是各个模块的代码与各个控件的使用,终于在同学的帮助下,我对C#有了更加清晰的了解。并不断的对员工管理系统进行修改、完善。期间使我在理论上对C#有了全新的认识,实践能力上也得到了大幅度的提高,更重要的是让我发现了自己的种种不足,让我学到了课堂上学不到的东西。