C#课程设计+员工管理系统.doc

上传人:zf 文档编号:26874479 上传时间:2023-06-23 格式:DOC 页数:18 大小:302.59KB
下载 相关 举报
C#课程设计+员工管理系统.doc_第1页
第1页 / 共18页
C#课程设计+员工管理系统.doc_第2页
第2页 / 共18页
C#课程设计+员工管理系统.doc_第3页
第3页 / 共18页
C#课程设计+员工管理系统.doc_第4页
第4页 / 共18页
C#课程设计+员工管理系统.doc_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

C#课程设计+员工管理系统.doc

《C#课程设计+员工管理系统.doc》由会员分享,可在线阅读,更多相关《C#课程设计+员工管理系统.doc(18页珍藏版)》请在冰豆网上搜索。

C#课程设计+员工管理系统.doc

河南理工大学《C#程序设计》实训报告

河南理工大学

计算机科学与技术学院

课程设计

2011—2012学年第二学期

课程名称C#Windows程序设计课设

设计题目人事管理系统

学生姓名

学号

专业班级软件工程.net

指导教师

2012年6月7日

目录

封面...........................1

目录...........................2

1.设计任务书.......................4

1.1题目与要求.....................4

1.2本系统涉及的知识点.................4

2.功能设计........................4

3.数据库设计.......................5

3.1数据库概念设计(E-R图)...............5

3.2数据库逻辑结构设计.................6

3.3数据库物理设计...................6

4.系统实现........................6

4.1界面设计及实现...................6

4.2部门信息管理设计及实现...............11

4.2.1添加部门信息...................11

4.2.2浏览部门信息...................13

4.2.3修改部门信息...................14

4.2.4删除部门信息...................16

5.总结..........................18

致谢...........................18

参考文献.........................18

1设计任务书

1.1题目与要求

本人计划(与XXX、XXX合作)编写一个员工管理系统,主要用来管理员工基本信息。

此系统使得管理人员对公司的工种进行分类,进而确定各个工种所对应的部门信息,在已有部门信息的基础上能够对所有的员工信息进行分类管理。

本系统的特点是可以对员工的个人信息、所属部门进行全方位的管理,可以实现工种的浏览、添加、删除和修改等操作,同时界面设计简单、操作方便。

其具体要求如下:

1、工种种类设置。

・添加工种:

添加公司的各种工种信息,包括工种编号、工种名称、工种描述。

・浏览工种:

能够按照列表方式快速浏览公司的各种工种。

・修改工种:

能够对工种的信息进行修改。

・删除工种:

能够对于全部工种的信息进行删除。

2、员工个人信息管理。

・添加员工:

添加一个员工的基本信息,包括姓名、性别、专业、籍贯、职称、所在工种、所在部门、学历、员工编号。

・浏览员工:

能够对一个职员的信息进行删除按姓名进行删除。

・修改员工:

对职员的信息进行修改。

・删除员工:

能够对于全部职员的信息进行删除。

3、员工所属部门信息管理。

・添加部门:

添加一个部门的基本信息,包括部门编号、部门名称、部门描述。

・浏览部门:

能够按照列表方式快速浏览公司所有的部门。

・修改部门:

能够对部门的信息进行修改。

・删除部门:

能够对于全部部门的信息进行删除。

根据分工,本人的主要工作是完成第三模块,即员工所属部门信息管理,包括添加部门、浏览部门、修改部门、删除部门四个部分。

同时,需要对主界面进行设计及实现。

1.2本系统涉及的知识点

WinForm常用控件、属性、方法,ADO.NET技术。

2功能设计

本系统选用C#作为开发语言,采用结合后台SQLServer数据库的C/S结构开发模式,优化了程序代码及结构,提高了程序的运行效率。

系统在.NET环境中进行开发,该环境提供了大量可选择的数据对象,可以很方便地建立与数据库之间的连接,并在此连接的基础上利用各种常用数据库组件对数据库进行操作。

在本系统中,采用SqlConnection对象与后台数据库创建连接,所有针对数据库的操作都需要利用这个对象作为数据库连接对象。

在系统功能分析的基础上,考虑MicrosoftVisualStudio2008程序编制的特点,得到如图2-1所示的系统功能模块图。

员工信息管理系统

部门信息管理

工种种类管理

员工信息管理

浏览部门

添加部门

修改部门

删除部门

浏览员工

添加员工

修改员工

删除员工

删除工种

修改工种

添加工种

浏览工种

图2-1功能模块图

3数据库设计

3.1数据库概念设计(E—R图)

根据本系统的需要,可以归纳出一下实体:

工种信息实体、部门信息实体、员工信息实体。

为了更好地理解各个实体及其含义,用E-R图,即实体关系图对实体进行描述。

根据分工,本人任务模块部门信息实体如图3-1所示:

部门描述

部门编号

部门名称

部门

图3-1部门信息实体图

3.2数据库逻辑结构设计

系统数据库名称为db_Person,数据库中包括:

1.工种信息表(tb_JobInfo);2.部门信息表(tb_DepartInfo);3.员工信息表(tb_PersonInfo)。

下面列出部门信息表的数据结构,如表3-2所示。

表3-2部门信息表(tb_DepartInfo)的数据结构

DID

int

部门编号(主键,自动编号)

Dname

varchar

部门名称

Dleader

varchar

部门领导

Remark

varchar

描述

图3-2部门信息表的数据结构

3.3数据库物理设计

数据库物理设计,即设置表与表之间的关系。

员工信息表中的“部门”来源于部门信息表中现有的部门,员工信息表中的“工种”来源于公众信息表中现有的工种。

