基于C#Oracle的考勤管理系统的设计与开发_
《基于C#+Oracle的考勤管理系统的设计与开发》
年 级: ***********
学 号: ***********
姓 名: ***********
院 系: ***********
专 业: ***********
基于C#+Oracle的考勤管理系统的设计与开发
一、系统设计基本情况
系统设计目标
利用计算机管理考勤信息,在很大程度上减轻了统计的工作量,实现企业员工考勤管理的规范化,考勤数据统计的自动化。
设计思想
除了能够手工录入员工的考勤记录外,还能与考勤机相配合,实现考勤信息录入自动化;考勤类型灵活设定,以便用户随时调整
应具有报表功能,查询统计时能够直接生成相关员工的考勤报表,报表能导出
系统应采用模块程序设计,便于组合和修改
综合考虑,确定本系统采用C/S工作模式,以oracle作为后台数据库,C#为前台程序开发语言。
系统功能模块划分
员工信息管理模块
考勤类型的设定模块
员工考勤信息手工录入模块
员工考勤情况统计报表生成模块
二、数据库设计
数据库需求分析
与用户结合,调查用户需求操作的资料,弄清用户怎样处理各种数据资料,理清数据库中各数据之间的关系。通过分析,设计数据集和数据项如下:
员工信息数据集,数据项为员工号,员工姓名,员工性别,员工所属部门。
考勤类型数据集:数据项为类型号,类型名称
员工考勤情况数据集:数据项为考勤日期,员工号,考勤类型号,备注。
数据库结构设计
员工信息实体E-R图
考勤类型实体E-R图
员工考勤实体E-R图
实体与实体间的关系E-R图
各表格数据库设计代码(Oracle平台)
考勤类型表格
CREATE TABLE KQLXB
(
BH VARCHAR(4) NOT NULL PRIMARY KEY,
LX VARCHAR(20) NULL
);
员工信息表格
CREATE TABLE YGB
(
BH VARCHAR(8) NOT NULL PRIMARY KEY,
XM VARCHAR(12) NOT NULL,
XB VARCHAR(2) NOT NULL,
BM VARCHAR(20)
);
考勤情况管理表格
CREATE TABLE KQGLB
(
KQRQ DATE NOT NULL,
YGBH VARCHAR(8) NOT NULL,
LXBH VARCHAR(4) NOT NULL,
BZ VARCHAR(60) ,
CONSTRAINT KQGLBPRI PRIMARY KEY(KQRQ,YGBH)
);
外键设计
ALTER TABLE KQGLB ADD
(
CONSTRAINT KQGL_BH_FK FOREIGN KEY(LXBH) REFERENCES KQLXB(BH),
CONSTRAINT YG_BH_FK FOREIGN KEY(YGBH) REFERENCES YGB(BH)
);
触发器
CREATE or REPLACE TRIGGER delete_ygb
AFTER DELETE ON ygb FOR EACH ROW
BEGIN
DELETE FROM kqglb WHERE kqglb.ygbh=:old.bh;
END delete_ygb;
CREATE or REPLACE TRIGGER update_ygb
BEFORE UPDATE ON ygb FOR EACH ROW
BEGIN
UPDATE kqglb SET kqglb.ygbh=:new.bh where kqglb.ygbh=:old.bh;
END update_ygb;
CREATE or REPLACE TRIGGER delete_kqlxb
AFTER DELETE ON kqlxb FOR EACH ROW
BEGIN
DELETE FROM kqglb WHERE kqglb.lxbh=:old.bh;
END delete_kqlxb;
CREATE or REPLACE TRIGGER update_kqlxb
BEFORE UPDATE ON kqlxb FOR EACH ROW
BEGIN
UPDATE kqglb SET kqglb.lxbh=:new.bh where kqglb.lxbh=:old.bh;
END update_kqlxb;
三、系统设计页面
主界面:
员工信息管理界面:
考勤类型管理界面:
考勤信息录入界面:
考勤统计报表界面:
四、系统编程的实现
主界面模块
功能:打开各个操