员工培训管理系统DOC.docx

上传人:b****6 文档编号:9370782 上传时间:2023-02-04 格式:DOCX 页数:46 大小:1.15MB
下载 相关 举报
员工培训管理系统DOC.docx_第1页
第1页 / 共46页
员工培训管理系统DOC.docx_第2页
第2页 / 共46页
员工培训管理系统DOC.docx_第3页
第3页 / 共46页
员工培训管理系统DOC.docx_第4页
第4页 / 共46页
员工培训管理系统DOC.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

员工培训管理系统DOC.docx

《员工培训管理系统DOC.docx》由会员分享,可在线阅读,更多相关《员工培训管理系统DOC.docx(46页珍藏版)》请在冰豆网上搜索。

员工培训管理系统DOC.docx

员工培训管理系统DOC

XXXX学院

课程设计报告书

专业:

计算机科学与技术

课程设计名称:

《可视化编程技术课程设计》

题目:

员工培训管理系统

班级:

0812121班

学号:

0812121XX

设计者:

XX

同组人员:

XX、XX、XXX

指导老师:

XX

完成时间:

2013年1月15日

摘要

随着我国成功加入WTO及信息化的浪潮,企业经营管理机制正在发生着根本性的变化,企业要想在激烈的市场竞争环境下的求得生存,就必须有效地利用人才、时间、信息结合的优势,就必须有效地进行企业内部改革和加强企业管理。

借助现代信息技术和管理理论,建立企业管理信息系统势在必行。

对企业而言,员工培训是企业最宝贵的资源,也是企业的“生命线”。

企业如何更好的对员工的培训工作进行管理,就成了我们需要解决的一个问题,因此,开发一套完善的员工培训管理系统就发挥着重要的作用,本文介绍了在MicrosoftVisualStudio2005环境下采用C#作为前台开发工具,SQLServer2005作为后台数据库平台的基于C/S的三层模式的员工培训管理系统的详细过程。

关键词:

C#;SQLServer2005;员工培训管理系统

目录

第一章开发环境和开发工具1

1.1C#语言简介1

1.2开发背景1

1.3开发环境2

第二章员工培训管理系统的分析与设计3

2.1系统需求分析3

2.1.1用户需求分析3

2.1.2功能需求分析3

2.2系统总体设计4

2.2.1系统设计目标4

2.2.2开发设计思想4

2.2.3系统功能模块设计4

第三章数据库设计6

3.1引入背景6

3.2数据库需求分析6

3.3数据库概念结构设计7

3.4数据库逻辑结构设计9

第四章系统详细设计与实现11

4.1公共类设计与实现11

4.2数据访问层类设计与实现12

4.3业务逻辑层类设计与实现16

4.4界面设计及实现20

4.4.1登陆界面及代码20

4.4.2管理员主界面及代码22

4.4.3员工主界面及代码24

4.4.4教员主界面及代码26

第五章系统测试28

5.1管理员功能测试28

5.2员工功能测试29

5.3教员功能测试30

结论31

心得体会32

参考文献33

第一章开发环境和开发工具

1.1C#语言简介

C#是微软公司在2000年7月发布的一种全新且简单、安全、面向对象的程序设计语言,是专门为.NET的应用而开发的语言。

它吸收了C++、VisualBasic、Delphi、Java等语言的优点,体现了当今最新的程序设计技术的功能和精华。

C#继承了C语言的语法风格,同时又继承了C++的面向对象特性。

不同的是,C#的对象模型已经面向Internet进行了重新设计,使用的是.NET框架的类库;C#不再提供对指针类型的支持,使得程序不能随便访问内存地址空间,从而更加健壮;C#不再支持多重继承,避免了以往类层次结构中由于多重继承带来的可怕后果。

.NET框架为C#提供了一个强大的、易用的、逻辑结构一致的程序设计环境。

同时,公共语言运行时(CommonLanguageRuntime)为C#程序语言提供了一个托管的运行时环境,使程序比以往更加稳定、安全。

其特点有:

语言简洁、保留了C++的强大功能、快速应用开发功能、语言的自由性、强大的Web服务器控件、支持跨平台、与XML相融合。

1.2开发背景

随着当今世界计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业管理势在必行。

使用传统的手工管理方式,一方面效率低下,另一方面容易造成错误。

只有将计算机引入企业的管理,才能真正形成现代化企业的组织形式、管理和运用方式,才能真正体现企业规范化、科学化、现代化管理的手段。

各行各业的管理、控制都越来越离不开计算机的辅助。

“员工培训管理系统”的开发就是为了辅助大多数企业的员工培训管理,实现培训信息管理的系统化、规范化和自动化。

