APP下载

基于ASP.NET技术的业绩考核系统设计与开发

2015-03-01仇善梁

湖南邮电职业技术学院学报 2015年4期
关键词:业绩考核管理系统

仇善梁

(江苏联合职业技术学院扬州商务分院,江苏扬州225000)

基于ASP.NET技术的业绩考核系统设计与开发

仇善梁

(江苏联合职业技术学院扬州商务分院,江苏扬州225000)

【摘要】随着跨区域的移动办公员工人数的迅猛增加,基于传统手段的业绩考核模式已不再适应,亟需通过信息化手段来满足现实需求。文章基于ASP.NET开发技术和sql server数据库技术,研发了基于B/S架构的业绩考核管理系统,满足了企业对员工的业绩考核需求,实现了业绩考核管理的信息化,并在实际使用中取得了良好的效果。

【关键词】ASP.NET;业绩考核;管理系统

业绩考核通常也称为业绩考评,是企业针对每个员工所承担的工作,应用科学的定性和定量的方法,对其个人工作效率和对企业的贡献值进行考核和评价,从而促进企业目标的实现。业绩考核是现代企业管理中不可或缺的管理工具,有效的业绩考核,不仅可以激励员工士气,提高工作业绩,也可作为公平合理地酬赏员工的依据。根据经营范围不同,不少企业对员工都有明确的业绩要求,方法一般由专人负责统计考核,根据员工业绩进展定期在公司白板或公示栏等平台进行公示。如果企业不但规模较大,而且分布于异地,那么上述方法不但工作繁琐,而且实现不了数据更新和反馈的实时性。本文利用ASP.NET开发技术,建立一个基于B/S架构的员工业绩考核管理系统,不仅解决了上述问题,而且在实际使用中取得了良好的使用效果。

1 设计思路与总体架构

受某财富管理公司委托,开发员工业绩考核系统。本系统用户类别分为:理财顾问、团队经理、营业部经理、城市经理、区域经理、总经理、管理员七个角色模块。本系统首先是实现将公司年度目标进行逐层分解,最终落实到每个员工和月份,并能实时更新员工业绩,可按日、月、年对各个级别团队的业绩进行统计排名,引入竞争机制和显示总体进度;其次是实现员工对自己客户的登记和定期联系跟进功能。实现上述功能要求,可用B/S架构的应用程序实现,用户只需通过浏览器即可实现操作。

根据需求分析,本软件采用B/S架构开发模式,ASP.NET开发技术。作为目前主流开发技术之一,

ASP.NET具有简单易用,快速开发,易于部署等优点。其ado.net数据访问技术,同时具备在线式和离线式数据访问方式,其采取断开连接方式的数据结构,在浏览器向web服务器请求网页后,由服务器处理请求,并将请求的网页发给浏览器,断开连接,直到浏览器发出下一个请求。使用起来灵活方便。本软件的总体架构如图1所示。

图1 系统功能及架构图

2 实现方法

系统采用Visual Studio.Net 2010 Sp1开发环境,基于C#语言的ASP.NET开发技术,利用Sql Server 2008 R2作为数据库支撑平台,采用IIS+Framework 4.0作为部署发布平台。

2.1应用程序设计

系统开发采用三层架构,表示层以HTML标记语言描述各页面元素,采用DIV+CSS作为页面布局和美化方式,使用JQuery处理前台的各种验证和判断等交互事件。业务逻辑层通过.NET平台自带的控件来实现用户与界面的交互,通过事件处理机制向应用程序服务器提交HTTP请求,实现业务逻辑规则。数据访问层主要通过ado.net提供的五大对象,实现在线式(SqlDataReader)和离线式(DataSet)访问操作,完成常见的数据操作方法。

2.2数据库及数据库类设计

与开发技术对应,本系统选用微软系列的sql server作为数据库支持。根据系统功能需要,数据库共建立了参数表、产品表、城市表、分解表、角色表、开户表、客户表、目标表、年度表、区域表、团队表、信息表、营业部表、用户表等共15张表。对于一些权限开关型参数和日后可能需要修改的信息,全部存储在数据库中,以此提高程序的灵活性。

系统建立了数据库类(DB.CS),设计了6个方法,实现对数据库的添加、修改、删除和更新操作,介绍如图2所示。

图2 数据库类的方法

2.3安全设计

安全是系统设计和开发时需要充分考虑的问题。本系统采取了多种措施来提高系统的安全性。如对用户名和密码进行非法字符实施严格的过滤、SQL查询语句采用参数化、过滤特殊字符、限制服务器的响应、降低SQL注入、XSS攻击的可能性,同时定期对数据库进行备份。

2.4性能设计

随着系统用户量和数据量的增大,如何保证系统能够高效流畅地运行是系统设计必须要考虑的问题。针对本系统中查询、读取、统计数据比较多的特点,系统采取了以下两个方面措施来提高软件性能。首先是使用连接池(Connection Pool),减少多次打开与关闭数据库连接消耗的服务器资源;其实是使用存储过程(Stored Procedure)技术,存储过程是存储在数据库服务器上的一组预先定义并编译好的用来实现某种特定功能的SQL语句,相比传统的前台执行SQL语句有着显著的效率优势。

3 主要功能

本系统根据业绩考核与客户跟进的需求分析,共设计了7种用户类型,18个功能要点,由于篇幅限制,下面分别以某一角色为例,对能够体现系统主要功能的项目进行介绍。系统功能流程如图3所示。

图3 系统运行流程图

3.1目标管理

目标管理是业绩考核系统的主要功能之一,在目标管理中,根据用户级别不同,用户至上而下对年度目标进行逐层分解,虽然不同级别用户的管理对象范围不同,但是基本内容是一致的,下面以团队经理为例,介绍其如何进行目标分解及其实现方法。

图4 团队经理目标分解功能

图4显示李威团队从营业部经理分得的年度目标为500万,团队经理对所属组员进行月度分解。在服务器端,ASP.NET通过读取团队人数,通过循环语句动态绘制表格行(TableRow),每位成员占一行,在行内再通过实时加载文本框(TextBox)控件的方法进行阅读计算,方法如下:

SqlDataReader re = conn.Return_DataReader(sql);

if (re.Read())

{

TableRow row = new TableRow();//循环行,加载理财顾问

TableCell cell0 = new TableCell();

cell0.Text = "";

TableCell cell2 = new TableCell();

TextBox tb2 = new TextBox();//创建动态TextBox

tb2.ID = "tb" + i.ToString() + "_1";

tb2.MaxLength = 2;

tb2.Width = 40;

tb2.Text = re["1月"].ToString();

//动态创建onblur事件,当数值变化时调用前台js,实现实时计算

tb2.Attributes.Add("onblur", "mm(" + i + ")");

cell2.Controls.Add(tb2);//载入动态控件

row.Cells.Add(cell2);//载入行

……

}

在客户端,通过JQuery技术实现了用户输入目标值的实时计算,下面就以横向计算每位理财顾问的全年目标为例进行介绍,方法如下: