免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
兰州理工大学(甘肃石化工业技师学院教学站)毕业设计(论文)题目: 设备信息管理系统设计姓 名: 学 号: 100806302128 专 业: 10届计算机信息管理 指导教师: 日 期: 2012. 6. 21 摘 要信息管理与信息系统专业是由1998年教育部颁布的普通高等学校本科专业目录中的科技信息、经济信息管理、信息学、管理信息系统和林业信息管理等 5个背景专业整合而成的一个新专业,1999年正式招生。通过整合的方式将若干个覆盖面过于狭窄的专业合并成一个覆盖面比较宽泛的专业是我国在信息化建设过程中发生于教育领域里的一项重要改革举措,对于培养适合我国信息化建设需要的“宽口径、厚基础、高素质”的人才具有深远的意义。经过多年的建设,该专业为我国信息化建设培养了大量的既懂信息技术又通管理的人才。从1999年开始,信息管理与信息系统这个专业得到了迅速的发展,为我国信息化建设培养了众多优秀的专业人才。在信息管理与信息系统专业设置上,各高校强调管理、经济、计算机等多学科的综合和交叉。这个专业的毕业生除了要具有现代管理学和信息科学技术的基础知识和应用能力外,还要系统掌握信息管理、信息系统的理论和技能。现在无论是国际上或是国内已取得一致共识:信息管理与信息系统这个专业属于管理类专业,毕业生颁发管理学学位。信息管理和信息系统专业的主要研究内容就是计算机科学技术在经济、管理中的应用。信息管理和信息系统专业不同于计算机科学与技术专业。相比之下,前者研究的对象是一个组织及计算机信息系统,更强调信息的组织与管理,也强调计算机技术,但计算机技术只是辅助性工具,而后者侧重于过程和程序设计。信息管理和信息系统专业的特点是具有综合性、新颖性、实践性。从传统的学科分类体系看,这个专业确实有点杂,但这正是它的特色与生命力所在。当今时代变化快,理论研究与学科建设不得不追着实践跑步前进,因此信息管理与信息系统专业是一个管理学与计算机科学交叉的专业,具有强大生命力。随着我国信息技术的高速发展,通过最大限度的利用现代计算机信息技术加强企业的信息管理,通过对企业事业单位拥有的人力、物力、财力、设备、技术等资源的调查了解,建立正确的数据,加工处理并编制成各种信息资料及时提供给管理人员,以便进行正确的决策,不断提高管理水平和经济效益,使信息管理朝着高效、快速、无纸化的方向发展。随着学校不断的建设,以往网络设备的手工管理模式已越来越体现出问题与不足,由于设备的购入、使用及报废的情况比较频繁,到开展资产登记或者监察时,有时难以做到帐物相符,要想做到随时查询某一台设备在哪里则更是一件困难的事。因此,为了加强网络建设,充分掌握设备的利用率,有必要编写了一套设备信息管理系统。开发一个功能实用、操作方便,简单明了的设备信息管理系统,能够录入设备的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询,实现设备管理信息化,提高使用效率。本系统针对学院的网络设备管理业务,同时考虑到开发成本和安全性问题,采用microsoft visual studio 2008作为开发工具,使用c#语言编写,采用microsoft sql 2005作为后台数据库,充分满足业务需求。关键字:设备信息管理系统; visual studio 2008; c#; sql server 2005 目录一、绪论4(一)项目背景4(二)项目目标4二、需求分析4(一)系统需求4(二)功能需求5(三)性能需求5三、总体设计6(一)设计思想和处理流程6(二)系统层次模块图6(三)模块设计7四、数据库设计8(一)概念设计8(二)逻辑设计12(三)建库脚本14五、详细设计16(一)基础类设计16(二)登录模块设计41(三)主窗体模块设计43(四)基本信息管理模块设计60(五)设备管理模块设计66(六)系统管理模块设计72六、系统维护和改进79(一)调试情况79(二)运行和维护79(三)系统的优缺点79七、总结81八、附录:参考文献82九、 致谢83设备信息管理系统设计一、 绪论(一) 项目背景随着我国信息技术的高速发展,通过最大限度的利用现代计算机信息技术加强企业的信息管理,通过对企业事业单位拥有的人力、物力、财力、设备、技术等资源的调查了解,建立正确的数据,加工处理并编制成各种信息资料及时提供给管理人员,以便进行正确的决策,不断提高管理水平和经济效益,使信息管理朝着高效、快速、无纸化的方向发展。随着学校不断的建设,以往网络设备的手工管理模式已越来越体现出问题与不足,由于设备的购入、使用及报废的情况比较频繁,到开展资产登记或者监察时,有时难以做到帐物相符,要想做到随时查询某一台设备在哪里则更是一件困难的事。因此,为了加强网络建设,充分掌握设备的利用率,有必要编写了一套网络设备管理信息系统。开发一个功能实用、操作方便,简单明了的网络设备管理信息系统,能够录入设备的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询,实现设备管理信息化,提高使用效率。网络设备管理信息系统是实现网络设备管理信息化的重要方向。目前流行的设备管理系统不少,但是从专门针对网络设备管理来看,不需管理得那么宽泛。对于我校网络管理中心人员而言,只需要一个操作方便,功能实用,能满足本中心对网络设备使用进行信息管理的系统。(二) 项目目标以学校的设备信息管理为依托,结合信息化技术,设计并开发一个设备信息管理系统,提供一个信息更新便捷、管理方便、功能设置合理的设备信息管理解决方案。针对网络中心大量的设备信息,就设备管理的几个方面,提供一个功能操作方便、功能实用,能满足网络中心对网络设备使用进行信息管理的系统平台。本系统目标如下:1. 通过设备信息管理系统的实现,使网络中心的设备信息管理更加科学化。2. 提供灵活、方便的操作。3. 节约设备信息管理的成本,提高网络管理的效率。4. 对系统提供必要的权限管理。5. 为学校考核部门工作和设备资产登记提供必要的数据支持。二、 需求分析(一) 系统需求在我院网络中心中,设备信息管理的主要内容包括设备登记和记录设备运行状态。设备信息管理的传统管理主要包括新进设备的档案管理、运行中的设备管理档案、存库中的设备管理档案、设备使用地点和存库地点档案管理。在实际管理工作中,由于设备类别和各位网络管理员的分工负责的那一块工作不同,因此在实际设备管理工作中,往往会遇到很大的问题。本提供设备管理相关的设备的编号、名称、类别、增加方式、登记日期、出厂日期、使用情况、存放地点、使用部门、保管人员的查询。(二) 功能需求根据上述的信息管理系统的业务流程、要求以及所需实现的目标,我们可以拟出以下需求目标:1. 建立设备信息档案的管理和维护,实现计算机自动化管理体制。2. 建立设备运行状态、使用状态信息,在计算机的支持下快速的完成设备运行信息的查询和修改。3. 建立设备使用部门和责任人的信息,在计算机的支持下快熟的完成设备使用信息的查询和修改。4. 实现系统的权限设置管理,保证系统的安全性。5. 实现数据库使用可调整性,保证系统使用的灵活。根据系统的需求分析,得到本系统的功能需求如下:1. 设备基本信息的管理:设备信息中,很多属性是可以设置成一样的,可以根据情况在添加更改设备信息前,设置设备类别、设备名称、增加方式、使用情况、使用部门、存放地点、保管人员信息。2. 对设备建立编号:在设备的管理中,对设备进行编号,可以保证设备和设备档案的一一对应,因为在网络中心,同一厂商同一型号的设备有很多。通过条码打印机按设备编号为每天设备做一个身份标签。3. 设备信息的添加、修改和删除:添加设备信息,修改设备使用情况、使用部门、存放地点、保管人员信息,对错误的设备信息进行修改和删除。4. 权限管理:为了很好地保证系统的安全性,系统根据相关责任人设置不同类型的人员的权限。(三) 性能需求系统的运行对于运行环境的要求是:1. 硬件环境:目前,所开发的系统主要应用在办公电脑上面,因此,一般配置的计算机硬件就可以满足系统需求。考虑到学校规模的扩大和硬件价格的降低,为本系统配置在较优秀的服务器硬件上,可以充分发挥本系统的性能。l 处理器:intel(r)celeron(r)cpu2.00ghz或者更高l 内存:512mb(推荐)l 硬盘空间:40gl 显卡:svga显示适配器以上2. 软件环境:l 操作系统:windows xp/ windows vista/windows 7l 开发软件:microsoft visual studio 2008l 数据库:microsoft sql server 2000 /microsoft sql server 2005三、 总体设计(一) 设计思想和处理流程本系统采用面向对象方法进行分析和设计,在sql server 2005 或者sql server2000数据库操作。使用面向对象的c#语言作为开发语言,开发中使用了windows xp和windows 7作为开发平台,能够很好的实现系统的开发及测试。系统的基本流程是:用户登录主界面选择各项子系统(如图3-1所示)。图3-1 系统流程图(二) 系统层次模块图“设备信息管理系统”主要分为登录、设备分类、基本资料、设备编号规则、选择显示列、设备添加、设备更新、设备删除、添加用户、用户管理、密码修改、设备信息查询等11个模块。系统主模块功能树如图3-2所示。图3-2 系统层次模块图(三) 模块设计1. 登录模块输入用户的名称和密码,如果用户名、密码正确,进入主控制平台;否则给出错误信息提示。2. 主窗体模块(1) 通过选择菜单进入各项子模块,并且验证用户是否有权限访问这些子模块。(2) 在主窗体显示设备信息。(3) 用户可以根据多种条件查询设备信息,查询简便快捷。3. 基本信息管理模块(1) 设备分类子模块:用户可以添加删除修改设备分类信息。(2) 基本资料设置子模块:用户可以添加删除设备的基本资料,如设备名称、增加方式、使用部门、使用情况、存放地点、保管人员信息。(3) 设备编号规则设置子模块:用户可以修改设备的标号规则,系统会根据编号规则自动设置设备的编号。4. 设备管理模块(1) 添加设备信息子模块:用户通过添加信息窗体填写设备信息,点击添加按钮后,会自动添加设备信息。(2) 更新设备信息子模块:用户可以通过修改设备信息窗体修改设备信息,点击保存后,会更新设备信息。(3) 删除设备信息子模块:用户可以删除选定的设备信息。5. 系统维护模块(1) 修改密码子模块:登录用户可以随时修改自己的密码,保证密码的有效性和保密性。(2) 添加用户子模块:超级账户admin可以添加管理员,填写管理员信息和选择管理员类型后即可添加新管理员。(3) 用户管理子模块:超级账户admin可以修改和删除管理员,包括修改管理员的密码和管理员类型。四、 数据库设计(一) 概念设计1. 实体描叙系统用户是登录系统的个人资料,用来存放用户的密码等信息。设备实体对应管理系统中的设备资料,用来存放设备的基本信息和使用信息。名称实体、设备类别实体、增加方式实体、使用部门实体、使用情况实体、存放地点实体、保管人员实体等对应系统设备中的各个具体项目,用来存放设备的各种常用信息。2. 实体属性描叙(1) 系统用户e-r图,如图4-1所示。图4-1 系统用户e-r图(2) 设备信息e-r图,如图4-2所示。图4-2 设备信息e-r图(3) 设备名称e-r图,如图4-3所示。图4-3 设备名称e-r图(4) 设备类别e-r图,如图4-4所示。图4-4 设备类别e-r图(5) 增加方式e-r图,如图4-5所示。图4-5 增加方式e-r图(6) 使用部门e-r图,如图4-6所示。图4-6使用部门e-r图(7) 使用情况e-r图,如图4-7所示。图4-7 使用情况e-r图(8) 存放地点e-r图,如图4-8所示。图4-8 存放地点e-r图(9) 保管人员e-r图,如图4-9所示。图4-9 保管人员e-r图3.整体e-r图,如图4-10所示。图4-10 整体e-r 图(二) 逻辑设计1. 数据库设计数据库名称:设备信息管理系统数据库标识:db_equinfmansys2. 数据库表结构(1) 名称:设备信息表表名称标识:shebei 表。数据来源:设备信息模块进行录入和更新。表4-1 设备信息表字段名是否主键字段类型字段长度是否允许为空备注id是int否bh是varchar50否编号mc否varchar50是名称xh否varchar50是型号sblb否varchar50是设备类别xxpz否varchar50是详细配置sccj否varchar50是生产厂家ccrq否datetime是出厂日期zjfs否varchar50是增加方式sybm否varchar50是使用部门syqk否varchar50是使用情况cfdd否varchar50是存放地点bgry否varchar50是保管人员djrq否datetime是登记日期djr否varchar50是登记人(2) 名称:设备编号规则表表名称标识:sb_bhgz 表。数据来源:设备编号规则设置模块进行录入更新。表4-2设备标号规则表字段名是否主键字段类型字段长度是否允许为空备注id是int否firstno否varchar50是前缀defaultno否int是编号(3) 名称:设备类别表表名称标识:sb_sblb 表。数据来源:设备类别设置模块进行录入更新。表4-3 设备类别表字段名是否主键字段类型字段长度是否允许为空备注id是int否firstid否varchar50是第一idsblb否varchar50是设备类别secondid否varchar50是第二id(4) 名称:设备名称表表名称标识:sb_mc 表。数据来源:设备基本资料模块进行录入和更新。表4-4 设备名称表字段名是否主键字段类型字段长度是否允许为空备注id是int否sbmc否nvchar50是设备类别(5) 名称:增加方式表表名称标识:sb_zjfs 表。数据来源:设备基本资料模块进行录入和更新。表4-5 增加方式表字段名是否主键字段类型字段长度是否允许为空备注id是int否zjfs否nvchar50是增加方式(6) 名称:使用部门表表名称标识:sb_sybm 表。数据来源:设备基本资料模块进行录入和更新。表4-6 使用部门表字段名是否主键字段类型字段长度是否允许为空备注id是int否sybm否nvchar50是使用部门(7) 名称:使用情况表表名称标识:sb_syqk 表。数据来源:设备基本资料模块进行录入和更新。表4-7 使用情况表字段名是否主键字段类型字段长度是否允许为空备注id是int否syqk否nvchar50是使用情况(8) 名称:存放地点表表名称标识:sb_cfdd 表。数据来源:设备基本资料模块进行录入和更新。表4-8 存放地点表字段名是否主键字段类型字段长度是否允许为空备注id是int否cfdd否nvchar50是存放地点(9) 名称:保管人表表名称标识:sb_bgry 表。数据来源:设备基本资料模块进行录入和更新。表4-9 保管人员表字段名是否主键字段类型字段长度是否允许为空备注id是int否bgry否nvchar50是保管人员(10) 名称:设备信息显示表表名称标识:sb_datagridviewlist 表。数据来源:选择显示列模块和保存列间距功能进行更新。表4-10 设备信息显示表字段名是否主键字段类型字段长度是否允许为空备注id是int否bh否smallint是编号tablename否varchar50是表名1filedname否varchar50是字段名1title否varchar50是显示名width否float是宽度visible否bit否显示place否smallint是空间位置(11) 名称:系统管理员表表名称标识:syuser 表。数据来源:系统维护模块进行添加修改删除。表4-11 系统管理员表字段名是否主键字段类型字段长度是否允许为空备注id是int否username否varchar50是用户名userpwd否varchar50是密码userrole否int是类型name否varchar50是姓名(三) 建库脚本建库脚本内容如下:/*create database db_equinfmansys*/beginuse db_equinfmansysendbegincreate table sb_datagridviewlist(id int identity(1,1) not null,bh smallint null,tablename varchar(50) collate chinese_prc_ci_as null,filedname varchar(50) collate chinese_prc_ci_as null,title varchar(50) collate chinese_prc_ci_as null,width float null,visible bit not null,place smallint null, constraint pk_sb_datagridviewlist primary key clustered set ansi_nulls ongoset quoted_identifier ongobegincreate table shebei(id int identity(1,1) not null,bh varchar(50) collate chinese_prc_ci_as not null,mc varchar(50) collate chinese_prc_ci_as null,xh varchar(50) collate chinese_prc_ci_as null,sblb varchar(50) collate chinese_prc_ci_as null,xxpz varchar(200) collate chinese_prc_ci_as null,sccj varchar(50) collate chinese_prc_ci_as null,ccrq datetime null,zjfs varchar(50) collate chinese_prc_ci_as null,sybm varchar(50) collate chinese_prc_ci_as null,syqk varchar(50) collate chinese_prc_ci_as null,cfdd varchar(50) collate chinese_prc_ci_as null,bgry varchar(50) collate chinese_prc_ci_as null,djrq datetime null,djr varchar(20) collate chinese_prc_ci_as null, constraint pk_shebei primary key clustered (id asc,bh asc)on primary) on primaryendinsert into syuser (username,userpwd,userrole) values(admin,123456,0)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(1,sb,bh,编号,80,-1,1)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(2,sb,mc,名称,80,-1,2)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(3,sb,xh,型号,80,-1,3)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(4,sb,sblb,设备类别,80,-1,4)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(5,sb,xxpz,详细配置,80,-1,5)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(6,sb,sccj,生产厂家,80,-1,6)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(7,sb,ccrq,出厂日期,80,-1,7)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(8,sb,zjfs,增加方式,80,-1,8)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(9,sb,sybm,使用部门,80,-1,9)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(10,sb,syqk,使用情况,80,-1,10)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(11,sb,cfdd,存放地点,80,-1,11)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(12,sb,bgry,保管人员,80,-1,12)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(13,sb,djrq,登记日期,80,-1,13)insert into sb_datagridviewlist (bh,tablename,filedname,title,width,visible,place)values(14,sb,djr,登记人,80,-1,14)insert into sb_bhgz(firstno,defaultno) values (wlzx-2010-,10001)insert into sb_sblb(firstid,sblb,secondid) values(-1,所有设备,0)insert into sb_sblb(firstid,sblb,secondid) values(0,设备类别,1)insert into sb_sblb(firstid,sblb,secondid) values(1,服务器,2)insert into sb_sblb(firstid,sblb,secondid) values(1,交换机,2)insert into sb_sblb(firstid,sblb,secondid) values(1,路由器,2)五、 详细设计(一) 基础类设计在一个信息管理系统中,数据是主动的,操作跟随数据,使用面向对象编程语言c#可以很容易的做到软件的重用、提高软件可维护性。根据需要建立了如下基础类库:1. database类,完成一下功能:(1) 建立数据库连接(2) 关闭数据库连接(3) 释放数据库连接资源(4) 传入参数并且转换为sqlparameter类型(5) 执行参数命令文本(无数据库中数据返回)(6) 执行参数命令文本(有返回值)(7) 将命令文本添加到sqldataadapter(8) 将命令文本添加到sqlcommanddatabase类的代码如下:using system;using system.collections.generic;using system.text;using system.data;using system.data.sqlclient;namespace equinfmansys.baseclass class database:idisposable private sqlconnection con; /创建连接对象 equinfmansys.properties.settings proset = new equinfmansys.properties.settings(); #region 打开数据库连接 / / 打开数据库连接. / private void open() if (con = null) con = new sqlconnection(proset.db_equinfmansysconnectionstring ); if (con.state = system.data.connectionstate.closed) con.open(); #endregion #region 关闭连接 / / 关闭数据库连接 / public void close() if (con != null) con.close(); #endregion #region 释放数据库连接资源 / / 释放资源 / public void dispose() / 确认连接是否已经关闭 if (con != null) con.dispose(); con = null; #endregion #region 传入参数并且转换为sqlparameter类型 / / 转换参数 / / 存储过程名称或命令文本 / 参数类型 / 参数大小 / 参数值 / 新的parameter 对象 public sqlparameter makeinparam(string paramname, sqldbtype dbtype, int size, object value) return makeparam(paramname, dbtype, size, parameterdirection.input, value); / / 初始化参数值 / / 存储过程名称或命令文本 / 参数类型 / 参数大小 / 参数方向 / 参数值 / 新的parameter 对象 public sqlparameter makeparam(string paramname, sqldbtype dbtype, int32 size, parameterdirection direction, object value) sqlparameter param; if (size 0) param = new sqlparameter(paramname, dbtype, size); else param = new sqlparameter(paramname, dbtype); param.direction = direction; if (!(direction = parameterdirection.output & value = null) param.value = value; return param; #endregion #region 执行参数命令文本(无数据库中数据返回) / / 执行命令 / / 命令文本 / 参数对象 / public int runproc(string procname, sqlparameter prams) sqlcommand cmd = createcommand(procname, prams); cmd.executenonquery(); this.close(); /得到执行成功返回值 return (int)cmd.parametersreturnvalue.value; / / 直接执行sql语句 / / 命令文本 / public int runproc(string procname) this.open(); sqlcommand cmd = new sqlcommand(procname, con); cmd.executenonquery(); this.close(); return 1; #endregion #region 执行参数命令文本(有返回值) / / 执行查询命令文本,并且返回dataset数据集 / / 命令文本 / 参数对象 / 数据表名称 / public dataset runprocreturn(string procname, sqlparameter prams, string tbname) sqldataadapter dap = createdataadaper(procname, prams); dataset ds = new dataset(); dap.fill(ds, tbname); this.close(); /得到执行成功返回值 return ds; / / 执行命令文本,并且返回dataset数据集 / / 命令文本 / 数据表名称 / dataset public dataset runprocreturn(string procname, string tbname) sqldataadapter dap = createdataadaper(procname, null); dataset ds = new dataset(); dap.fill(ds, tbname); this.close(); /得到执行成功返回值 return ds; #endregion #region 将命令文本添加到sqldataadapter / / 创建一个sqldataadapter对象以此来执行命令文本 / / 命令文本 / 参数对象 / private sqldataadapter createdataadaper(string procname, sqlparameter prams) this.open(); sqldataadapter dap = new sqldataadapter(procname, con); dap.selectcommand.commandtype = commandtype.text; /执行类型:命令文本 if (prams != null) foreach (sqlparameter parameter in prams) dap.selectcommand.parameters.add(parameter); /加入返回参数 dap.selectcommand.parameters.add(new sqlparamet
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论