考勤管理系统Word文档格式.docx
《考勤管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《考勤管理系统Word文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
4.3考勤管理模块10
4.4信息设置模块13
4.5系统管理模块16
结 论17
参考文献17
1引言
1.1设计选题
《考勤管理信息系统》
1.2设计的目的
通过本设计,掌握使用ASP.NET技术进行网络程序设计的基本知识,如:
服务器控件、内部对象、数据库建立、数据库的读取、数据显示等;
熟悉网络程序设计每个步骤中的任务和实施方法,并加深对C#语言的理解。
通过设计一个网上信息管理系统,进一步熟悉网络环境下的程序设计方法,综合训练动手能力,提高分析问题、解决实际问题的能力。
1.3本选题的设计背景
设计考勤信息系统主要用于统计员工的考勤情况,可以对不同员工规定上班和下班的时间,在根据员工的市价签到签退时间记录员工的上班时间和下班时间,有利于统计员工的实际上班下班时间,有利于根据员工的考勤情况检查员工的工作状态,也有利于公司根据员工的考勤情况对员工结算工资。
同时在该系统中,管理员也可以对员工信息进行修改,添加和删除员工,部门和职位信息,规定每个职位的考勤时间。
这样有利于企业对员工和部门的管理。
2系统分析与设计
2.1系统功能需求分析
本系统主要是对员工考勤情况进行管理。
系统根据该系统主要是管理员对员工的考勤情况管理,还有可以对员工信息和部门信息进行修改。
系统包括如下功能:
管理员要求实现如下功能:
登录:
管理员用户登录到本系统。
修改个人信息:
用户登录后,可以修改个人的登录密码。
查询考勤信息:
按分类查询,以及按照关键字查询,实现按员工编号,考勤年份,考情月份等多种方式的查询。
管理部门信息:
管理员可以在系统内添加和删除部门。
职位类别设置:
管理员可以在系统中添加和删除职位,并对每个职位上班的下班的时间进行更改或设置。
员工信息添加:
管理员可以在这里添加或删除员工信息,也可以在这里添加或删除员工。
员工信息维护:
管理员可以在这里查看员工信息,包括员工的编号,姓名,性别,生日,部门,职位和学历等。
管理员可以按照关键字查询,实现员工编号,员工姓名,所在部门和职位类别等多种方式查询。
查询系统背景:
该系统可查看系统和作者的介绍。
2.2系统功能模块设计
通过对系统进行需求分析得到,系统主要包括爸大功能模块,分别是登录、添加员工信息、员工信息维护、考勤记录查询、部门信息设置、部门类别设置、修改个人信息、退出登录等。
功能模块图如下图所示:
2.3系统开发运行环境
本系统开发平台:
ASP.NET2010+SQLServer2008
本系统运行环境:
Windows7和IIS5.0
3数据库设计
系统选用SQLServer数据库,根据系统功能需求分析,共建立五个数据表,分别是管理员信息表、部门信息表、学历信息表、职工信息表、职位信息表、签到信息表。
管理员信息表:
用于存储管理员的基本信息,主要包括管理员的登录名和登录密码字段,其结构如下所示:
序号
字段名
数据类型
主键
允许空
说明
1
adminUsername
varchar(50)
是
否
管理员登录名称
2
adminPassword
管理员登录密码
部门信息表表:
用于存储部门的基本信息,主要包括部门编号和部门名字段。
其结构如下所示:
departmentId
int
自动赋予部门的编号
departmentName
nvarchar(20)
部门的名称
学历信息表用于存储学历分类信息,主要包括学历编号和学历名称字段。
educationId
自动赋予产品的编号
educationName
学历分类的名称
职工信息表用于存储职工的基本信息,主要包括职工编号、职工姓名、职工性别、职工生日、职工部门、职工职位、职工学历、职工固定电话、职工手机号、职工卡号、职工邮箱和职工地址字段。
employeeNo
varchar(20)
自动赋产品的编号
employeeName
职工姓名
3
employeeSex
nchar
(1)
职工性别
4
employeeBirthday
datetime
职工生日
5
employeeDepartmentId
职工部门
6
employeeWorkTypeId
职工职位
7
employeeEducationId
职工学历
8
employeeHomeTel
职工固定电话
9
employeeMobile
职工手机号
10
employeeCard
职工卡号
11
employeeEmail
varchar(30)
职工邮箱
12
employeeAddress
nvarchar(80)
职工地址
职位信息表用于存储企业职位信息,主要包括职位编号、职位名称、上班点数、上班分数、下班点数、下班分数字段。
workTypeId
workTypeName
职位名称
workStartHour
上班点数
workStartMinute
上班分数
workEndHour
下班点数
workEndMiunte
下班分数
签到信息表:
用于存储职工签到,主要包括职工编号、签到年、月、日、上班时间、下班时间、签到时间、签退时间字段,其结构如下所示:
attendanceId
attendanceEmployeeNo
attendanceYear
签到年
attendanceMonth
签到月
attendanceDay
签到日
attendanceStartTime
上班时间
attendanceEndTime
下班时间
attendanceStartFlag
smallint
签到时间
attendanceEndFlag
签退时间
4模块详细设计与实现
4.1登录模块
登录模块,主要实现管理员登录系统
管理员根据数显设置好的用户名和密码登录考勤管理信息系统。
从而实现管理员对后台的其他操作。
其运行界面图如下所示:
界面设计中包含了两个TextBox控件和两个Button控件,主要用于填写用户名和用户密码实现登录和退出系统。
程序代码根据用户名登录的用户名和密码检查数据库中的管理员信息,确认用户名和密码是否正确才能登录系统。
登录模块关键程序代码如下:
stringusername=this.txtName.Text;
stringpassword=this.txtPwd.Text;
Response.Write("
<
script>
window.open('
CheckLogin.aspx?
username="
+username+"
&
password="
+password+"
'
'
'
width=800,height=600,toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=no,resizable=no,copyhistory=yes'
);
window.close();
/script>
"
4.2员工信息管理模块
(1)添加员工信息
添加员工信息模块主要实现企业员工信息的添加。
管理员可以跟新来的职工,在公司数据库中添加该职工的信息,也可以删除离职的职工,还可以对其他职工的信息进行修改。
其运行界面图如下所示:
界面中包含了一个Gridview和一个detailview空间,主要用于查看数据库中的用户和添加用户到数据库中。
程序设计主要通过连接数据库实现数据库与界面的连接,是数据库的内容显示在网页中。
添加员工信息模块关键程序代码如下:
if(!
IsPostBack)
{
if(Session["
admin"
]==null)
top.location.href='
../login.aspx'
;
return;
(2)员工信息维护模块:
员工信息维护模块主要实现员工信息的修改和员工信息的查询。
管理员根须员工信息的变更对员工信息进行修改或删除,管理员也可以在此查询员工的信息了解员工。
第一个界面中包含了一个Gridview控件、两个textview控件、两个DropDownlist控件和两个Button控件,第二个界面包含若干个TextBox控件和若干个TextBox控件、DropDownlist控件和两个Button控件来实现界面布局的。
程序设计中界面主要通过连接数据库是数据库职工信息显示在网页中并启用了修改和选择。
员工信息维护模块关键程序代码如下:
①
}
this.DepartmentName.Items.Add(newListItem("
请?
选?
择?
"
));
DataSetdepartmentDs=(newDepartmentLogic()).GetAllDepartmentInfo();
foreach(DataRowdrindepartmentDs.Tables[0].Rows)
this.DepartmentName.Items.Add(newListItem(dr["
departmentName"
].ToString(),dr["
].ToString()));
this.WorkType.Items.Add(newListItem("
DataSetworkTypeNameDs=(newWorkTypeLogic()).GetAllWorkTypeInfo();
foreach(DataRowdrinworkTypeNameDs.Tables[0].Rows)
this.WorkType.Items.Add(newListItem(dr["
workTypeName"
].ToString(),dr["
②
if(employeeLogic.UpdateEmployeeInfo(employeeModel))
alert('
员工信息更新成功!
else
+employeeLogic.ErrMessage+"
protectedvoidBtn_Cancle_Click(objectsender,EventArgse)
Response.Redirect("
EmployeeManage.aspx"
4.3考勤管理模块模块
考勤记录查询模块主要实现管理员查看员工的考勤情况。
该界面记录了员工上班和下班的签到签退时间,使管理员能方便地查看员工的企业职工上班情况。
界面设计中包括一个Textview、两个DropDownlist、一个Button和一个Gridview.,并进行界面布局实现的。
代码设计中界面主要通过连接数据库显示数据库中员工的签到签退情况。
考勤记录查询模块关键程序代码如下:
if(e.Row.RowType==DataControlRowType.DataRow)
e.Row.Attributes.Add("
onmouseover"
"
c=this.style.backgroundColor;
this.style.backgroundColor='
#00ffee'
onmouseout"
this.style.backgroundColor=c;
DateTimeattendanceStartTime=Convert.ToDateTime(e.Row.Cells[3].Text);
e.Row.Cells[3].Text=attendanceStartTime.Hour+"
时"
+attendanceStartTime.Minute+"
分"
stringattendanceId=this.GridView1.DataKeys[e.Row.RowIndex].Value.ToString();
AttendanceLogicattendanceLogic=newAttendanceLogic();
if(attendanceLogic.IsExistAttendanceEndTime(Int32.Parse(attendanceId)))
DateTimeattendanceEndTime=Convert.ToDateTime(e.Row.Cells[4].Text);
e.Row.Cells[4].Text=attendanceEndTime.Hour+"
+attendanceEndTime.Minute+"
e.Row.Cells[4].Text="
没有下班签退"
stringattendanceEmployeeNo=this.AttendanceEmployeeNo.Text;
intattendanceYear=Int32.Parse(this.AttendanceYear.SelectedValue);
intattendanceMonth=Int32.Parse(this.AttendanceMonth.SelectedValue);
DataSetds=attendanceLogic.QueryAtendanceInfo(attendanceEmployeeNo,attendanceYear,attendanceMonth);
this.GridView1.DataSourceID=null;
this.GridView1.DataSource=ds;
this.GridView1.PageIndex=0;
this.GridView1.DataBind();
4.4信息设置模块
(1)部门信息设置模块
部门信息设置主要实现管理员添加或删除部门信息。
管理员根据公司的部门变更情况在此界面删除或添加部门。
界面设计包括一个Gridview控件,一个TextBox控件和一个Button控件进行界面布局实现的。
程序设计主要是通过连接部门信息数据表使部门信息表显示在界面中,并启用删除,从而删除部门。
还有通过按钮添加部门。
部门信息设置模块关键程序代码如下:
stringdepartmentName=this.DepartmentName.Text;
if(departmentName=="
)
部门名称输入不能为空'
DepartmentLogicdepartmentLogic=newDepartmentLogic();
if(departmentLogic.InsertDepartmentName(departmentName))
部门信息添加成功'
location.href='
DepartmentManage.aspx'
+departmentLogic.ErrMessage+"
(2)职位类别设置模块
职位类别设置模块主要实现管理员对职位信息的更改和添加职位。
管理员可更具公司对所有职位信息的变更来天正职位信息,包括上下班时间,管理员还可以田家公司新添的职位并设置上下班时间。
界面设计主要包括一个Gridview控件,一个TextBox控件、一个Button控件和四个DropDownlist控件进行基本布局实现的。
程序设计主要是通过连接职位信息数据表是职位信息表出现在页面上,并启用了编辑。
还通过在按钮上添加代码实现职位信息的添加。
职位类别设置模块关键程序代码如下:
if(workTypeLogic.InsertWorkTypeInfo(workTypeModel))
alert(职位类别信息添加成功'
WorkTypeManage.aspx'
+workTypeLogic.ErrMessage+"
if(workTypeLogic.UpdateWorkTypeInfo(workTypeModel))
职位累呗信息更新成功!
4.5系统管理模块
管理员可以通过修改密码模块修改自己的登录密码。
界面设计主要包括三个Textview控件和两个Button按钮进行基本布局实现的。
程序设计主要是通过对确定按钮天价基本代码实现密码修改。
密码修改模块关键程序代码如下:
stringusername=Session["
username"
].ToString();
stringnewPassword=this.PwdNew.Text;
stringadminFlag=Session["
LogModellogModel=newLogModel(username,newPassword,adminFlag);
LogLogiclogLogic=newLogLogic();
stringoldPassword=logLogic.GetPassword(logModel);
if(!
oldPassword.Equals(this.PwdOld.Text))
对不起,原密码输入不正确!
if(logLogic.UpdatePassword(logModel))
新密码修改成功!
+"
结 论
通过本次设计,复习了网络程序设计的基本知识,掌握了对界面设计的一些控件的使用,对数据库的建立连接与数据读取的方法和一些添加信息和修改信息的方法,巩固了ASP.net一些控件和对象的内部应用,加强了对网页开发的基本流程的掌握。
,提高了编程水平。
参考文献
[1]高屹王琦蒋若江.Web应用开发技术(第二版).清华大学出版社
[2]王小科吕双,《C#从入门到精通》,清华大学出版社
[3]张害藩,《软件工程导论》(第四版),清华大学出版社
[4]魏峥王军崔同良,《ADO.net程序设计教程与实践》,清华大学出版社
[5]钱乐秋等,《软件工程》,清华大学出版社
[6]王珊等,《数据库原理及设计》,清华大学出版社