冷 辉, 刘晓峰
(合肥工业大学 人事处,安徽 合肥 230009)
传统高校人事管理依靠人工执行指令,各个部门之间的信息交换由工作人员通过纸质文本传递。这种人工管理的流程与方式很容易产生失误,更重要的弊端是形成部门间的“信息孤岛”,即各个部门之间的信息不能共享,容易导致重复劳动与信息错误。
本文在描述高校人事管理流程与各科室职责的基础上,结合现代计算机技术,基于微软.NET平台,尝试设计自动化的高校人事管理系统,以期实现高校人事管理与服务的与时俱进。
当前高校人事管理工作主要包括进人计划编制、人才招聘、岗前培训、岗位安排、绩效考核、薪酬管理、档案管理等相关工作。上述工作由各个人事管理部门下属各个科室协调管理完成,各个科室的主要工作职责如下。
(1)人事科。负责学校组织机构设置与调整;编制进人计划,负责人才招聘、人才引进、考核、岗位安排、流动管理;单位及教职工年度、聘期考核与奖惩管理。
(2)师资科。负责学校各级各类专业技术队伍的岗位设置及管理;学校专业技术职务的评聘、教师学历培养、进修、访问的组织管理;负责新教师岗前培训、教师资格认定及教师职称评定管理。
(3)劳动与社会保障科。负责教职工工资、薪酬与福利政策起草;职工工资总额测算、核拨,教职工转正、定级、职务升迁、职称评聘后工资测算、核定、上报、审批;校内绩效津贴测算、核拨、报批、核定。
(4)人事档案室。负责教职工人事档案管理以及非在职人员人事档案保管;相关人事档案归档材料收集、归档工作。
基于.NET平台设计高校人事管理系统时,必须依托高校人事管理工作。人事管理流程所执行的每个步骤与相关信息均存储到系统数据库,部门之间通过人事管理系统共享数据。人事管理系统采用微软.NET平台编程实现,利用其功能强大的数据库交互技术OLEDB和工作流技术,定义人事管理工作流,实现各个科室人事管理工作的流程审批和分工协作,使人事管理工作按照工作流程顺利执行[1]。另外利用.NET平台构建FTP文件管理系统,实现各个科室文档资料共享。
人事管理系统跨部门流程图如图1所示。
图1 人事管理系统跨部门流程图
基于.NET平台设计的高校人事管理系统主要功能模块包括人才计划管理、人才信息管理、岗位设置管理、人才资格审查、教师培训管理、新进人才岗位安排、教师年度考核管理、工资福利管理、教师离退休管理、人事档案管理。其中人才计划管理包括人才计划的编制、修改、查询等操作,人才计划是人才招聘工作的依据;人才信息管理包括新进人才基本信息录入、在岗人才的信息维护,以及人才信息的查询;依照人才计划招聘的人才,需要执行人才资格审查,通过资格审查的人才经过岗前培训,然后安排工作岗位,劳动与社会保障科根据岗位的安排编制工资、薪酬和福利;教师每年执行年度考核,年初编制教师年度工作目标,年终按照目标执行考核,考核结果作为教师转正、定级、职位变更的依据,职位、职级、工作岗位又是工资、薪酬、福利变更的依据。
除上述人事管理部门管理工作模块之外,人事科编制的人才计划还可以通过因特网发布,供外网客户端查询。人事管理系统主要功能模块如 图2所示。
图2 人事管理系统主要功能模块
高校人事管理系统采用B/S软件架构,即采用Web形式对客户端发布服务,客户端不需要安装应用系统软件,通过因特网连接Web服务器,登录系统即可执行系统功能。系统的服务器部分包括3种服务器:① Web服务器,部署人事管理系统服务;②FTP服务器作为FTP文件服务器,客户端可以执行文件的上传、浏览、下载;③ 数据库服务器存储人事管理系统数据信息[2]。
采用B/S软件架构,彻底解决了各个部门“信息孤岛”的问题,各个部门所录入系统的信息存储在一起,具有对应权限的用户登录系统即可执行信息的共享。系统部署结构图如图3所示。
图3 人事管理系统部署图
OLEDB是微软战略性的通向不同数据源的应用程序接口。OLEDB不仅包括微软的标准数据接口,即开放数据库连通性的结构化查询语言(SQL)能力,还具有面向其他非SQL数据类型的链接能力,即微软.NET平台的OLEDB技术可以连接各种数据源,包括结构化查询数据结构和非结构化查询数据结构[3]。
在高校人事管理系统实施之前,遗留下大量的纸质文件和电子文件,其中电子文件主要包括Excel文件、Word文件、Access文件等,要做到人事管理工作的平稳过渡,需要将各种类型的原始文件导入人事管理系统,OLEDB技术可以实现Excel文件、Word文件、Access文件等类型文件向结构化数据库的导入。
使用OLEDB技术读取Excel文件内容的代码如下:
///〈summary〉
///读取指定Excel文件指定工作表中的数据
///〈/summary〉
///〈param name="excelPath"〉Excel文件地址〈/param〉
///〈param name="ExcelVersion"〉Excel文件版本号〈/param〉
///〈param name="SheetIndex"〉指定工作表索引〈/param〉
public void ReadExcelData(string excelPath,string ExcelVersion,int SheetIndex)
{
const string ConnectionStringTemplate="Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=Excel{1}";
//使用OLEDB技术创建Excel文件连接
string strConnString=ConnectionStringTemplate;
strConnString=string.Format(strConnString,excelPath,ExcelVersion);
OleDbConnection OleDbConn=new OleDbConnection(strConnString);
OleDbConn.Open();
//读取Excel文件所有工作表
DataTable dtSheets= OleDbConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null);
//判断函数工作表参数是否超出文件工作表总数
if(SheetIndex〉=dtSheets.Rows.Count)
throw new ArgumentOutOfRangeException();
//读取指定工作表数据
string SheetName=dtSheets.Rows[SheetIndex][2].ToString();
string cmd="select*from ["+SheetName+"]";
OleDbDataAdapter adapter=new OleDbDataAdapter(cmd,OleDbConn);
DataTable dt=new DataTable();
//读取数据
adapter.Fill(dt);
OleDbConn.Close();
}
工作流处理一件事务的流程,是一系列相互衔接、自动进行的业务活动或任务。一个工作流一般包括任务、任务间的关系及其启动和终止条件。在现代管理系统中通常用软件模拟工作流处理流程,使用自动化的工作流可以提高管理的灵活性和适应性、提高工作效率,使工作人员集中精力处理核心业务、跟踪业务处理过程,并可以量化考核业务处理的效率,充分发挥现有计算机网络资源的作用[4]。
然而,构建稳定实用的工作流系统是软件开发工作的难题之一,目前市场上罕有成熟的工作流软件可供开发人员使用,其中微软的工作流技术较为简单与稳定。微软工作流用于快速构建基于工作流的应用程序的编程模型、引擎和工具。尤其.NET Framework 4中的工作流技术可以更加轻松地创建、执行、维护和实现众多新功能[5]。
高校人事管理系统使用微软的工作流技术,结合人事管理工作流程,可以快速配置方便适用的人事管理工作流,各个科室工作人员按照工作流分工协作,使人事管理工作有条不紊。部门领导可以方便跟踪工作流的处理状态与处理结果,为上级领导提供决策依据[6]。
在高校人事管理系统中,除共享数据库中的数据外,还有各种类型的文件需要共享,主要有文本文件、视频音频文件、图片文件等,共享这些文件需要构建FTP文件服务器,用于存储各类文件。给每位工作人员分配帐号,并设置不同的访问控制权限,具有对应工作权限的工作人员可以在FTP客户端执行文件的上传、删除、修改、下载操作[7]。
FTP系统分为FTP服务器和FTP客户端,目前有一些免费的FTP服务器产品可供使用,也可以使用Windows操作系统自带的FTP服务器。FTP客户端代码需要系统构建者自行开发,FTP客户端主要功能包括获得FTP服务器指定目录下的子目录和文件列表、下载文件、上传文件[8]。其中基于C#.NET的FTP客户端下载文件的代码如下:
///〈summary〉
///FTP下载文件
///〈/summary〉
///〈param name="ftpServerIP"〉FTP服务器IP〈/param〉
///〈param name="ftpUserID"〉FTP登录帐号〈/param〉
///〈param name="ftpPassword"〉FTP登录密码〈/param〉
///〈param name="saveFilePath"〉保存文件路径〈/param〉
///〈param name="saveFileName"〉保存文件名〈/param〉
///〈param name="downloadFileName"〉下载文件名〈/param〉
public static void FTPDownloadFile(string ftpServer-IP,string ftpUserID,string ftpPassword,
string saveFilePath,string saveFileName,string downloadFileName)
{
//定义FTP请求对象
FtpWebRequest ftpRequest=null;
//定义FTP响应对象
FtpWebResponse ftpResponse=null;
//存储流
FileStream saveStream=null;
//FTP数据流
Stream ftpStream=null;
try
{
//生成下载文件
saveStream=new FileStream(saveFilePath+"\\"+saveFileName,FileMode.Create);
ftpRequest=(FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://"+ftpServerIP+"/"+download-FileName));
ftpRequest.Method= WebRequestMethods.Ftp.DownloadFile;
ftpRequest.UseBinary=true;
ftpRequest.Credentials=new NetworkCredential(ftpUserID,ftpPassword);
ftpResponse=(FtpWebResponse)ftpRequest.GetResponse();
ftpStream=ftpResponse.GetResponseStream();
long cl=ftpResponse.ContentLength;
int bufferSize=2048;
int readCount;
byte[]buffer=new byte[bufferSize];
//接收FTP文件流
readCount=ftpStream.Read(buffer,0,bufferSize);
while(readCount〉0)
{
saveStream.Write(buffer,0,readCount);
readCount=ftpStream.Read(buffer,0,bufferSize);
}
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
finally
{
//关闭资源
ftpStream.Close();
saveStream.Close();
ftpResponse.Close();
}
}
本文介绍了高校人事管理系统设计的主要功能模块以及人事管理的主要工作流程,并描述基于.NET平台的关键技术实现方案,期待通过人事管理系统实现高校人事管理工作自动化,从根本上避免传统人事管理方式的“信息孤岛”产生,减少人工管理工作的出错概率,使人事管理工作按照系统定义的流程有条不紊执行,在人机交互管理的基础上实现人事管理与服务的提升。本文只对人事管理系统中的核心功能进行描述,系统中非核心功能有待进一步完善。
[1]王 伟,蒋增强,刘明周,等.PDM系统中动态工作流的分析与研究[J].合肥工业大学学报:自然科学版,2010,33(11):1618-1622.
[2]江晓庆,何斌斌.基于ASP.NET 2.0的高校人才招聘系统与人事管理系统的集成[J].软件导刊,2009(7):91-94.
[3]路 远.C/S和B/S双模式下高校人事信息管理系统的研究与构建[J].中国教育信息化,2011(5):53-55.
[4]杨 沁,卫道柱,潘秀琴.面向需求表达的个性化产品协作式工作流建模[J].合肥工业大学学报:自然科学版,2010,33(10):1462-1467.
[5]徐燕军,刘 倩.高校人事管理信息系统的设计与实现[J].实验技术与管理,2011(4):244-246.
[6]韩彦铎.高校人事管理与信息化建设[J].人力资源管理,2011(4):123-125.
[7]吕俊瑞,罗学刚.基于SSH的高校人事管理系统的设计与实现[J].电脑知识与技术,2010(7):5157-5159.
[8]李婧玮.基于 Web的高校人事信息管理系统开发与设计[J].数字技术与应用,2010(10):52-53.