《职工考勤管理系统的设计与实现41885.docx》由会员分享,可在线阅读,更多相关《职工考勤管理系统的设计与实现41885.docx(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、职工考勤管理系统的设计与实现课程设计报告职工考勤管管理系统的的设计与实实现课 程 数据库库原理及应应用 班 级姓 名学 号 指导教师时间: 22012 年 5 月 211 日 至至 20112 年年 6 月 3 日指导教师对对课程设计计(论文)的的评语(工工作态度、任任务完成情情况、能力力水平、设设计说明书书(论文)的的撰写和图图纸质量等等):成绩 指导教师签签字 年 月 日目 录第一章开发发背景3第二章功能能描述4第三章业务务流程分析析5第四章数据据流程分析析64.1 数数据流程图图64.2 数数据字典77第五章概念念模型设计计9第六章逻辑辑模型设计计和优化110第七章物理理设计和实实施11
2、第八章系统统测试133第九章课程程设计心得得体会333参考文献3342第一章开发发背景20世纪990年代,随着着我国市场场经济的快快速发展,职职工考勤管管理系统在在企业的日日常管理中中发挥着越越来越重要要的作用。职职工考勤管管理系统可可以进行员员工信息管管理、出勤勤管理和密密码管理等等,方便处处理企业内内部员工的的相关工资资信息。此此外Intterneet 的迅迅速普及,使使Intrranett成为Intterneet技术在在企业管理理信息系统统中的应用用和延伸,形形成了集计计算机,计计算机网络络、数据库库、分布式式计算等于于一体的信信息技术综综合体,它它打破了时时间和地域域的界限,使使信息交
3、流流变得快捷捷、准确,为为建立现代代企业管理理信息系统统提供了充充足的条件件。企业信信息管理系系统在此基基础上延伸伸、扩展,使使之上下、内内外全面贯贯通。引入入Inteernett后,形成成了新型的的浏览器/服务器(BBrowsser/SServeer)结构构,而传统的的客户机/服务器(CCliennt/Seerverr)结构在在这方面就就远不及BB/S结构构。职工考考勤系统是是在适应市市场需求的的客观前提提下,为了了满足中小小型公司或或事业单位位管理自己己的员工而开发发的。该系系统的是终终目的是要要将自己的的职工考勤勤放到网络络上,以方方便员工查查看。第二章功能能描述 本系系统的功能能描述如
4、下下:(1)员工工信息(超超级用户)主要是显示示员工的基基本信息。(2)添加加及删除员员工信息主要是用于于管理员添添加员工和和删除员工工等操作,只只有是系统统中的合法法管理员才才有资格进进入超级用用户界面。(3)出勤勤记录(超超级用户)主要用于管管理员记录录每个员工工每天的出出勤记录,以以及出差的的天数以方方便奖励或或者处罚员员工。(4)密码码管理让每一位员员工在查看看到自己的的出勤记录录的同时也也保管好自自己的密码码以防别人人偷看自己己的出勤信信息,保护护隐私。(5)出勤勤记录(一一般用户)让每一位员员工在查看看到自己的的出勤记录录,以便管管理好自己己的工作,为为公司以及及自己创造造出更大的
5、的利益。(6)员工工信息(一一般用户)让员工看到到自己的同同事,方便便同事之间间的交流。第三章业务务流程分析析根据职工考考勤管理系系统的设计计要求可以以画出该系系统的业务务流程图,如如图3-11所示。职工考勤管理系统 员工信息 出勤记录管理员 退出管理 出勤记录一般用户 密码管理图3-1 职工考勤勤系统业务务流程图第四章数据据流程分析析4.1数据据流程图通过需求分分析,得出出职工考勤勤管理系统统的数据流流程如下图所示。修改职工信息P02删除职工记录输入职工基本信息D01职工表F01添加操作修改操作删除操作用户查询操作职工号图4-1职职工信息的的载入修改考勤信息P01删除考勤信息输入考勤基本信息
6、D02考勤表F02添加操作修改操作删除操作查询操作用户图4-2考考勤的信息息载入4.2数据据字典(1)数据据流的描述述数据流的编编号:D001数据流的名名称:员工工基本信息息 简述:与与员工有关的基本信息数据流来源源:员工基基本信息表表数据流去向向:员工,部部门数据流组成成:员工编编号+姓名名+性别+年龄+部部门+职称+基本工资资数据流的编编号:D002数据流的名名称:考勤勤结构信息息简述:员工工考勤的基本信息数据流来源源:考勤信息表表数据流去向向:员工数据流组成成:员工编编号+加班班+出差+迟到+旷工+请假(2)处理理逻辑的描描述处理逻辑编编号:p01处理逻辑名名称:考勤勤统计简述:对考考勤
7、进行统统计、计算算输入的数据据流:基本本考勤信息息处理描述:根据职工工的职位及及其他相应应情况计算算出考勤次次数输出的数据据流:考勤勤信息 处理理逻辑编号号:p02处理逻辑名名称:员工工信息处理理 简述述:对员工工信息进行处理输入的数据据流:员工工信息处理描述:根据员工工的基本信息息进行各种操操作输出的数据据流:员工工信息(3)数据据存储的描描述数据存储编编号:F01数据存储名名称:员工工基本信息息表简述:员工工的基本信信息数据存储组组成:员工工编号+姓姓名+性别别+部门关键字:员员工编号相关联的处处理:P002数据存储编编号:F02数据存储名名称:基本本考勤表 简述:员员工的考勤勤信息数据存
8、储组组成:员工工编号+加加班加班+出差+迟到早退退+旷工关键字:员员工编号相关联的处处理:P01(4)外部部实体的描描述外部实体编编号:S001外部实体名名称:员工工简述:员工工考勤输入的数据据流:D002,D001输出的数据据流:F001,F002第五章概念念模型设计计根据系统数数据流图和和数据字典典,得出系系统的总体体概念模型型(E-RR)如图55-1所示。职工号缺勤天数职工号姓名考勤系统员工考勤时间缺勤类别密码部门岗位图5-1实实体之间关关系E-RR图第六章 逻逻辑模型设设计和优化化职工考勤管管理系统数数据库中各各个表格的的设计结果果如下面的的几个表格格所示。每每个表格表表示在数据据库中
9、的一一个表,如如下表1-表4。(1)员工工信息表表1员工信信息表编号姓名性别部门基本工资Char(10)Char(10)Char(10)Char(10)Char(10)(2)出勤勤记录表表2 出勤勤记录表编号姓名性别部门缺勤次数请假次数出差次数Char(10)Char(10)Char(10)Char(10)Char(10)Char(10)Char(10)(3)用户户表表3 用户户表用户名密码Char(10)Char(10)(4)管理理员表表4 管理理员表用户名密码Char(10)Char(10)第七章物理理设计和实实施数据库和数数据库表创创建语法(1)创建建数据库/*=*/* DaataBaa
10、se: 职工考勤勤管理系统统,创建数数据库,数数据库名称称为职工考考勤管理系系统*/*=*/creatte daatabaase职工工考勤管理理系统go(2)创建建数据库表表/*=*/* Taable:1,创建员员工信息表表*/*=*/CREATTETABBLE 员工信信息表 (NUMBEERCHAAR (110)NOT NULLLNAMECHARR (10)NOTT NULLL,DEPARRTMENNTCHAAR (110)NOOT NUULL,ZC CHAAR (110) NOTT NULLLJBGZ CHHAR (10) NOOT NUULL)GO/*=*/* Taable:2,创建出出
11、勤记录表表*/*=*/CREATTETABBLE出勤勤记录表 (NUMBEERCHAAR (110)NOT NULLLNAMECHARR (10)NOT NULLLDEPARRTMENNTCHAAR(10) NULLLSEX CHHAR (10) NUULLQUEQIIN CHARR (100) NULLLQINJIIA CHARR (100) NULLLCHUCHHAI CHAAR (110) NULLL )GO/*=*/* Taable:3,创建管管理员表*/*=*CREATTETABBLE 管理员员表 (NAMECHARR (10)NOTT NULLL,MI CCHAR (10)NOT
12、NULLL,)GO/*=*/* Taable:4,创建用用户表*/*=*CREATTETABBLE 用户表表(NAMECHARR (10)NOTT NULLL,MI CCHAR (10)NOT NULLL,)GO第八章系统统测试1、登录界界面图8-1 登录界面面对应代码:privaate vvoid btnLLoginn_Cliick(oobjecct seenderr, EvventAArgs e) try iif (ttxtUsserNaame.TText = ) MMessaageBoox.Shhow(用户名不不能为空); eelse iif (ttxtUsserNaame.TText
13、= ) MMessaageBoox.Shhow(密码不能能为空); eelse SSqlCoonnecctionn conn = DDBConn.creeateCCon(); ccon.OOpen(); iif (ccombooBox11.Texxt = 一般般用户) SSqlCoommannd cmmd = new SqlCCommaand(seleect ccountt(*) fromm 用户表表 wheere 用用户名= + txtUUserNName.Textt + annd 密码码= + txxtUseerPwdd.Texxt + , conn); int i = Convvert.
14、ToInnt32(cmd.ExeccuteSScalaar(); iff(i00) thiss.Hidde(); ptMaain MM = nnew pptMaiin();M.Useer = txtUUserNName.Textt; M.Shhow(); Formm N = neww Forrm(); N.Cllose(); elsee MessaageBoox.Shhow(用户名或或者密码错错误,请重重新输入!); txxtUseerNamme.Cllear(); txttUserrPwd.Cleaar(); ttxtUsserNaame.FFocuss(); elsee if (commb
15、oBoox1.TText = 超级用户户) SSqlCoommannd cmmd = new SqlCCommaand(seleect ccountt(*) fromm 管理员员表 whhere 用户名= + txttUserrNamee.Texxt + aand 密密码= + ttxtUsserPwwd.Teext + , coon);int ii = CConveert.TToIntt32(ccmd.EExecuuteSccalarr(); if (i0) thiss.Hidde();frmMaain MM = nnew ffrmMaain(); M.SShow(); Foorm NN =
16、 nnew FForm(); N.Closse(); elsse MesssageBBox.SShow(用户名名或者密码码错误,请请重新输入入!); txtUUserNName.Cleaar(); txtUUserPPwd.CClearr(); txtUUserNName.Focuus(); eelse MMessaageBoox.Shhow(请选择登登录界面); ccatchh (Exxcepttion ex) MessaageBoox.Shhow(eex.TooStriing(); privaate vvoid txtPPwd_KKeyPrress(objeect ssendeer, KK
17、eyPrressEEventtArgss e) iif (ee.KeyyCharr = 13) bbtnLoogin_Clicck(seenderr, e); pprivaate vvoid btnCCanceel_Cllick(objeect ssendeer, EEventtArgss e) tthis.Closse(); 2. 管理理员界面图8-2 管理员界界面对应代码:privaate vvoid 基本信息息ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) FForm22 f = neww Forrm2();
18、ff.MdiiPareent = thiis; ff.Shoow(); pprivaate vvoid 退出系统统ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) iif (MMessaageBoox.Shhow(确定退出出本系统吗吗?, 提示, MeessaggeBoxxButttons.OKCaancell, MeessaggeBoxxIconn.Astterissk) = DiialoggResuult.OOK) this.Closse(); pprivaate vvoid 出勤统计计ToollStriipMen
19、nuIteem_Cllick(objeect ssendeer, EEventtArgss e) cchuqiintonngji P = new chuqqintoongjii(); PP.MdiiPareent = thiis; PP.namme = Userr; PP.Shoow(); pprivaate vvoid 添加员工工ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) ttianjjiayuuangoong ff = nnew ttianjjiayuuangoong(); ff.MdiiPareent =
20、thiis; ff.Shoow(); pprivaate vvoid 删除员工工ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) shhanchhuyuaangonng ff = nnew sshancchuyuuangoong (); ff.MdiiPareent = thiis; ff.Shoow(); pprivaate vvoid 修改密码码ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) mmimaxxiugaai P = neew
21、miimaxiiugaii(); PP.namme = Userr; PP.Shoow(); 3 一般用用户界面图8-3 一般用户户界面对应代码:privaate vvoid 退出系统统ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) iif (MMessaageBoox.Shhow(确定退出出本系统吗吗?, 提示, MeessaggeBoxxButttons.OKCaancell, MeessaggeBoxxIconn.Astterissk) = DiialoggResuult.OOK) tthis.Closse()
22、; pprivaate vvoid 基本信息息ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) FForm22 f = neww Forrm2(); ff.MdiiPareent = thiis; ff.Shoow(); pprivaate vvoid 修改密码码ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) xxiugaaimimma P = neew xiiugaiimimaa(); PP.namme = Userr; PP.Shoow(
23、); pprivaate vvoid 出勤统计计ToollStriipMennuIteem_Cllick(objeect ssendeer, EEventtArgss e) cchuqiinjillu2 PP = nnew cchuqiinjillu2(); PP.MdiiPareent = thiis; PP.Shoow(); 4.修改密密码界面图8-4 修改密码码界面对应代码:privaate vvoid buttton1_Clicck(obbjectt sennder, EveentArrgs ee) iif (ttextBBox2.Textt.Triim() = | texxtBoxx
24、3.Teext.TTrim() = | ttextBBox1.Textt.Triim() = ) MMessaageBoox.Shhow(请将数据据填写完整整, 提示, MesssageeBoxBButtoons.OOK, MMessaageBooxIcoon.Innformmatioon); rreturrn; eelse sstrinng sttr = sellect counnt(*) froom 管理理员表 wwheree 用户名名= + naame + and 密码= + thiss.texxtBoxx1.Teext.TTrim() + ; iint ii = ooperaate.H
25、HumannNum(str); iif (ii 00) MMessaageBoox.Shhow(旧密码错错误, 提示, MeessaggeBoxxButttons.OK, MesssageBBoxIccon.IInforrmatiion); rreturrn; eelse iif (ttextBBox2.Textt.Triim() != ttextBBox3.Textt.Triim() MMessaageBoox.Shhow(两次密码码不一致, 提提示, MesssageBBoxBuuttonns.OKK, MeessaggeBoxxIconn.Infformaationn); rreturr
26、n; eelse sstrinng uppdateestr = uupdatte 管理理员表 sset 密密码= + ttextBBox3.Textt.Triim() + wheere 用用户名= + namee + ; ooperaate.OOperaateDaata(uupdattestrr); MMessaageBoox.Shhow(密码修改改成功, 提示示, MMessaageBooxButttonss.OK, MesssageeBoxIIcon.Infoormattion); tthis.Closse(); pprivaate vvoid buttton2_Clicck(obbjec
27、tt sennder, EveentArrgs ee) tthis.Closse(); 5 出勤勤记录界面面图8-5 出勤记录录界面对应代码:privaate vvoid buttton1_Clicck(obbjectt sennder, EveentArrgs ee) thiss.texxtBoxx1.Ennableed = truee; thiss.texxtBoxx2.Ennableed = truee; thiss.texxtBoxx3.Ennableed = truee; thiss.texxtBoxx4.Ennableed = truee; if (strr1 = thiss.te
28、xxtBoxx1.Teext.TToStrring() != & (strr2 = thiss.texxtBoxx2.Teext.TToStrring() != & (strr3 = thiss.texxtBoxx3.Teext.TToStrring() != & (strr4 = thiss.texxtBoxx3.Teext.TToStrring() != ) if (MesssageBBox.SShow(您确定定要新增本本条记录吗吗?, 提示, MeessaggeBoxxButttons.YesNNo, MMessaageBooxIcoon.Waarninng) = DiialoggRes
29、uult.YYes) flagg = 11; MesssageBBox.SShow(请输编编号、姓名名、部门,并且按提提交按钮,才才能新增成成功!); retuurn; privvate voidd buttton22_Cliick(oobjecct seenderr, EvventAArgs e) if (strr1 = thiss.texxtBoxx1.Teext.TToStrring() != & (strr2 = thiss.texxtBoxx2.Teext.TToStrring() != & (strr3 = thiss.texxtBoxx3.Teext.TToStrring() != & (strr4 = thiss.texxtBoxx3.Teext.TToStrring() != ) if (MesssageBBox.SShow(您确定定要修改本本条记录吗吗?, 提示, MeessaggeBoxxButttons.YesNNo, MMessaageBooxIcoon.Waarninng) = DiialoggResuult.YYes) flagg = 22; MesssageBBox.SShow(请按提提交按钮,才才能修改成成功!); retuurn; privvate voidd bu