第5章 系统的设计与实现
5.1 系统后台设计要达到的目标
人力资源是企业的核心资源,实现企业的科学化、正规化管理,与世界接轨的重要条件就是要提高企业人力资源管理的效率。本系统拟开发一个中小企业人力资源管理系统,规划的系统功能包括人事管理、培训管理、绩效管理、招聘管理、考勤管理、系统管理以及员工自我管理。
人事管理:人事档案、人事调动、离退记录、考核记录添加、修改、删除、查询信息。
培训管理:培训计划、培训报名、培训机构、培训课程中添加、修改、删除、查询信息。
绩效管理:考核计划添加、修改、删除、查询信息,在考核打分、考核得分、考核统计查询信息。
招聘管理:招聘需求、招聘计划、简历管理添加、修改、删除、查询信息。 考勤管理:考勤管理、考勤类别添加、修改、删除、查询信息。 系统管理:添加和管理用户信息,修改密码。
员工:个人工资查看信息、个人福利查看信息、我的合同查看信息、修改密码。
5.2 系统总体设计分析
本企业人力资源管理系统的设计与实现是根据实际的技术条件、经济条件和社会条件,确定系统的实施方案的过程。通常系统设计包括总体设计和详细设计两大部分。其中总体设计要在系统分析的基础上,把系统划分为若干种类、若干层次的基本功能模块,确定各个模块之间的关系,并对整个系统的软硬件实现进行合理的安排。详细设计是对总体设计中确定的各模块选择适当的技术实现手段和处理方法,包括代码设计、数据库设计、输入输出设计、人机对话设计、处理过程设计等内容。本文将进行总体设计中的功能模块设计和详细设计中的数据库
21
设计、代码设计、输入输出设计。
5.3 系统详细功能模块的设计与实现 5.3 .1 登录功能模块的设计与实现
1.截图
主要程序代码实现:
ltlMess.Text = \;
string user = Common.UrnHtml(txt_user.Value.Trim()); string pwd =
FormsAuthentication.HashPasswordForStoringInConfigFile(txt_pwd.Value, \);
string pwd2 = txt_pwd.Value; string sql = string.Empty;
if (rblLoginType.SelectedValue == \)
sql = \ + user + \and ManagerPwd='\ + pwd + \; else
sql = \ + user + \and loginpwd='\ + pwd2 + \;
SqlDataReader dr = DB.getDataReader(sql); if (dr.Read()) {
if (rblLoginType.SelectedValue == \) {
//更新登录次数
string sqlupdate = \LoginCount=LoginCount+1 where ManagerUser='\ + user + \and ManagerPwd='\ + pwd + \;
SqlConnection cnupdate = DB.OpenConnection(); SqlCommand cmdupdate = new SqlCommand(sqlupdate, cnupdate);
cmdupdate.ExecuteNonQuery();
22
cnupdate.Close(); cnupdate.Dispose(); }
//Cookie记录用户登录信息 HttpCookie cookies;
cookies = new HttpCookie(\); cookies.Values.Add(\,
HttpUtility.UrlEncode(this.txt_user.Value.Trim()));
cookies.Values.Add(\, rblLoginType.SelectedValue); //cookies.Expires = DateTime.Now.AddHours(24); Response.Cookies.Set(cookies); dr.Close(); dr.Dispose();
Response.Redirect(\); } else {
dr.Close(); dr.Dispose();
ltlMess.Text = \登录帐号或密码错误.\; }
5.3.2 人事档案管理
截图与部分代码:
23
try
{
string sql2 = string.Empty;
if (string.IsNullOrEmpty(id))//添加 {
sql2 = \
YuanGong(NoWorkTime,LoginPwd,TrueName,Sex,Age,XueLi,ZhiWei,WorkTime,GongZhi,IsWork) \;
sql2 += \ + txtNoWorkTime.Text + \ + txtLoginPwd.Text + \ + txtTrueName.Text + \ + rblSex.SelectedValue + \ + txtAge.Text + \ + txtXueLi.Text + \ + txtZhiWei.Text + \ + txtWorkTime.Text + \ + txtGongZhi.Text + \ + rblIsWork.SelectedValue + \; }
else//修改 {
sql2 = \
NoWorkTime='{0}',LoginPwd='{1}',TrueName='{2}',Sex='{3}',Age='{4}',XueLi='{5}',ZhiWei='{6}',WorkTime='{7}',GongZhi='{8}',IsWork='{9}' where YuanGongId=\ + id;
sql2 = string.Format(sql2, txtNoWorkTime.Text,
txtLoginPwd.Text, txtTrueName.Text, rblSex.SelectedValue, txtAge.Text, txtXueLi.Text, txtZhiWei.Text, txtWorkTime.Text, txtGongZhi.Text, rblIsWork.SelectedValue); }
24
SqlConnection cn = DB.OpenConnection(); SqlCommand cmd = new SqlCommand(sql2, cn); cmd.ExecuteNonQuery(); cn.Close(); cn.Dispose();
Common.ShowMessage(this.Page, \信息保存成功!\, \, \); }
catch (Exception ex) {
Common.ShowMessage(this.Page, \信息保存失败,请稍后重试。\, \);
return; }
5.3.3 员工福利管理
截图与部分代码:
try
{
string sql2 = string.Empty;
if (string.IsNullOrEmpty(id))//添加 {
25