1、某公司员工管理系统的设计与实现 摘 要 本文设计的员工管理系统是为了更好,更方便的管理公司员工的信息。此系统主要包括员工基本信息,员工过失记录,员工奖金记录,员工社保记录,上级评语和基本设置等几个大模块。每个大模块又分成了几个小的模块,如员工基本信息模块又分成了员工列表,扩展信息,离职管理等小的模块。每个模块都完成了其相关信息的添加、修改、删除、查询和查看的功能 ,如员工列表模块就实现了员工信息的添加,修改,删除,查看和查询。在开发此系统时用了代码生存器,生成了与数据库有关的一些代码以及一些常用的存储过程如 记录的添加,删除和修改存储过程。通过代码生成器生成的代码将数据访问层的很好的封装了起来
2、,大大的提高了开发的效率。系统功能的实现大大提高了公司管理员工信息的效率。 关键词 : 员工管理系统;员工信息;信息管理 The Design and Implementation of Some Companys Managing System of Staff Abstract This staff administration system, which is investigated and designed in order to administer company staffs more effectively and more conveniently, contains so
3、me sections such as staff basic information, records of staff lapses, bonus, and social securities, as well as superior comments and fundamental settings, etc. Every section can be further divided, e.g. staff basic information is divided into staff list, extensive information, dismissing administrat
4、ion and so on. Furthermore, every section has such functions as adding, resetting, checking, and referring to the relevant data, e.g. the staff list part has such functions as adding, resetting, deleting, checking, and referring to the relevant data, which will be introduced below in detail. Code pr
5、oducer, which has been used in the process of developing this system, has produced several codes relevant to the data base as well as several frequently used memory processes, such as adding records, deleting and revising memory processes. Those codes made the data visiting layer well sealed so as t
6、o promote developing efficiency greatly. The realization of system functions has enormously enhanced the efficiency of business staff information administration. Key words: staff administration system; staff information; data administration 第 1 页 共 24 页 1 引言 1.1 课题背景 公司员工信息很不完整,而且会经常的去添加和修改员工的信息。同时公
7、司的 员工 信息也 都是通过文档进行的管理,在管理上很不方便 。例如:不方便员工信息的查找,修改等,所以需要开发此员工管理系统。开发此系统所用的数据库是 Microsoft Sql Server 2000。数据库中的表主要分为了静态表 数据不发生变化的基础表(如:国家表)和动态表 数据经常变动的表(如:员工表)。开发系统用的软件是 VS.NET 2005,此软件功能强大,它封装了很多的服务器控件同时它也兼容 HTML 控件,如果将 HTML 控件中加上 runat=“server“属性那么它就变成了“服务器控件”(它并不是真得成了服务器 控件,只是和服务器控件大致上一样)。此系统的开发主要用到
8、了 GridView 控件以及一些其它的控件 1.2 系统 开发环境 此系统通过 VS.NET 2005+Sql Server 2000 在 Windows 2003 下开发。 1.3 系 统预期结果 实现公司内部员工的管理,包括添加、删除、修改、查询,将每一个员工的详细资料记录下来,并为每个员工设定一个资料保密等级,只能让一些特定的管理者可以 管理 员工资料, 以保证信息的安全性,除此之外,还要对员工的薪资变动、职位变动以及奖惩 情况进行 记录 并 管理 2 系统 数据库 设计 本系统的数据库主要有员工 基本资料表,员工学习经历表,奖金记录表,过失记录表,员工担保人表,国籍表,民族表等 19
9、 张表组成。下面将详细介绍这些表。 国籍表存储世界所有国家 的 名称。 表 1 国籍表 表名:国籍表( Countrys) 字段名 中文名 类型 长度 备注 CountryID 国家编号 int Auto CountryName 国家名 varchar 40 民族表存储我国所有民族的名称。 表 2 民族表 表名:民族表( Races) 字段名 中文名 类型 长度 备注 ReceID 民族编号 int Auto ReceName 民族名 varchar 40 第 2 页 共 24 页 币种表存储世界主要的币种如:人民币、美元,欧元。 表 3 币种表 表名:币种表( PayTypes) 字段名 中
10、文名 类型 长度 备注 PayTypeID 币种编号 Int Auto PayTypeName 币种名 varchar 40 血型表存储人的血型名称如: O型、 AB 型。 表 4 血型 表 表名:血型表( BloodTypes) 字段名 中文名 类型 长度 备注 BloodTypeID 币种编号 int Auto BloodTypeName 币种名 varchar 40 星座表存储 12 个星座的名称 表 5 星座表 表名:星座表( Stars) 字段名 中文名 类型 长度 备注 StarID 星座编号 int Auto StarName 星座名 varchar 40 员工学习经历表存储员工
11、的学习经历。 表 6 员工学习经历表 表名:员工学习经历表( StudyExps) 字段名 中文名 类型 长度 备注 StudyExpID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 StudyExpSchool 学校名 varchar 200 StudyExpClass 系别 varchar 50 StudyExpSpec 专业 varchar 50 StudyExpBeginTime 开始日期 Dateime StudyExpEndTime 结束 日期 Datetime 工作经历表存储员工的工作经历。 表 7 工作经历表 表名:工作经历表( WorkE
12、xps) 字段名 中文名 类型 长度 备注 WorkExpID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 WorkExpCompany 公司名 varchar 200 WorkExpPart 部门 varchar 50 WorkExpJob 职位 varchar 50 WorkExpBeginTime 开始日期 Datetime WorkExpEndTime 结束日期 Datetime WorkExpPay 工作薪资 float WorkExpTask 工作内容 varchar 200 WorkExpWhyOut 离职原因 varchar 200 员工基
13、本资料存储员工的基本信息。 第 3 页 共 24 页 表 8 员工基本资料 表名:员工基本资料( Staffs) 字段名 中文名 类型 长度 备注 StaffID 员工编号 int Auto StaffNumber 员工实际编号 varchar 20 StaffUserName 用户名 Varchar 20 StaffPassword 密码 Varchar 32 MD5 加密 StaffName 员工姓名 varchar 20 StaffBirthday 出生日期 Datetime BloodTypeID 血型编号 int 联系 BloodTypes StarID 星座编号 int 联系 St
14、ars StaffSex 性别 bitint 1男 0女 CountryID 国家编号 int 关系 Countrys 表 RaceID 民族编号 int 关系 Races 表 StaffRPRAddress 户籍地址 varchar 200 StaffIsMarry 婚否 bitint 1为已婚 StaffPicPath 相片地址 varchar 200 相片存放的地址 StaffDeputy 代理人 varchar 40 StaffIDCard 身份证号 varchar 30 StaffIDCardFilePath 身份证复印件地址 varchar 200 身份证复印件地址 StaffPa
15、yTypeID 工资币种 int 联系 PayTypes 表 StaffMail 私用邮箱 varchar 200 StaffWorkMail 公司邮箱 varchar 200 StaffTel 联系电话 varchar 30 StaffMobile 手机号 varchar 30 StaffOtherTel 备用电话 varchar 30 StaffPoint 特长 varchar 100 StaffLike 兴趣爱好 varchar 100 StaffDemerit 缺点 varchar 100 StaffInfoLv 资料保密等级 int 这个程序上安排,存数字 StaffTryoutBe
16、ginTime 试用期开始时间 Datetme StaffTryoutEndTime 试用结束时间 Datetime StaffTryoutPay 试用工资 float 单位是按工资币种来的 StaffAddtime 添加日期 Datetime StaffInWork 是否在职 bitint 1为在职 PartID 部门编号 Int 联系 Parts 表 JobID 职位编号 int 联系 Jobs StaffDesc 员工备注 Text 上级评语记录表存储上级对员工的评语记录。 表 9 上级评语记录表 表名:上级评语记录表( Comments) 字段名 中文名 类型 长度 备注 Commen
17、tID 评语编号 int Auto StaffID 员工编号 int 联系 Staffs 表 CommenterID 评语者编号 int 联系 Staffs 表 CommentDesc 评语内容 Text CommentTime 发表时间 Datetime OperaterID 操作员员工编号 int 联系 Staffs 表 第 4 页 共 24 页 语言能力存储员工对外语掌握的能力。 表 10 语言能力 表名:语言能力( LanguageLvs) 字段名 中文名 类型 长度 备注 LangLvID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 LangID
18、 语言编号 int 联系 Languages 表 LangLv 能力等级 int 数字的 1-6 LangLvDesc 备注 Text 薪资变动记录 表 记录员工的薪资变动记录。 表 11 薪资变动记录 表名:薪资变动记录( ChangePayLogs) 字段名 中文名 类型 长度 备注 CPayID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 CPayLv 薪资等级 int 联系 PayLevels 表 CPayMoney 基本工资 float CPayAllDutyMoney 全勤奖金 float CPayTime 变更日期 Datetime CPay
19、Desc 变更说明 Text OperaterID 操作员员工编号 int 联系 Staffs 表 薪资等级表存储薪资的等级。 表 12 薪资等级表 表名:薪资等级表( PayLevels) 字段名 中文名 类型 长度 备注 PayLvID 薪资等级编号 int Auto PayLvMoney 金额段 varchar 20 如: 1000-1500/month 奖金 记录表记录员工的奖金记录。 表 13 奖金记录表 表名:奖金记录表( BonusLogs) 字段名 中文名 类型 长度 备注 BounsLogID 奖金记录编号 int Auto StaffID 员工编号 int 联系 Staff
20、s 表 BonusLogMoney 奖金 float 单位是员工的币种 BonusLogTime 日期 Datetime BounsLogDesc 奖金原因 Text MakerID 提案者编号 int 联系 Staffs 表 OperaterID 操作员员工编号 int 联系 Staffs 表 过失级别存储员工的过失等级。 第 5 页 共 24 页 表 14 过失级别 表名:过失级别( LapseLvs) 字段名 中文名 类型 长度 备注 LapseLvID 过失级别编号 int Auto LapseLvName 过失级别名 varchar 20 LapseLvDesc 过失介绍 Varch
21、ar 200 过失记录表记录员工的过失记录。 表 15 过失记录表 表名:过失记录表( LapseLogs) 字段名 中文名 类型 长度 备注 LapseLogID 记录编号 int Auto StaffID 员工编号 int 联系 Staffs 表 LapseLogTime 过失日期 Datetime LapseLogDis 过失描述 Text MasterID 主管编号 int 联系 Staffs 表 LapseLvID 过失级别 int 联系 LapseLvs 表 LapseLogDo 过失处理 varchar 200 LapseLogDesc 过失备注 Text OperaterID
22、操作员员工编号 int 联系 Staffs 表 社保记录表记录员工的社保记录。 表 16 社保记录表 表名:社保记录表( SoseLogs) 字段名 中文名 类型 长度 备注 SoseLogID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 SoseID 社保编号 varchar 30 SoseLvID 社保等级编号 int 联系 SoseLvs 表 SoseLvBeginTime 开始日期 Datetime SoseLvEndTime 结束日期 Datetime SoseLvDesc 备注 Text OperaterID 操作员员工编号 int 联系 St
23、affs 表 社保等级表存储社保的等级。 表 17 社保等级表 表名:社保等级表( SoseLvs) 字段名 中文名 类型 长度 备注 SoseLvID 等级编号 int Auto SoseLvMoney 金额 float SoseLvDesc 描述 Text OperaterID 操作员员工编号 int 联系 Staffs 表 员工离职记录表记录员工的离职记录。 表 18 员工离职记录表 表名:员工离职记录表( OutworkLogs) 字段名 中文名 类型 长度 备注 OutworkLogID 记录编号 int Auto StaffID 员工编号 int 联系 Staffs 表 第 6 页
24、 共 24 页 OutworkLogDis 原因说明 Text OutworkLogTime 离职日期 Datetime OutworkLogDesc 备注 Text OperaterID 操作员员工编号 int 联系 Staffs 表 家庭情况表记录员工的家庭的主要联系人情况。 表 19 家庭情况表 表名:家庭情况表( Familys) 字段名 中文名 类型 长度 备注 FamilyID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 FamilyTitle 称谓 varchar 20 FamilyName 姓名 varchar 30 FamilyCount
25、ryID 国籍编号 int 联系 Countrys 表 FamilyAddress 地址 varchar 200 FamilyTel 电话 varchar 20 FamilyDesc 备注 Text 朋友情况表记录员工的主要朋友的联系方式。 表 20 朋友情况表 表名:朋友情况表( Friends) 字段名 中文名 类型 长度 备注 FriendID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 FriendDis 朋友关系简述 varchar 200 FriendName 朋友姓名 varchar 30 FriendAddress 朋友地址 varchar
26、 200 FriendTel 朋友电话 varchar 20 FriendPRI 紧急联系优先级 int 越大越先 FriendDesc 备注 text 员工担保人表记录员工的担保人信息。 表 21 员工担保人表 表名:员工担保人表( Suretys) 字段名 中文 名 类型 长度 备注 SuretyID 编号 int Auto StaffID 员工编号 int 联系 Staffs 表 SuretyName 担保人姓名 varchar 20 SuretyDis 关系说明 varchar 200 SuretySex 性别 bitint 1 为男 SuretyHomeAddress 户口地址 va
27、rchar 200 SuretyAddress 联系地址 varchar 200 SuretyWorkAddress 工作地址 varchar 200 SuretyTel 联系电话 varchar 20 SuretyOtherTel 备用电话 varchar 20 SuretyIsOk 担保是否成立 Bitint 1 为成立 SuretyAuthority 威信人 Varchar 20 SuretyApproveID 核准人编号 Int 联系 Staffs 表 SuretyApproveTime 核准日期 Datetime SuretyBeginTime 担保开始时间 Datetime Sur
28、etyEndTime 担保结束时间 Datetime SuretyEnderID 担保终止人 Int 联系 Staffs 表 第 7 页 共 24 页 3 系统 设计与实现 系统流程图如下所示: 用 户 判 断 权 限 生 成 菜 单 栏Y出 错 , 提 示没 有 权 限员 工 管 理 员 工 评 语 管 理员 工 社 保 管 理员 工 奖 金 管 理员 工 扩 展 信 息员 工 信 息 管 理修 改 自 己 密 码员 工 过 失 管 理判 断 权 限添 加 查 看删 除修 改NYN图 3-1 系统流程图 3.1 系统权限 不同类别的用户登陆系统会有不同的权限。根据用户的权限限定了用户对系统的操作。不同权限的用户登陆系统后主要体现在菜单栏(页面的左边绿色背景部分)的菜单不同,如下图所示: 第 8 页 共 24 页 图 3-2 不同权限的 菜单 如过用户越权操作,系统将有如下提示: 图 3-3 无权限时提示 3.2 系统登陆页面 登陆页面名称为 Signin . aspx。此页面以简洁为主,用户输入登陆名和密码后点击登陆按钮登陆。如果用户名和对应的密码在数据库的员工表中找不到记录 时将 提示 用户 “ 用户名或密码错误 ! ”,如果找到了记录就将用户名和加密后的密码存入 Coolie,并跳转到系统首页。