如果数据库中的信息不能满足正常的依赖关系就会破坏数据的完整性和一致性。

根据本系统需要,由E-R图模型进行分析,从而确定出哪些表之间的字段需要进行关联分析如下:

1、员工信息表中的工种字段来源于工种信息表;

2、员工信息表中的部门字段来源于部门信息表;

根据本系统特点,需要依次设置员工信息表与工种信息表、员工信息表与部门信息表之间的关系。

4系统实现

4.1界面设计及实现

该界面提供的主菜单,用户可以分别实现对工种信息、员工信息、部门信息等功能的管理。

图4-1为员工管理系统的应用程序主界面。

图4-1员工管理系统主界面

此界面用于对各模块进行查询及编辑。

程序代码如下:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

usingPersonMIS.JobManage;//导入用于工种设置的命名空间

usingPersonMIS.DepartManage;//导入用于部门设置的命名空间

usingPersonMIS.IncomeManage;//导入用于员工收入的命名空间

usingPersonMIS.PersonManage;//导入用于员工个人信息的命名空间

namespacePersonMIS

{

publicpartialclassfrmMain:

Form

{

publicfrmMain()

{

InitializeComponent();

}

AddJobfrmAddJob;

privatevoidmeneAddJob_Click(objectsender,EventArgse)

{

if(frmAddJob==null||frmAddJob.IsDisposed)

{

frmAddJob=newAddJob();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmAddJob.MdiParent=this;

frmAddJob.Show();

}

}

AddDepartfrmAddDepart;

privatevoidmenuAddDepart_Click(objectsender,EventArgse)

{

if(frmAddDepart==null||frmAddDepart.IsDisposed)

{

frmAddDepart=newAddDepart();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmAddDepart.MdiParent=this;

frmAddDepart.Show();

}

}

AddDepartfrmAddPerson;

privatevoidmenuAddPerson_Click(objectsender,EventArgse)

{

if(frmAddPerson==null||frmAddPerson.IsDisposed)

{

frmAddPerson=newAddPerson();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmAddPerson.MdiParent=this;

frmAddPerson.Show();

}

}

AddDepartfrmAddIncome;

privatevoidmenuAddIncome_Click(objectsender,EventArgse)

{

if(frmAddIncome==null||frmAddIncome.IsDisposed)

{

frmAddIncome=newAddIncome();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmAddIncome.MdiParent=this;

frmAddIncome.Show();

}

}

BrowseJobfrmBrowseJob;

privatevoidmenuBrowseJob_Click(objectsender,EventArgse)

{

if(frmBrowseJob==null||frmBrowseJob.IsDisposed)

{

frmBrowseJob=newBrowseJob();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmBrowseJob.MdiParent=this;

frmBrowseJob.Show();

}

}

BrowseDepartfrmBrowseDepart;

privatevoidmenuBrowseDepart_Click(objectsender,EventArgse)

{

if(frmBrowseDepart==null||frmBrowseDepart.IsDisposed)

{

frmBrowseDepart=newBrowseDepart();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmBrowseDepart.MdiParent=this;

frmBrowseDepart.Show();

}

}

BrowsePersonfrmBrowsePerson;

privatevoidmenuBrowsePerson_Click(objectsender,EventArgse)

{

if(frmBrowsePerson==null||frmBrowsePerson.IsDisposed)

{

frmBrowsePerson=newBrowsePerson();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmBrowsePerson.MdiParent=this;

frmBrowsePerson.Show();

}

}

BrowseIncomefrmBrowseIncome;

privatevoidmenuBrowseIncome_Click(objectsender,EventArgse)

{

if(frmBrowseIncome==null||frmBrowseIncome.IsDisposed)

{

frmBrowseIncome=newBrowseIncome();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmBrowseIncome.MdiParent=this;

frmBrowseIncome.Show();

}

}

privatevoidmenuExitSystem_Click(objectsender,EventArgse)

{

Application.Exit();

}

AboutfrmAbout;

privatevoidmenuAbout_Click(objectsender,EventArgse)

{

if(frmAbout==null||frmAbout.IsDisposed)

{

frmAbout=newAbout();

for(intx=0;x

{

FormtempChild=(Form)this.MdiChildren[x];

tempChild.Close();

}

frmAbout.MdiParent=this;

frmAbout.Show();

}

}

privatevoidtimer1_Tick(objectsender,EventArgse)

{

this.ttsTime.Text="时间为:

"+Datatime.Now.ToString();

}

}

}

4.2部门信息管理设计及实现

4.2.1添加部门信息

添加部门信息界面用于部门基本信息的录入,包括部门名称、部门领导和备注。

该界面如图4-2所示。

图4-2添加部门信息界面

添加部门信息的代码如下:

添加部门信息窗口程序AddDepart.cs

publicstaticstringstrConn="DataSource=(local);InitialCatalog=db_Person;IntegratedSecurity=ture";

privatevoidbtnOk_Click(objectsender,EventArgse)

{

if(this.txtDepName.Text.Trim()==""||this.txtDepLeader.Text.Trim()=="")

MessageBox.Show("请输入完整信息!

","提示",0);

else

{

using(SqlConnectioncon=newSqlConnection(strConn))

{

if(con.State==ConnectionState.Closed)

{

con.Open();

};

try

{

SqlCommandcmd=newSqlCommand(select*fromtb_DepartInfowhereDName='"+txtDepName.Text.Trim()+"'",con);

if(cmd.ExecuteScalar()!

=null)

MessageBox.Show

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1