以前的手工管理效率低是最明显的缺陷,另外,数据的一致性不好维护,如某个员工信息的某条记录有所改动,那么该员工的其他记录就与此不一致,造成查询的费时费力。

要把全部数据都更改又相当不方便。

对培训信息盘点也很不方便,而且需要较多的人来进行管理操作,而且容易出错,造成数据的不一致。

因此,运用高效、准确的员工培训管理系统来替代手工管理是完善员工培训管理的有效手段。

鉴于此,本文研究了一种基于关系型数据库的员工培训管理方案。

利用SQLServer2005数据库管理系统灵活性和开发效率高的特点,采用面向对象的C#的方法,开发出员工培训管理系统。

该系统具有手工管理所无法比拟的优点,如:

检索迅速、查找方便、可靠性高、存储量大、保密性好、信息利用率高、成本低等。

该系统能够极大地提高处理的效率,为企业管理的信息化、正规化奠定了坚实的基础。

1.3开发环境

本系统开发所采用的开发环境是MicrosoftVisualStudio2005,采用C#作为前台开发工具,SQLServer2005作为后台数据库平台的基于C/S模式的三层模式的员工培训管理系统。

第二章员工培训管理系统的分析与设计

2.1系统需求分析

2.1.1用户需求分析

这个系统是帮助完成日常繁重业务的工具。

借助计算机系统,使他们凌乱的工作变得有条理,解脱需要记忆大量信息的困难。

减轻汇总、统计、报告和传递这些信息的负担。

尽量符合功能完整,操作简单,响应迅速,界面友善,易学易用成为这类软件必须满足的要求。

管理员登陆以后可以很方便的实现人员和课程的管理。

这个员工培训管理系统主要涉及管理员对员工的操作、对课程的操作和对教员的操作,以及审批员工对课程的申请,每个操作主要包括对数据的增加、删除、修改和查询。

员工登陆以后可以很方便的实现课程的申请和查看申请结果以及自己的课程成绩。

教员登陆后可以查看自己的授课情况和对学生的成绩进行录入。

每类角色都可以对自己的信息进行修改。

系统从用户的角度出发,使用C/S结构,对于页面的美观也需要做一番苦功。

在登陆及各个模块的功能做到最好的人性化和审美的结合。

2.1.2功能需求分析

(1)登陆功能

只是一个企业的员工培训管理系统,需要有账号和密码才能进入进行操作。

(2)管理员功能

管理员登陆后可以添加、查询、修改和删除员工信息、课程信息和教员信息,处理课程申请。

其中查询可以根据不同的查询条件进行查询。

(3)员工功能

员工登陆后可以进行选课,选课后可以随时查询自己选课的结果是否被审批,还可以查询自己的课程成绩,查询要根据课程号进行查询。

(4)教员功能

教员登陆后可以查询自己的授课情况,还可以对选修自己课程的同学进行成绩录入,录入的时候按课程号查询后按课程录入。

2.2系统总体设计

2.2.1系统设计目标

本系统为了实现企业轻松方便地实现员工培训管理,现提出以下目标:

(1)系统应具有实用性、可靠性和适用性;

(2)要有良好的编程风格和界面设计;

(3)要有全面的系统分析与功能分析;

(4)能够按照不同的条件进行简单快速查询;

(5)能够完成系统中信息的录入、修改、删除与查询等操作;

(6)方便用户的操作,尽量减少用户不必要的操作。

2.2.2开发设计思想

基于以上系统设计目标,本文在开发员工培训管理系统时遵循了以下开发设计思想:

(1)尽量企业现有软硬环境,及先进的管理系统开发方案,从而达到充分利用企业现有资源,提高系统开发水平和应用效果的目的。

(2)系统应符合企业员工培训管理的规定,满足企业日常员工培训工作的需要,并达到操作过程中的直观、方便、实用、安全等要求。

(3)系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。

(4)系统应具备数据库维护功能,及时根据用户需求进行数据的增加、删除、修改、备份等操作。

2.2.3系统功能模块设计

本系统分为四个模块:

系统登陆模块、管理员功能块、员工功能块和教员功能块。

得到如图2-1所示的系统功能模块图。

图2-1系统功能模块图

第三章数据库设计

3.1引入背景

员工培训管理系统是一个数据库应用系统,员工的所有信息都保存在数据库中。

数据库结构设计是数据库应用系统开发过程中一个非常重要的环节,设计的好坏将直接对所开发的人事管理信息系统的效率以及实现的效果产生影响。

好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等等。

数据库结构设计主要就是要设计好数据库中各个表的结构,包括信息保存在哪些表格中、各个表的结构如何以及各个表之间的关系。

由于数据库设计的重要性,人们提出了许多数据库结构设计的技术。

3.2数据库需求分析

数据库需求分析是数据库结构设计的第一个阶段,也是非常重要的一个阶段。

