收藏 分销(赏)

基于C#的企业员工管理系统.doc

上传人:二*** 文档编号:4513205 上传时间:2024-09-26 格式:DOC 页数:134 大小:10MB 下载积分:5 金币
下载 相关 举报
基于C#的企业员工管理系统.doc_第1页
第1页 / 共134页
本文档共134页,全文阅读请下载到手机保存,查看更方便
资源描述
基于C#的企业员工管理系统(完整资料) (可以直接使用,可编辑 优秀版资料,欢迎下载) 本科生毕业论文 课题名称: 基于C#的企业员工管理系统 院 (系): 专    业: 学   号: 学生姓名: 指导教师: 完成时间: 摘要 已经进入信息时代的今天,用简易的信息管理方式(如:文档,表格等纸张记录的方式)已不能来快速、准确地分析、处理复杂的信息.所以,我们试图利用计算机来控制整个信息处理的过程,如企业员工信息的管理过程.本文也就是针对企业员工信息的管理进行研究,对需设计的系统进行了可行性分析、需求分析、总体设计、详细设计及代码实现、测试等。 本文探究了C#开发的过程及相关技术,结合实际的企业员工信息管理方式设计其功能需求和业务处理流程,主要实现数据库接收处理的正确过程,实现基于C#与access数据库技术的企业员工信息管理管理系统。该系统将分为管理员登录、员工登录,员工信息调配等功能模块,使用C#进行设计,C#及access数据库实现数据处理过程。最终完成后进行系统测试。 关键字:信息;企业员工信息  ABSTRACT We has entered the information age today, with a simple information management methods (such as: document, such as form paper record way) has not been able to rapidly and accurately analyze, processing complex information。 So, we tried to use the computer to control the whole process of information processing, such as enterprise employee information management process。 This paper is a response to enterprise staff information management, to need to design system for the feasibility analysis, requirement analysis, general design, detailed design and code implementation, testing, etc。 This paper looks into the c # development process and related technology, combined with the actual enterprise employee information management mode design its functional requirements and processing process, mainly realizes the database receiving treatment, and to realize the correct process based on C# and access database technology enterprise staff management information management system. The system will be divided into administrator login, staff login, employee information allocation function module, using c # design, C# access database and realization of data processing. Finally after completing system test. Key Words:  information; Enterprise staff information 目录 1.引言1 1。1系统设计背景1 1。2系统开发意义1 1.3系统开发工具的选用及介绍1 1。3。1C#的优势及特点1 1.3.2数据库的优势及特点2 2。可行性分析3 3。系统设计4 3。1数据库设计4 3.1。1 数据库表创建4 3.1。2 实体-关系模型(E-R图)4 3。2功能需求6 3.2。1用户登录模块6 3.2。2权限不同的用户管理模块7 3.2.3 系统结构图9 参考文献10 附录11 1. 引言 1.1 系统设计背景 过去,企业员工信息管理的方法大多采用纸制统计、归档的方式,这样各式各样的本子或者表单,容易丢失并且复杂、混乱,也没有一个系统的整合,让处理资源的时候,显得繁琐,导致浪费较多时间及精力。 如今,处于信息时代的今天,需要高效的处理、使用信息,信息化管理变得尤其重要。开发一个统一管理信息的系统很重要,从而实现企业员工信息管理专人专项负责。 1.2 系统开发意义 企业员工信息管理系统将所需功能整合在一起统一处理,方便了管理者的多种处理,节约时间、精力。 本系统采用C#编程语言,该语言是面向对象的编程语言,模块化处理,扩展性强,便于数据管理,同时也具有较高的安全性,易用性。 本系统采用.net framework 框架结构,本系统采用.net framework 框架结构,管理员登录后就可以对相关数据的操作,使用方便、简单,员工可以直观的看到自己本身的信息并可以对不正确的信息提出申请修改. 1.3 系统开发工具的选用及介绍 该系统开发工具选用C#编程语言,采用.net framework 框架结构,数据库选用ACCESS。 1.3.1 C#的优势及特点 C#是目前流行的一种编程应用程序,C#语言类似拥有类似java的语法,语言简单明了。C#是在Java流行起来后所诞生的一种新的语言.由于微软在操作系统上占有很大的优势。在以往的开发中累积了不少经验,所形成的。net平台,所以C#在Windows方面可以说比Java具有更大的优势。如果单纯从技术上来讲,C#在网络编程上可以与Java匹敌.C#还在Windows Forms也有一定的优势。C#是一种非常类似于C++的语言,风格是更接近于Java,不管是C++程序员还是Java程序员,都可以很方便的转到C#上来。 C#的强大是依赖于.net的发展,而.net的发展是看微软在。net上的决心和投入有多少。从Windows 2003和Vista系统可以看出(前者内置。net1.1,后者内置.net2。0。)。Net在Windows编程中具有重要的战略意义。ﻫC#目前主要是应用在网络编程上,其他领域比如数据库、窗体编程,都逐渐在增大。 1.3.2 数据库的优势及特点 Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。 2. 可行性分析 可行性分析是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,所以,进行可执行性的分析是非常必要的,经过最初的设计目标和进行的市场调查得出以下四点的可行性分析: 经济可行性:该系统设计只是作为本人的毕业设计,所以没有什么经济效益可谈,开发过程不会产生大的开销; 技术可行性:现有的技术已经能够充分支持、开发该系统,并且已有现行系统能稳定的运行; 运行可行性:该系统采用.net framework 框架结构,安装后就可以使用; 法律可行性:该系统是作为毕业设计与商业无关,又是自主开发设计,因此不会构成侵权,在法律上是可行的. 3. 系统设计 3。1数据库设计 3.1.1 数据库表创建 1. 数据库名称: Date; 2。数据库创建了三个表:用户表(Users)、员工信息表(Yuangong)、申请表(Shenqing); 3.1。2 实体-关系模型(E-R图) 1. 登录管理员用户与员工用户关系模型: 管理员 用户名admin 密码admin 员工 管理 n 1 员工号 姓名name 年龄age 性别sex 部门dep 住处address 电话phone 职位 图3-1管理员表、员工表关系 表3—1:用户表(Users表) 字段名称 字段类型 字段描述 主键/外键 id char(2) 编号 主键 name varchar(20) 用户名 password varchar(20) 密码 表3-2:员工表(Yuangong表): 字段名称 字段类型 字段描述 主键/外键 id char(2) 员工号 主键 name varchar(20) 姓名 Sex varchar(2) 性别 Age char(2) 年龄 dep varchar(20) 部门 Zhiwei varchar(20) 职位 phone varchar(20) 电话 Zhuzhi char(50) 住址 2. 员工申请处理与管理员关系模型: 管理员 用户名admin 密码admin 员工 处理 n 1 员工号 姓名name 年龄age 性别sex 部门dep 住处address 电话phone 职位 申请修改 1 1 图3-2 员工申请与管理员关系 表3-3:申请表(Shenqing表): 字段名称 字段类型 字段描述 主键/外键 Id char(11) 员工号 主键 Name varchar(20) 姓名 Sqtime Time 申请时间 Sqwhy Varchar(50) 申请原因 Clzhuangtai Varchar(20) 处理状态 3.2功能需求 3.2.1用户登录模块 输入用户名及密码 用户进入登录界面 判断用户名是否正确? 判断密码是否正确? 是 访问数据库确定用户,转向相应界面 是 否 否 (重新输入密码) 图3—3 用户登录模块 图3—3中反映了用户登录该系统的过程。不同权限的用户登录后显示不同的界面,管理员可以对员工信息进行处理,员工可以申请修改自己的信息,可以修改密码。 3.2。2权限不同的用户管理模块 1。管理员管理模块: 显示管理界面 登录成功 查询员工信息界面 添加员工信息界面 修改员工信息界面 删除员工信息界面 修改申请信息界面 修改密码信息界面 数据库 是否选择其他操作? 否 是 是 返回 图3-4管理员管理模块 2. 员工模块: 显示员工信息和操作界面 登录成功 显示登录员工所有信息 是否选择其他操作? 申请修改信息界面 是 否 修改申请更新到数据库中 修改密码界面 修改后的密码更新到数据库中 图3-5 员工操作模块 图3—5中提到的“修改申请”是指:员工发现自己信息不正确时,填写申请向管理员要求进行修改。 4.注册模块: 省略注册模块的操作流程,注册模块只能注册普通用户。用户名为员工号和密码的正确性后,更新到Users表中。 3.2.3 系统结构图 企业员工信息管理系统(登录) 登录成功 登录失败(弹出错误) 员工界面 管理员界面 查询员工信息界面 添加员工信息界面 修改员工信息界面 删除员工信息界面 修改申请查询界面 修改密码界面 申请修改信息界面 申请处理情况查询界面 修改密码界面 查询申请界面 填写申请处理界面 图3—6 系统总体结构 用户登录系统是按权限不同,进去不同的界面,处理业务流程的. 操作方式如图3—7所示: 系统登录界面 无帐号无法登录,点“注册”帐号 跳转到注册界面,注册普通用户 注册成功后,调转到登录界面 重新填写 错误 按权限不同,访问不同界面进行处理 图3-7 登录时的两种情况说明 参考文献 【1】《C#程序设计与项目实践》 朱二喜 陆红蕾 徐敏 编著 清华大学出版社 【2】《数据库系统概论(第四版)》 王珊 萨师煊 编著 高等教育出版社 【3】网络教程: http:// 硅谷动力网络学院 附录 登录设计 企业员工信息管理系统登录窗口 图8管理系统登录界面 以下代码段为图9中核心部分: namespace Design { publicpartialclassmian : Form    { publicstaticstring aname; publicstaticstring conStr = @"Provider=Microsoft.Jet。OLEDB。4.0;Data Source=.\Data。mdb"; public mian()   {      InitializeComponent();   } privatevoid button3_Click(object sender, EventArgs e)       { zhuce f = newzhuce();         f.Show();      } privatevoid button2_Click(object sender, EventArgs e)     { if (MessageBox.Show("确定要退出系统?", "提示”, MessageBoxButtons。YesNo , MessageBoxIcon.Question) == DialogResult.Yes)       { Application。Exit();      }         } privatevoid button1_Click(object sender, EventArgs e) { if (textBox1.Text == "" )      { MessageBox.Show(”用户名不能为空!"); this.textBox1。Focus (); return ;       } elseif ( textBox2.Text == "”)        { MessageBox.Show("密码不能为空!"); this.textBox2。Focus (); return ;   }      using(OleDbConnection conn = newOleDbConnection(conStr))     {       conn.Open(); using (OleDbCommand cmd = conn。CreateCommand())      {      cmd.CommandText = "select * from Users where 用户名=@name and 密码=@pwd";       cmd.Parameters。Clear();         cmd。Parameters。Add(newOleDbParameter(”@name”, textBox1。Text。Trim()));        cmd。Parameters.Add(newOleDbParameter("@pwd", textBox2.Text。Trim())); using (OleDbDataReader reader = cmd.ExecuteReader())                 if (reader.Read() )                { if (textBox1。Text.Equals(”admin"))            {            aname = textBox1.Text; admin a = newadmin();                 a.Show();                textBox2.Text = ”";               reader。Close();      conn.Close();         conn.Dispose();           cmd。Parameters.Clear();          cmd.Dispose();                 } else           {                   aname = textBox1.Text;          yuangong y = newyuangong();                 y.Show();             textBox2.Text = ”";         reader.Close();               conn.Close();            conn.Dispose();             cmd.Parameters.Clear();            cmd.Dispose();      }          } else        {       MessageBox.Show("用户名或者密码出错!”, "提示信息”, MessageBoxButtons.OK, MessageBoxIcon。Information);                textBox2。Text = ”";            reader.Close();            conn。Close();             conn.Dispose();        cmd。Parameters.Clear();                cmd.Dispose();                  }              }        }             }   } } 企业员工信息管理系统管理员界面与操作 企业员工信息管理系统管理员窗口 图5—1管理系统管理员界面 如图9所示,管理员可以通过相关的按钮可以对企业员工信息的管理,通过按钮跳转到各各相应的功能界面。 企业员工信息管理系统管理员查询员工信息界面 图5-2管理系统管管理员查询员工信息界面 通过不同的查询方式可以对员工信息的查询。 1. 通过员工员工号查询 图5-3管理系统管管理员通过查询员工号查询 核心代码: if (textBox1.Text == ”")   { MessageBox.Show("员工号不能为空!”, ”提示信息”, MessageBoxButtons。OK, MessageBoxIcon。Information);   } else   {           using (OleDbConnection conn = newOleDbConnection(mian.conStr))     { this.listView1.Items.Clear();    conn.Open(); using (OleDbCommand cmd = conn.CreateCommand())            {           cmd.CommandText = ”select * from Yuangong where 员工号=@num ”;           cmd。Parameters.Clear();              cmd。Parameters.Add(newOleDbParameter("@num", textBox1.Text。Trim()));             using (OleDbDataReader reader = cmd.ExecuteReader())         { int i = 0; while (reader.Read())         { ListViewItem item = newListViewItem(reader。GetString (reader。GetOrdinal(”员工号")));                   item.SubItems.Add(reader.GetString(reader.GetOrdinal(”姓名")));               item。SubItems。Add(reader。GetString(reader。GetOrdinal(”性别")));                item.SubItems.Add(reader.GetDouble(reader.GetOrdinal("年龄”)).ToString());                                       item.SubItems.Add(reader。GetString(reader.GetOrdinal("部门”)));                  item。SubItems.Add(reader.GetString(reader。GetOrdinal("职位”)));         item.SubItems.Add(reader.GetDouble(reader。GetOrdinal(”联系电话”)).ToString());                   item.SubItems.Add(reader。GetString(reader。GetOrdinal("住址”))); this.listView1.Items。Add(item);            i = 1;               } if (i == 0)               { MessageBox.Show("没有相关信息!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);           }              }           }        }    } } 2. 通过员工部门查询 图12管理系统管管理员通过查询员工部门查询 核心代码: if (comboBox1 .Text == "”)   { MessageBox。Show("部门不能为空!", ”提示信息", MessageBoxButtons.OK, MessageBoxIcon。Information);    } else       { using (OleDbConnection conn = newOleDbConnection(mian。conStr))            { this。listView1。Items。Clear();         conn。Open(); using (OleDbCommand cmd = conn.CreateCommand())       {                   cmd.CommandText = ”select * from Yuangong where 部门=@bumen ";      cmd.Parameters。Clear();        cmd.Parameters.Add(newOleDbParameter("@bumen", comboBox1 。Text)); using (OleDbDataReader reader = cmd.ExecuteReader())             { int i = 0; while (reader.Read())               { ListViewItem item = newListViewItem(reader.GetString (reader.GetOrdinal("员工号")));                item.SubItems.Add(reader.GetString(reader。GetOrdinal("姓名")));              item.SubItems.Add(reader.GetString(reader。GetOrdinal("性别”)));              item.SubItems。Add(reader。GetDouble(reader.GetOrdinal(”年龄"))。ToString());                                item.SubItems.Add(reader。GetString(reader.GetOrdinal("部门")));                item.SubItems。Add(reader.GetString(reader。GetOrdinal("职位")));                item。SubItems.Add(reader.GetDouble(reader.GetOrdinal(”联系电话")).ToString());               item.SubItems.Add(reader。GetString(reader.GetOrdinal("住址"))); this。listView1.Items.Add(item);            i=1;            } if (i == 0)         { MessageBox.Show("没有相关信息!", ”提示信息”, MessageBoxButtons.OK, MessageBoxIcon.Information);                 }            }           }   }      } 企业员工信息管理系统管理员添加员工信息界面 图13管理系统管理员添加员工信息界面 对新增员工的添加,实现在数据库中数据的增加。 效果图: 核心代码: if (textBox1。Text == ”" || textBox2.Text == ”” || textBox3.Text == ”" || textBox4.Text == ”" || textBox5.Text == "" || comboBox3 。Text =="" || comboBox1。Text == "” || comboBox2.Text == "")         { MessageBox.Show("信息不完整,请补充完整!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);       } else    { using (OleDbConnection conn = newOleDbConnection(mian.conStr ))       {         conn.Open(); using (OleDbCommand cmd = conn。CreateCommand())          {              cmd。CommandText = ”select * from Yuangong where 员工号=@num ";        cmd.Parameters.Clear();          cmd.Parameters.Add(newOleDbParameter(”@num", textBox1.Text.Trim())); using (OleDbDataReader reader = cmd.ExecuteReader()) if (reader。Read())             { MessageBox。Show(”员工信息已存,请不要重复添加!", ”提示信息", MessageBoxButtons。OK, MessageBoxIcon。Information);             reader.Close();   conn。Close();               conn。Dispose();                 cmd.Parameters。Clear();                    cmd.Dispose();                   textBox1.Text = "”;           textBox2。Text = "";             textBox3.Text = "”;                textBox4.Text = "";                   textBox5。Text = "";                               comboBox1。Text = ”人事部”;             comboBox2。Text = "普通员工”;                 comboBox3。Text = ”男";              } else                { if (MessageBox.Show("是否添加员工信息”, "提示信息”, MessageBoxButtons.YesNo  ,MessageBoxIcon.Question)==DialogResult.Yes)                    {                 reader.Close();                cmd。CommandText = ”insert into Yuangong(员工号,姓名,性别,年龄,部门,职位,联系电话,住址) values(@mun,@name,@sex,@age,@bumen,@zhiwei,@phone,@address)";                      cmd
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服