员工的考勤记录、考评记录、工资管理以及用户管理等。
本系统的流程分析如图3-2所示。
图3-2系统工作流程示意图
进入系统后,不同类型的用户所能进行的操作也不同,这些操作可以笼统地分为用户管理模块和人事管理模块。
第四章 系统总体设计与实现
4.1数据库分析及设计
数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。以下是本系统的数据库设计。
4.1.1 创建数据库
在创建数据表结构之前,首先要创建一个数据库。本系统使用的数据库为HrSys。代码如下:
USE master
GO
CREATE DATABASE HrSys
GO
4.1.2 设计表结构
此数据库包含了以下七个表:部门表Departments、员工基本信息表Employees、员工考勤表Checkin、员工工作考评表Evaluation、员工工资管理表和用户信息表Users。
下面分别介绍这些表的结构。
1. 部门表Departments
部门表Departments用来保存企业部门的信息。本系统采用树状结构来管理部门数据,也就是在部门之间建立从属关系。表Departments的结构如表4-1所示。
表Departments的结构 编号 字段名称 数据结构 说明 1 Dep_id int 部门编号 2 Dep_name varchar(40) 部门名称 3 Describe varchar(400) 部门职能描述 4 UpperId int 上级部门编号 表4-1部门结构表
2. 员工基本信息Employees
员工基本信息表Employees用来保存企业员工的基本信息。表Employees的结构如表4-2所示。
表Employees的结构 编号 字段名称 数据结构 说明 1 Emp_Id int 员工编号 2 Emp_name varchar(50) 3 Sex char 2 性别 4 Nationality varchar(40) 民族 5 Brith varchar(20) 生日 6 Political_party varchar(40) 政治面貌 7 Culture_level varchar(40) 文化程度 8 Marital_condition varchar(20) 婚姻情况 9 Family_place varchar(60) 籍贯 10 Id_Card varchar(20) 身份证号 11 BadgeID varchar(40) 工作证号 12 Office_phone varchar(30) 办公电话 13 Mobile varchar(30) 手机号码 14 Files_Keep_Org varchar(100) 档案存放地 15 Hukou varchar(100) 户口所在地 16 HireDate varchar(20) 到岗日期 17 Dep_Id int 所在部门编号 18 Position varchar(40) 工作岗位 19 Title varchar(20) 职务 20 State tinyint 员工状态 21 UpperId int 上级员工编号 22 Contract_Duration varchar(20) 合同有效期 23 Memo varchar(200) 备注 24 Fiillin_person varchar(30) 填表用户 25 Fillin_Time varchar(20) 填表日期和时间 表4-2员工基本信息表
3.员工考勤表Checkin
员工考勤表Checkin用来保存员工考勤的基本信息。表Checkin的结构如表4-3所示。
表Checkin的结构 编号 字段名称 数据结构 说明 1 CheckDate char(10) 考勤月份 2 Emp_Id int 员工编号 3 qqDays decimal(4,1) 全勤天数 4 ccDays decimal(4,1) 出差天数 5 bjDays decimal(4,1) 病假天数 6 sjDays decimal(4,1) 事假天数 7 kgDays decimal(4,1) 旷工天数 8 fdxjDays decimal(4,1) 法定休假天数 9 nxjDays decimal(4,1) 年休假天数 10 dxjDays decimal(4,1) 倒休假天数 11 cdMinutes tinyint 迟到时间(分钟) 12 ztminutes tinyint 早退时间(分钟) 13 ot1Days decimal(4,1) 一类加班天数(法定) 14 ot2Days decimal(4,1) 二类加班天数(周末) 15 ot3Days decimal(4,1) 三类加班天数(日常) 16 Memo varchar(200) 备注信息 表4-3员工考勤表
4. 员工工作考评表Evaluation
员工工作考评表Evaluation 用来保存员工工作考评信息。表Evaluation的结构如表4-4所示。
表Evaluation的结构 编号 字段名称 数据结构 说明 1 EvaMonth char(10) 考评月份 2 Emp_Id int 员工编号 3 ztEva varchar(200) 总体评价 4 jIReason varchar(200) 奖励事由 5 jlAmount smallint 奖励金额 6 cfReason varchar(200) 处罚事由 7 fAmount smallint 处罚金额 8 Memo varchar(200) 备注信息 表4-4员工工作考评表
5.员工家庭主要成员记录表Family
员工家庭主要成员记录表Family用来保存员工家庭主要成员的基本信息。表Familyr结构如表4-5所示。
表Family的结构 编号 字段名称 数据结构 说明 1 Id tinyint 编号 2 Emp_Id int 员工编号 3 Name varchar(50) 4 Sex char2 性别 5 Age tinyint 年龄 6 Relationship varchar(20) 与本人关系 7 WorkingOrg varchar(40) 工作单位 表4-5员工家庭主要成员记录表
6.员工教育及工作经历记录表Experience
员工教育工作及工作经历记录表Experience用来保存员工经历的基本信息,表Experiencer结构如表4-6所示。
表Experience的结构 编号 字段名称 数据结构 说明 1 Id tinyint 编号 2 Emp_Id int 员工编号 3 Start_Date char(10) 开始日期 4 End_Date char(10) 终止日期 5 School_Org varchar(50) /单位名称 6 Title varchar(20) 职务 表4-6,员工教育工作及工作经历记录表
7. 用户信息表Users
用户信息表Users用来保存系统用户信息。表Users 的结构如表4-7所示。
表Users的结构 编号 字段名称 数据结构 说明 1 UserName varchar(40) 用户名 2 Pwd varchar(40) 密码 3 User_type tinyint 用户类型 表4-7用户信息表
4.1.3 创建表的脚本文件
1.创建表Departments(部门管理表),它的代码如下:
USE HrSys
GO
CREATE TABLE Departments
(Dep_id int PRIMARY KEY IDENTITY,
Dep_name varchar(40) NOT NULL,
Describe varchar(400),
UpperId int NOT NULL
)
GO
2.创建表Emloyees(员工基本信息表),它的代码如下:
USE HrSys
GO
CREATE TABLE Employees
(Emp_Id int PRIMARY KEY IDENTITY,
Emp_NAME varchar(50) NOT NULL,
Photo image,
Sex char(2),
Nationality varchar(40),
Birth varchar(20),
Political_Party varchar(40),
Culture_Level varchar(40),
Marital_Condition varchar(20),
Family_Place varchar(60),
Id_Card varchar(20),
BadgeID varchar(40),
Office_phone varchar(30),
Mobile varchar(30),
Files_Keep_Org varchar(100),
Hukou varchar(100),
HireDate varchar(20),
Dep_Id int,
Position varchar(40),
Title varchar(20),
State tinyint,
UpperId int,
Contract_Duration varchar(20),
Memo varchar(200),
Fillin_Person varchar(30),
Fillin_Time varchar(20)
)
GO
3.创建表Checkin(员工考勤表),它的代码如下:
USE HrSys
GO
CREATE TABLE Checkin
(CheckDate char(10) NOT NULL,
Emp_Id int NOT NULL,
qqDays decimal(4,1),
ccDays decimal(4,1),
bjDays decimal(4,1),
sjDays decimal(4,1),
kgDays decimal(4,1),
fdxjDays decimal(4,1),
nxjDays decimal(4,1),
dxjDays decimal(4,1),
cdMinutes tinyint,
ztMinutes tinyint,
ot1Days decimal(4,1),
ot2Days decimal(4,1),
ot3Days decimal(4,1),
Memo varchar(200)
)
GO
4.创建表Evaluation(员工工作考评表),它的代码如下:
USE HrSys
GO
CREATE TABLE Evaluation
(EvaMonth char(10) NOT NULL,
Emp_Id int NOT NULL,
ztEva varchar(200),
jlReason varchar(200),
jlAmount smallint,
cfReason varchar(200),
cfAmount smallint,
Memo varchar(200)
)
GO
5. 创建表(员工教育及工作经历记录表),它的代码如下:
USE HrSys
GO
CREATE TABLE Experience
(Id tinyi
上一篇:
VC++与MATLAB在图像增强_论文(2003doc)
下一篇:
采用VC的伺服电机控制毕业论文(2003doc)