版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录一、概述§1.1 项目背景§1.2 项目目的二 、需求分析§2.1 业务描述§2.2功能需求分析§2.2.1 基本单元管理 § 员工信息管理 § 部门信息管理 § 申请类型管理 § 申请状态管理 § 文化程度管理 § 婚姻状况管理§2.2.2 操作员工管理§2.2.3 申请信息管理§2.3 性能需求§2.3.1 硬件要求§2.3.2 软件要求三、系统
2、功能模块划分§3.1系统模块设计四、.数据库设计§4.1实体和部分属性图(ER图)§4.2数据库关系设计五、详细设计§5.1登录模块设计§5.2主界面模块设计§5.3基础单元设置模块设计§5.4操作员工模块设计§5.5申请信息管理模块设计§5.6系统维护模块设计§5.7打印模块设计六、总结七、问题汇总八、参考文献九、使用说明书一、 概述§1.1 项目背景某公司进行工作业务管理电子化,该公司有多个部门,每个部门有多个人员。有许多业务要进行审核、批准、督办、检查的工作。为了对每个流程进行监
3、督而设计本系统。§1.2 项目目的公司业务管理系统是对其公司的业务信息进行管理,它主要功能包括基础单元管理、操作员工管理、申请管理等。基础单元管理包括员工信息管理、部门管理、申请类型管理、申请状态管理、文化程度管理、以及婚姻状况管理等信息管理;申请管理包抱申请信息的添加(提交)、删除、查询、审批、打印、导出等操作。二、 需求分析§2.1 业务描述某公司员工可以通过“增加申请”来提交各种申请信息,如请假或者购买设备等等。然后需要经过一级审批和二级审批。其中二级审批是最后的审核过程。一级审批和二级审批是通过权力值的大小来分配审核权的。§2.2 功能需求分析§
4、2.2.1基本单元管理 § 员工信息管理 添加员工信息 修改员工信息 删除员工信息 查询员工信息 员工信息预览,打印和导出§ 部门管理 添加部门信息 修改部门信息 删除部门信息 查询部门信息§ 申请类型管理 添加申请类型 修改申请类型 删除申请类型 查询申请类型§ 申请状态管理添加申请状态 修改申请状态 删除申请状态 查询申请状态§ 文化程度管理添加文化程度 修改文化程度 删除文化程度 查询文化程度§ 婚姻状况管理添加婚姻状况修改婚姻状况 删除婚姻状况
5、 查询婚姻状况§2.2.2 操作员工管理添加操作员工 修改操作员工 删除操作员工 查询操作员工§2.2.3 申请管理提交申请信息 删除申请信息 查询申请信息 审批申请信息申请信息预览,打印和导出§2.3性能需求§2.3.1硬件要求 处理器: 1.6GHz或更高 内存大小:384M 或更高 硬件空间:20G以上§2.3.2;软件要求 操作系统:Windons 2000或Windows XP 数据库:Microsoft Server 2000 运行环境配置:Microsoft Visual Studio 2008,Microsoft Server
6、2000 开发语言:C#三、 系统功能模块划分§3.1系统模块设计公 司 业 务 管 理 系 统基础单元管理操作员工管理申请信息管理员工信息管理部门信息管理申请类型管理申请状态管理婚姻状况管理基 础 单 元 管 理员 工 信 息 管 理查询员工信息增加员工信息修改员工信息删除员工信息图3.1.1 总体设计图3.1.2 基础单元管理文化程度管理打印员工信息导出员工信息部 门 信 息 管 理查询部门信息增加部门信息修改部门信息删除部门信息申 请 类 型 管 理查询申请类型增加申请类型删除申请类型查询申请类型申 请 状 态 管 理查询申请状态增加申请状态修改申请状态删除申请状态图3.1.4
7、 部门信息管理图3.1.5 申请类型管理图3.1.6 申请状态管理文 化 程 度 管 理查询文化程度增加文化程度删除文化程度婚 姻 状 况 管 理修改婚姻状况查询婚姻状况操 作 员 工 管 理查询操作员工图 3.1.7 文化程度管理图 3.1.8 婚姻状况管理图 3.1.9 操作员工管理修改文化程度删除婚姻状况增加婚姻状况删除操作员工增加操作员工修改操作员工申 请 信 息 管 理 查询申请信息图 3.1.10 申请信息管理删除申请信息增加申请信息打印申请信息导出申请信息修改审批信息四、 数据库设计§4.1实体和部分属性图员工性别工作证号图4.1 实体和部分属性图姓名婚姻状况名教育程度
8、名出生日期关系婚姻状况教育程度关系婚姻状况编号教育程度编号1111§4.2数据库关系设计审核表 婚姻状况表用户登录表部门表教育程度表员工表申请类型表审批人表申请状态表 图4.2.1关 系 表五、 详细设计§5.1登录模块设计通过此登录界面的认可,才能够进入公司业务管理系统。正确的执行业务管理的功能。对应的登录界面如图5.1.1所示。图5.1.1 登陆界面在此窗口中公司操作员工必须输入正确的用户名和密码,才能进入系统主界面。如下是登录界面的部分源代码:public partial class Login : Form SqlConnection conn; public Lo
9、gin() InitializeComponent(); private int count = 0; private void btn_LG_OK_Click(object sender, EventArgs e) try string conStr = Properties.Settings.Default.workFlowConnectionString; conn = new SqlConnection(conStr); conn.Open(); SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = "Select
10、OperName,OperPassword From Operator Where OperName = '" + this.txt_LG_OperName.Text +"' AND OperPassword='" + this.txt_LG_Password.Text + "'" SqlDataReader reader = cmd.ExecuteReader(); if (reader.HasRows) this.DialogResult = DialogResult.OK; else MessageBox.
11、Show("用户名或密码错误!","登录失败",MessageBoxButtons.OK,MessageBoxIcon.Exclamation); count+; if (count>2) count = 0; MessageBox.Show("尝试登录已达到3次!程序退出!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information); this.Close(); reader.Close(); catch (Exception ex) MessageBo
12、x.Show(ex.Message); private void btn_LG_Cancel_Click(object sender, EventArgs e) Application.Exit(); §5.2主界面模块设计在系统主界面中,可以选择此系统的各种设置管理,包括:员工信息管理、部门信息管理、操作员工管理、申请信息管理、信息打印,导出等功能。如下图5.2.1所示,在该系统中,主要包括如下几个功能。图5.2.1 系统主界面部分源代码:public partial class Form1 : Form public Form1() InitializeComponent();
13、private void 基础设置ToolStripMenuItem_Click(object sender, EventArgs e) base_setting bs = new base_setting(); bs.ShowDialog(); private void 申请查询与管理ToolStripMenuItem_Click(object sender, EventArgs e) apply_Manage am = new apply_Manage(); am.ShowDialog(); private void 操作员工设置ToolStripMenuItem_Click(object
14、 sender, EventArgs e) operator_setting op = new operator_setting(); op.ShowDialog(); private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) Application.Exit(); §5.3基础单元设置模块设计基础单元设置是对该公司的员工信息,部门信息进行管理,还有申请类型,申请状态,婚姻状况,教育程度的设置。其界面如图5.3.1所示。图5.3.1 基础单元设置界面部分源代码:public partial class bas
15、e_setting : Form private SqlConnection conn; DataSet ds2; /获得DataTable数据以使得与更新完后的数据库同步 public DataTable GetTableData(string cmdStr) DataTable dt = new DataTable(); SqlDataAdapter da = new SqlDataAdapter(cmdStr, conn); da.Fill(dt); return dt; /更新员工信息表 public void PeoTableUpdate() ds2 = new DataSet();
16、 SqlDataAdapter da = new SqlDataAdapter("select PeopleID as '工作证号',PeopleName as '姓名',DepartName as '部门',PeopleSex as '性别',EducationName as '文化程度',MarriageName as '婚姻状况',Birthday as '出生日期' from People,Department,Marriage,Education where Pe
17、ople.DepartID=Department.DepartID and People.MarriageID=Marriage.MarriageID and People.EducationID=Education.EducationID", conn); da.Fill(ds2); this.dataGridView1.DataSource = ds2.Tables0; /初始化Treeview,员工信息表,部门表,申请类型等等.表里的数据 public base_setting() InitializeComponent(); string conStr = Propertie
18、s.Settings.Default.workFlowConnectionString; conn = new SqlConnection(conStr); /打开DB连接 conn.Open(); Init_TreeView(); Init_dgw_People(); Init_dgw_Department(); Init_dgw_Event(); Init_dgw_Status(); Init_dgw_Education(); Init_dgw_Marriage(); /单击treeview控件某个部门,在DataGridView中显示选中部门的员工信息内容 private void tr
19、eeView1_AfterSelect(object sender, TreeViewEventArgs e) /单击treeview控件某个部门,在DataGridView中显示选中部门的信息内容 string str = e.Node.Text; if (str = "所有部门") ds2 = new DataSet(); SqlDataAdapter da = new SqlDataAdapter("select PeopleID as '工作证号',PeopleName as '姓名',DepartName as '
20、部门',PeopleSex as '性别',MarriageName as '婚姻状况',EducationName as '文化程度',Birthday as '出生日期' from People,Department,Marriage,Education where People.DepartID=Department.DepartID and People.MarriageID=Marriage.MarriageID and People.EducationID=Education.EducationID"
21、, conn); da.Fill(ds2); this.dataGridView1.AutoGenerateColumns = true; this.dataGridView1.DataSource = ds2.Tables0; else string strSQL = "select PeopleID as '工作证号',PeopleName as '姓名',DepartName as '部门',PeopleSex as '性别',MarriageName as '婚姻状况',EducationName
22、 as '文化程度',Birthday as '出生日期' from People,Department,Marriage,Education where People.DepartID=Department.DepartID and People.MarriageID=Marriage.MarriageID and People.EducationID=Education.EducationID AND'" + str + "'=DepartName" ds2 = new DataSet(); SqlDataAda
23、pter da = new SqlDataAdapter(strSQL, conn); da.Fill(ds2); this.dataGridView1.AutoGenerateColumns = true; this.dataGridView1.DataSource = ds2.Tables0; /初始化Treeview中的数据 private void Init_TreeView() SqlCommand cmd = new SqlCommand("select DepartName from Department", conn); /使用While设置一个循环 /先设
24、置父节点的名称: TreeNode tn = treeView1.Nodes.Add("所有部门"); SqlDataReader sdr = cmd.ExecuteReader(); while (sdr.Read() tn.Nodes.Add(sdr"DepartName".ToString(); sdr.Close(); treeView1.ExpandAll(); /初始化dgw中的员工信息 private void Init_dgw_People() ds2 = new DataSet(); SqlDataAdapter da = new Sq
25、lDataAdapter("select PeopleID as '工作证号',PeopleName as '姓名',DepartName as '部门',PeopleSex as '性别',EducationName as '文化程度',MarriageName as '婚姻状况',Birthday as '出生日期' from People,Department,Marriage,Education where People.DepartID=Department.De
26、partID and People.MarriageID=Marriage.MarriageID and People.EducationID=Education.EducationID", conn); da.Fill(ds2); this.dataGridView1.AutoGenerateColumns = true; this.dataGridView1.DataSource = ds2.Tables0; /ds.Clear(); §5.4 操作员工管理模块设计操作员工管理是对登录该管理系统的用户进行管理的。主要功能有用户名和密码的添加、删除、修改、查询等。其界面如
27、图 5.4.1所示。图5.4.1 操作员工管理界面主要功能代码有: /增加Operator用户 private void toolStripButton1_Click(object sender, EventArgs e) try if (this.txt_OperID.Text = "") MessageBox.Show("请输入编号!", "信息提示"); clearTextBox(); return; string addStr = "Insert into Operator(OperID,OperName,OperP
28、assword) Values(OperID,OperName,OperPassword)" /创建一个与Connection关联的Command SqlCommand cmd = new SqlCommand(addStr, conn); cmd.Parameters.Add(new SqlParameter("OperID", this.txt_OperID.Text); cmd.Parameters.Add(new SqlParameter("OperName", this.txt_OperName.Text); cmd.Paramete
29、rs.Add(new SqlParameter("OperPassword", this.txt_Password.Text); /cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); this.dataGridView1.DataSource = Update_dgv_Operator("select OperID as '编号',OperName as '用户名',OperPassword as '密码' from Operator");
30、clearTextBox(); catch (Exception ex) MessageBox.Show("该编号已存在!"); /MessageBox.Show(ex.Message); clearTextBox(); /删除Operator用户 private void toolStripButton2_Click(object sender, EventArgs e) try if (this.txt_OperID.Text = "") MessageBox.Show("请选择要删除的编号!", "信息提示"
31、); clearTextBox(); return; if (MessageBox.Show("确定要删除该用户吗?", "信息提示", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) = DialogResult.Yes) string deleStr = "delete from Operator where OperID=" + this.txt_OperID.Text; SqlCommand cmd = conn.CreateCommand(); cmd.Command
32、Type = CommandType.Text; cmd.CommandText = deleStr; cmd.ExecuteNonQuery(); this.dataGridView1.DataSource = Update_dgv_Operator("select OperID as '编号',OperName as '用户名',OperPassword as '密码' from Operator"); clearTextBox(); catch (Exception ex) MessageBox.Show(ex.Mess
33、age); clearTextBox(); /修改Operator private void toolStripButton3_Click(object sender, EventArgs e) try if (this.txt_OperID.Text = "") MessageBox.Show("请选择要修改的编号!", "信息提示"); clearTextBox(); return; string updateStr = "update Operator set OperID ='" + this.tx
34、t_OperID.Text + "',OperName ='" + this.txt_OperName.Text + "',OperPassword ='" + this.txt_Password.Text + "'" + "where OperID=" + this.dataGridView1.CurrentRow.Cells0.Value.ToString(); SqlCommand cmd = new SqlCommand(updateStr, conn); cmd.E
35、xecuteNonQuery(); this.dataGridView1.DataSource = Update_dgv_Operator("select OperID as '编号',OperName as '用户名',OperPassword as '密码' from Operator"); clearTextBox(); catch (Exception ex) MessageBox.Show(ex.Message); §5.5 申请信息管理模块设计申请信息管理是该公司的主要管理功能,是对公司业务的管理,如请假
36、,购买设备等等的申请提交,然后通过一级,二级审批完成整个公司业务的流程,审批信息可以打印出来或者导出到Excel中。其中审批需要相应的审批权限。申请信息管理系统就是为了这一目的设计的。界面如图5.5.1所示。图5.5.1 申请管理界面主要代码: private void toolStripButton1_Click(object sender, EventArgs e) apply_Add AA = new apply_Add(this); AA.ShowDialog(); /删除申请信息记录 private void toolStripButton2_Click(object sender,
37、 EventArgs e) if (this.dataGridView1.CurrentRow.Cells0.Value.ToString() != "") if (MessageBox.Show("确定要删除该记录?", "信息提示", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) = DialogResult.Yes) string deleStr = "DELETE FROM Step WHERE StepID=" + this.dataGridVi
38、ew1.CurrentRow.Cells0.Value.ToString().Trim(); SqlCommand cmd = new SqlCommand(deleStr, conn); cmd.ExecuteNonQuery(); apply_manage_Update(); /申请信息打印预览 private void toolStripButton5_Click(object sender, EventArgs e) printPreviewDialog1.Document = this.printDocument1; printPreviewDialog1.ShowDialog();
39、 /申请信息打印 private void toolStripButton6_Click(object sender, EventArgs e) printDialog1.ShowDialog(); /申请信息打印文本内容与格式 private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) int r = 0; int c = 20; e.Graphics.DrawString("打印日期:" + DateTime.Now.ToShortD
40、ateString(), new Font("宋体", 8, FontStyle.Italic), Brushes.Black, r, c); r = 200; c += 20; e.Graphics.DrawString("申请信息统计表" , new Font("宋体", 20, FontStyle.Bold), Brushes.Black, r, c); r = 0; c += 40; for (int l = 0; l < ds.Tables0.Columns.Count; l+) e.Graphics.DrawStri
41、ng(ds.Tables0.Columnsl.ToString(), new Font("宋体", 10, FontStyle.Bold), Brushes.Black, r, c); r = r + 80; r = 0; c += 20; for (int i = 0; i < ds.Tables0.Rows.Count; i+) for (int j = 0; j < ds.Tables0.Columns.Count; j+) e.Graphics.DrawString(ds.Tables0.Rowsij.ToString(), new Font("
42、;宋体", 10, FontStyle.Regular), Brushes.Black, r, c); r = r + 80; r = 0; c += 20; /另存新档按钮,导出数据到Excel中。用流保存成xls文件。 private void toolStripButton7_Click(object sender, EventArgs e) saveFileDialog1.Filter = "Execl files (*.xls)|*.xls" saveFileDialog1.FilterIndex = 0; saveFileDialog1.Restore
43、Directory = true; saveFileDialog1.CreatePrompt = true; saveFileDialog1.Title = "Export Excel File To" if (saveFileDialog1.ShowDialog() = DialogResult.OK) Stream myStream; myStream = saveFileDialog1.OpenFile(); StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0); /StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312"); string str = "" try for (int i = 0; i < this.dataGridView1.ColumnCount; i+) if (i > 0) str += "t" str += this.dataGridView1.Columnsi.He
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小型污水处理设备采购方案
- 2024年产品宣传合作协议范本
- 全品牌授权合同
- 婚宴布置服务合同
- 小学学生创新能力提升方案
- 企业投资发展协议
- 2024年室内装修设计服务协议范本
- 2024年建筑机械租赁及承包协议样本
- 城市建设新项目启动仪式方案
- 借壳上市评估报告协议
- 零工市场(驿站)运营管理投标方案(技术方案)
- 2024-2025学年小学信息技术(信息科技)四年级下册浙教版(2023)教学设计合集
- 旅游纸质合同模板
- 2024年新人教版三年级数学上册《教材练习12练习十二(附答案)》教学课件
- 全国食品安全宣传周诚信尚俭共享食安食品安全课件
- 部编版五年级上册快乐读书吧练习题含答案
- 飞机维修计划与调度管理考核试卷
- 2024年石家庄市长安区四年级数学第一学期期末复习检测试题含解析
- 2024年中小学“1530”安全教育实施方案
- 生猪屠宰兽医卫生人员考试题库答案(414道)
- 2024-2030年中国高纯锗 (HPGE) 辐射探测器行业运营前景及发展现状调研报告
评论
0/150
提交评论