在这个阶段主要工作是收集基本数据以及数据处理的流程,为以后进一步设计一打下基础。

需求分析主要解决两个问题:

(1)内容要求。

调查应用系统用户所需要操作的数据,决定在数据库中存储什么数据。

(2)处理要求。

调查应用系统用户要求对数据库进行什么样的处理,理清数据库中各种数据之间的关系。

在数据库需求分析后,得到一个数据字典文档,包括3方面内容。

(1)数据项。

包括名称、含义、类型、取值范围、长度以及和其他数据项之间的逻辑关系。

(2)数据结构。

若干个数据项的有意义的集合,包括名称、含义以及组成数据结构的数据项。

(3)数据流。

指数据中数据的处理过程,包括输入、处理和输出。

本系统数据项和数据结构设计如下:

(1)员工基本情况。

包括的数据项有员工号、员工姓名、性别、所属部门、出生日期、联系地址、联系电话、入职时间、密码、备注。

(2)企业部门信息。

包括的数据项有部门号、部门名称、部门负责人。

(3)教员基本情况。

包括教员编号、教员姓名、性别、所属部门、出生日期、联系地址、联系电话、入职时间、备注。

(4)课程信息。

包括的数据项有课程号、课程名称、学时。

(5)成绩。

包括的数据项有课程号、员工号、成绩。

(6)授课信息。

包括的数据项有课程号、教员号、备注。

(7)申请课程信息。

包括的数据项有申请编号、课程号、员工号、申请时间、标记。

3.3数据库概念结构设计

数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。

用E-R图是描述数据实体关系的一种直观描述工具,所以本系统采用了E-R图的方法进行数据库概念结构设计。

图3-1为员工实体E-R图

图3-1员工实体E-R图

图3-2为教员实体E-R图

图3-2教员实体E-R图

图3-3为部门E-R图

图3-3部门E-R图

图3-4为课程实体E-R图

图3-4课程E-R图

一个部门可以拥有多个员工,一个员工只能属于一个部门,一个员工可以选择多门课程,一门课程也可以被多个员工选择,一个教员可以讲授多门课程,一门课程也可以被多个教员讲授,图3-5为各实体间的关系E-R图

图3-5实体关系E-R图

3.4数据库逻辑结构设计

概念结构是独立于实际数据模型的信息结构,必须将其转化为逻辑结构后才能进行数据库应用的设计。

也就是要将概念上的结构转化为数据库系统所支持的实际数据模型。

员工培训管理系统数据库中涉及到了7个表。

员工基本情况表的主键为员工编号,设置为int类型的,而且是被标识的,种子为1000,增量为1,如表3-1所示。

表3-1员工基本情况表

列名

数据类型

说明

Eid

int

员工编号

Ename

varchar(20)

员工姓名

Egender

char

(2)

性别

Edept

int

所属部门

Ebirthday

datetime

出生日期

Estarttime

datetime

入职时间

Etel

varchar(12)

联系电话

Epass

varchar(12)

密码

Eremark

varchar(50)

备注

教员基本情况表的主键为教员编号,设置为int类型的,而且是被标识的,种子为1000,增量为1,如表3-2所示。

表3-2教员基本情况表

列名

数据类型

说明

Tid

int

员工编号

Tname

varchar(20)

员工姓名

Tgender

char

(2)

性别

Tbirthday

datetime

出生日期

Tstarttime

datetime

入职时间

Ttel

varchar(12)

联系电话

Tpass

varchar(12)

密码

Tremark

varchar(50)

备注

课程申请表的主键为申请编号,设置为int类型的,而且是被标识的,种子为1000,增量为1,课程编号和员工编号都是外码,申请时间是插入记录时的系统时间,如表3-3所示。

表3-3课程申请表

列名

数据类型

说明

Aid

int

申请编号

Cid

int

课程编号

Eid

int

员工编号

Applytime

datetime

申请时间

Mark

varchar(20)

标记

课程信息表的主键为课程编号,如表3-4所示。

表3-4课程信息表

列名

数据类型

说明

Cid

int

课程编号

Cname

varchar(20)

课程名称

Cdata

int

学时

部门表的主键为部门编号,如表3-5所示。

表3-5部门表

列名

数据类型

说明

Did

int

部门编号

Dname

varchar(20)

部门名称

Dmanager

varchar(20)

负责人

成绩表的主键为员工编号和课程编号,如表3-6所示。

表3-6成绩表

列名

数据类型

说明

Eid

int

员工编号

Cid

int

课程编号

Score

float

成绩

授课表的主键为课程编号和教员编号,如表3-7所示。

表3-7授课表

列名

数据类型

说明

Eid

int

员工编号

Cid

int

课程编号

Score

float

成绩

在此基础上输入数据完成表的创建。

