中国矿业大学2015届本科生毕业设计(论文) 第 25 页
图5.2 用户登录界面
用户登录系统的权限功能代码设计: frmUserKqManage.p = power;
frmEmployee.p1 = power; if (power == \普通员工\ {
系统管理ToolStripMenuItem.Enabled = false; 操作员管理ToolStripMenuItem.Enabled = false; 数据备份ToolStripMenuItem.Enabled = false;
人员调动管理ToolStripMenuItem.Enabled = false; 人员奖罚管理ToolStripMenuItem.Enabled = false; 人员考评管理ToolStripMenuItem.Enabled = false; if (power == \部门主管\ {
系统管理ToolStripMenuItem.Enabled = false; 操作员管理ToolStripMenuItem.Enabled = false; 人员调动管理ToolStripMenuItem.Enabled = false; 数据备份ToolStripMenuItem.Enabled = false; }}
5.2 系统主功能页面
从系统功能主界面里可以找到本系统所有的功能模块。系统功能主界面在页面左下角中呈现了用户当前的用户姓名以及登录时间,在页面的上方是各个功能模块分类,用户可以轻松找到所需功能,便于用户对整体信息的浏览。用户可根据自己的需要进行相应的选择,同时也可执行退出操作来重新登录系统。
系功能主界面如图5.3所示。
中国矿业大学2015届本科生毕业设计(论文) 第 26 页
图5.3 系统功能主界面
5.3 人事管理
人事管理主要包含档案管理、奖罚管理、调动管理、考评管理四个模块,由于这四个模块中涉及企业内部情况,所以该四个模块由系统管理员访问和维护,部门经理只可以对其中的奖罚管理和考评管理进行操作,普通用户只能使用档案管理中的查询功能。 5.3.1 档案管理
档案管理主要是管理员对员工档案进行管理,普通员工也可查看自己的相关档案信息。管理员可以根据企业的实际情况对企业员工的个人信息进行查看、添加、修改和删除操作。为了方便用户快速找到相关员工的信息,专门设计了按员工姓名快速查找功能,大大缩短了查找时间。在界面左下方还设有员工人数统计功能,用来统计该企业共有多少人。
实现档案管理功能的流程图如图5.4所示。
图5.4 档案管理流程图
中国矿业大学2015届本科生毕业设计(论文) 第 27 页
档案管理界面图如图5.5所示。
图5.5 档案管理界面
在此界面中,为方便管理员和员工对相关员工信息的查看,在每个员工信息字段均设置了超链接效果,用户只要点击员工的任一信息,便可弹出该员工信息操作页面,并可对其进行修改操作。如图所示点击“会东”的个人信息立即弹出该员工操作界面。
个人信息修改界面如图5.6所示。
图5.6 个人信息修改界面
在添加员工信息时,为了能够在员工信息窗体中显示员工的照片,需要将图片存入数据库并进行读取,在向数据库中存储图片时首先通过OpenFileDialog控件打开图片,然后使用FileStream读取文件内容,最后将蹄片的字节数组保存到数据库,在读取图片时,首先使用SqlDataReader对象的Read()方法,从数据库中读取二进制的图片,然后使用Bitmap对象的构造方法得到图片,最后使用PictureBox对象显示图片。添加员工档案的相关代码:
DBoperate对象的Get_Image()方法用于从数据库中得到Image对象,并为指定的PictureBox控件的Image属性赋值。相关代码如下所示:
中国矿业大学2015届本科生毕业设计(论文) 第 28 页
private void dgvEmployee_Click(object sender, EventArgs e) { if (dgvEmployee.SelectedCells.Count > 0)
{ string YGName = dgvEmployee.SelectedCells[1].Value.ToString(); operate.Get_Image(YGName, pictureBox1);//显示图片信息
在toolStripTextBox1控件的TextChanged事件中编写代码实现按员工姓名快速查找相关信息功能,在控件中输入关键字后,可立刻检索出相应数据。相关代码如下所示:
private void frmEmployee_Load(object sender, EventArgs e)
{ string str = \编号',employeeID as '员工编号',employeeName as '
员工姓名',employeeSex as '员工性别',employeeDept as '所属部',employeeBirthday as '员工生日',employeeNation as '民族'from tb_employee\ operate.BindDataGridView(dgvEmployee,str);
dgvEmployee.Columns[0].Width = 40; dgvEmployee.Columns[1].Width = 80; 5.3.2 奖罚管理
该模块主要管理员工的上下班考勤情况,如果上班迟到则记录惩罚,并扣除一定工资。完成该模块使用的数据库表主要是“奖罚信息表”。在奖罚模块中对员工的奖惩操作会在工资管理的考勤津贴模块中同步显示出来,最后计入工资统计中。本界面可由系统管理员和部门经理可见并根据实际情况对其进行查看、添加、删除、修改操作。但部门经理只能对本部门员工的奖惩情况进行管理。
实现奖罚管理功能的流程图如图5.7所示。
图5.7 奖罚管理流程图
奖罚管理界面如图5.8所示。
中国矿业大学2015届本科生毕业设计(论文) 第 29 页
图5.8 奖罚管理界面
在奖罚修改页面中,通过类型选择可以决定对员工的奖罚操作。选择“惩罚”的类型时,禁用奖励金额文本框,否则禁用惩罚金额文本框,相关代码如下:
private void cbbUserJFType_SelectedIndexChanged(object sender, EventArgs e) {
if (cbbUserJFType.Text == \奖励\ {
txtFK.Enabled = false;//停用罚款文本框 txtFK.Text = \清空罚款文本框 txtJL.Enabled = true;//应用奖励文本框 } else {
txtJL.Enabled = false;//停用奖励文本框 txtJL.Text = \清空奖励文本框
txtFK.Enabled = true;//启用罚款文本框 } } 5.3.3 调动管理
调动管理模块主要是记录员工在企业中的内部调动情况,涉及到企业内部结构,因此只能由管理员进行操作和维护。员工的调动情况会影响其基本工资,当员工所处部门或岗位发生变化时,基本工资也会随它们的变动而变动。该功能模块是用的数据表主要是“调动信息表”。此界面仍然只能由管理员可见并由管理员根据企业实际情况对其进行查看、添加、删除、修改操作。在界面右下方会有调动信息统计功能,用来统计调动信息共有多少条。
实现调动管理功能的流程图如图5.9所示。