开篇:润墨网以专业的文秘视角,为您筛选了一篇公司考勤管理系统设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
【文章摘要】
考勤系统可以有效地管理公司员工的出勤情况,规范人事制度管理,保证公司正常的工作,提高员工的工作效率,是公司管理的重要组成部分。因此,考勤管理系统的设计与实现有着十分重要的意义。
【关键词】
考勤;Silverlight;MVC
0 引言
开发的考勤管理系统主要完成了员工上班,下班考勤,请假处理,工资查询,任务查看,在线交流和后台管理等功能,考勤前台系统采用MVC3开发,后台采用Silverlight4开发,在将SilverLight项目无缝隙的结合到MVC3中,采用这种模式的主要原因是考虑到Silverlight的客户端特点,如果前台和后台管理均采用Silverlight会增加员工签到的等待时间,但是对管理员来说,操作界面更亲切,操作更便捷,可以像正常的软件一样来操作,使用起来更方便快捷。
1 系统关键技术及开发环境
1.1 采用B/S结构
考勤管理系统采用了当前很流行的B/S模式结构。相对于以往的主机/终端、C/S机构来说,B/S结构更具有优势。B/S结构是Browser/Server(浏览器/服务器)模式,它是对C/S模式应用的扩展。在这种结构下,只要安装维护一个服务器(Server),用户工作界面就可以通过IE浏览器来实现的。
1.2 采用微软MVC模式开发
MVC模式是“Model-View-Controller”的缩写,即:“模型-视图-控制器”。MVC结构最早是smalltalk语言团提出的,应用于用户交互应用程序中,它与其他模式协作完成工作。
所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。
1.3 加入微软的Silverlight技术
微软Silverlight 4新版强化与用户的连结,允许用户通过桌面、开始菜单快速连结功能启动应用程序,并改善对影音的支持。内建新的3D与动画功能,改善文字使用及支持硬件加速效果,提供几十种种控制功能及程序码,如摄像头与MIC硬件支持、报表打印支持、本地文件读写、更强大的富文本控件RichTextBox和及具有可粘贴、排序功能的DataGrid等,以及各种专业的设计主题等。
2.1 系统架构设计
2.1.1 架构设计
一个系统的架构设计在整个项目的开发过程中十分的重要,这涉及到系统以后的可复用与可扩展性。因此在架构设计阶段就要考虑好这些内容。本系统采用最流行的MVC模式基础之上进行开发
2.1.2 系统目录结构
(1)Web项目com.mstone
·ClientBin Silverlight宿主引用
·Context css 样式表文件
·Controllers 控制器
·Html 一些静态页面
·Image 图包
·Models 模型层
·Script script包
·Service 服务包
·Views 视图层
·com.mstone.Silverlight.aspx Silverlight 宿主
·Global.asax 路由解析文件
·Silverlight.js MVC添加Silverlight生成脚本文件
·Web.config 配置文件
(2)类库项目 com.mstone.core
·Base 项目公用类库
·Temp 中间变量类
·ViewModel MVVM模式的ViewModel包
·App.config 数据库模型Linq to Sql配置文件
·DB.dbml 数据库模型Linq to Sql
·ExtendMethod.cs 扩展方法集合
2.2 系统功能设计
2.2.1登录模块
登录模块主要包括用户的登录与用户登录信息的依据,登录包括前台也后台两个部分,前台是员工进入考勤系统的基础,后台登录管理则是进入后台的依据。
2.2.2考勤模块
考勤模块是考勤系统的核心部分,员工通过在考勤系统考勤页面进行登记,记录员工的出勤信息,员工可以查看自己的出勤情况,部门领导可以查看自己部门员工的出勤情况,人事部门领导可以查看所有员工出勤情况,进行奖罚操作,传递给财务部门,考勤模块包括。
2.2.3管理模块
管理模块是系统的管理核心部门,通过对员工的管理,可以保证系统的安全,让离职的员工不在有登录系统的权限,同时给员工分配权限,让员工有不同的职能,保证各部分工作的正常运行。
2.2.4新闻模块
新闻模块是提供公司内部的新闻呢信息,让员工实时了解公司的动态,将公司于员工紧密的结合在一起。
2.2.5工资模块
工资模块是供财务部门或者有这样职能的人用来统计员工工资情况的。
2.3 部分基础类设计
由于本系统的多结构性,本系统将常用的方法封装成特殊的类,公共类,其中有最重要的几个类为操作时间的,例如节假日的排除,休息日期的排除等日期操作公共类。
2.3.1 DTExt.cs
这个而是一个日期操作的公共类,其中日期包括常用的一些方法。
2.3.2 Str.cs
这是一个字符串操作的公共类,在基本的c#字符串的基础之上进行了封装,例如获取固定长度的字符串,在表格中显示某条记录的详细信息的时候,只显信息的前20字,后20字用“…”来代替。
2.3.3 ConvertExt.cs
类型转换,最多的功能就是将其他类型的东西转换成数字,例如从字符串中抽取出字符串来,这些都是些经常用到的方法。
2.4 系统实现
2.4.1 员工个人信息模块
员工个人信息查看页面如图3.4所示:
个人信息页面是用户用来查看自己个人信息的页面,在此页面可以快速链接到个人信息管理页面,也是为方便用户设置。
2.4.2后台管理员工管理模块
在系统中,后台管理页面一共分成三部分,添加,修改和维护(管理),添加界面主要用于新员工的添加,采用自增员工号的方式,而修改则是维护员工的角色信息,在上图展示的维护界面,我们可以预览简单的员工信息。
3 结论
经过对网络文件管理系统的设计,使我对软件开发过程有了更深入的了解。定义阶段有开发计划,需求分析;开发阶段包括需求分析,设计,编码,测试和最后的运行和维护。并对软件测试方法有了的提高。
【作者简介】
郭倩(1987—),女,辽宁抚顺人,同济大学软件学院硕士研究生。