第四章系统详细设计与实现

4.1公共类设计与实现

User类,用来传送关于员工信息的类:

publicclassuser

{

privateint_id;//编号

privatestring_name;//姓名

privatestring_pass;//密码

publicstringgender;//性别

publicintdept;//系部

publicDateTimebirthday;//生日

publicstringaddress;//地址

publicDateTimestime;//入职时间

publicstringtel;//联系电话

publicstringremark;//备注

publicintid

{

get{return_id;}

set{_id=value;}

}

publicstringname

{

get{return_name;}

set{_name=value;}

}

publicstringpass

{

get{return_pass;}

set{_pass=value;}

}

publicuser()

{

}

publicuser(Stringname,stringpass)

{

this._name=name;

this._pass=pass;

}

}

Course类,用来传送关于课程的信息数据:

publicclasscourse

{

privateint_id;//编号

privatestring_name;//名称

publicintdata;//学时

publicintid

{

get{return_id;}

set{_id=value;}

}

publicstringname

{

get{return_name;}

set{_name=value;}

}

publiccourse()

{

}

}

4.2数据访问层类设计与实现

操作数据库类DB:

publicclassDB

{

privatestaticstring_connStr=@"DataSource=.;InitialCatalog=STMS;IntegratedSecurity=True";

privatestaticSqlConnectionsqlcon=null;

privatestaticvoidSqlConnection()

{

if(sqlcon==null)

{

sqlcon=newSqlConnection(_connStr);

sqlcon.Open();

}

elseif(sqlcon.State==ConnectionState.Closed||sqlcon.State==ConnectionState.Broken)

{

sqlcon.Close();

sqlcon.Open();

}

}

//执行Insert/update/delete,不带参数

publicstaticintExecuteNoQuery(stringstrsql)

{

inti=-1;

try

{

SqlConnection();

SqlCommandsqlcmd=newSqlCommand(strsql,sqlcon);

i=sqlcmd.ExecuteNonQuery();

sqlcon.Close();

returni;

}

catch

{

return-1;

}

}

//执行SQL语句,返回特定列的值,不带参数

publicstaticintExecute(stringstrsql)

{

inti=-1;

try

{

SqlConnection();

SqlCommandsqlcmd=newSqlCommand(strsql,sqlcon);

i=int.Parse(sqlcmd.ExecuteScalar().ToString());

sqlcon.Close();

returni;

}

catch

{

return-1;

}

}

publicstaticSqlDataReaderExecutereader(stringstrsql)

{

try

{

SqlConnection();

SqlCommandsqlcmd=newSqlCommand(strsql,sqlcon);

SqlDataReadersdr=sqlcmd.ExecuteReader();

sqlcon.Close();

returnsdr;

}

catch

{

returnnull;

}

}

//执行select,不带参数

publicstaticDataTableGetTable(stringstrsql)

{

try

{

SqlConnection();

SqlDataAdapterda=newSqlDataAdapter(strsql,sqlcon);

DataSetds=newDataSet();

da.Fill(ds,"temp");

sqlcon.Close();

returnds.Tables["temp"];

}

catch

{

returnnull;

}

}

}

操作员工的userserver类:

publicclassuserserver

{

//增加员工

publicstaticintAddUser(useru)

{

try

{

stringstr="insertintoEmployer(Ename,Egender,Edept,Ebirthday,Eaddress,Estarttime,Etel,Epass,Eremark)values('"+u.name+"','"+u.gender+"','"+u.dept+"','"+u.birthday+"','"+u.address+"','"+u.stime+"','"+u.tel+"','"+u.pass+"','"+u.remark+"')";

inti=DB.ExecuteNoQuery(str);

returni;;

}

catch

{

return0;

}

}

//更新记录

publicstaticintUpdateUser(useru)

{

try

{

stringstr="UPDATEEmployerSETEname='"+u.name+"',Egender='"+u.gender+"',Edept="+u.dept+",Ebirthday='"+u.birthday+"',Eaddress='"+u.address+"',Estarttime='"+u.stime+"',Etel='"+u.tel+"',Epass='"+u.pass+"',Eremark='"+u.remark+"'whereEid='"+u.id+"'";

inti=DB.ExecuteNoQuery(str);

returni;

}

catch

{

return0;

}

}

//按编号查询记录

publicstaticDataTableSelectUser(useru)

{

try

{

stringstr="selectEidas编号,Enameas姓名,Egenderas性别,Edeptas部门,Ebirthdayas出生年月,Eaddressas地址,Estarttimeas入职时间,Etelas电话,Epassas密码,Eremarkas备注fromEmployerwhereEid='"+u.id+"'";

DataTables=DB.Ge

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

当前位置:首页 > 高等教育 > 医学

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

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