高校特种设备管理系统说明

摘要

    特种设备是指涉及生命安全、危险性较大的锅炉、压力容器(含气瓶)、电梯、起重机械、大型游乐设施等八大类设备,高校中特种设备主要包括电梯、起重机、压力容器、安全附件这几类。特种设备在使用过程中需要严格按照安全流程操作并进行规范管理,由于特种设备本身特性和管理流程的复杂性,使得特种设备在使用过程中存在很多安全隐患,事故频繁发生。因此,实现管理的规范化、高效化显得尤为重要,利用计算机对特种设备进行管理,实现数字化信息管理就必然成为一种趋势。在此背景下,本文设计并实现了一套用于管理高校中特种设备的系统。

    本文所设计的是一套基于.NET平台的高校特种设备管理系统,该系统采用C/S构架模型,Microsoft Visual Studio 2008中的C#作为开发语言,Microsoft SQL Server 2000作为数据库服务器,采用ADO.NET数据库访问技术,实现了用户管理、特种设备使用管理、维修管理、年检管理等等。

 

    关键词:特种设备,管理系统,ADO.NET,SQL Server 2000,C#

 

第一章、主要内容及实现方案

(1)主要内容

    本次设计是开发一套用于管理高校中存在的特种设备的管理系统,高校中通常包含电梯、起重机、压力容器、安全附件这几类,根据特种设备管理的需求分析,设计并实现如下所述功能的系统:

1.用户管理功能,包括用户注册和登录功能;

2.新购特种设备注册管理功能;

3.特种设备使用管理功能;

4.特种设备维护保养管理功能;

5.特种设备维修管理功能;

6.特种设备年检管理功能;

7.特种设备报废管理功能。

(2)实现方案

    本系统将采用面向对象方法进行分析和设计,考虑到开发成本和安全性问题,本系统设计成一个相对封闭的单用户运行的Winform桌面应用程序。该系统采用C/S构架模型,使用Microsoft Visual Studio 2008平台提供的纯面向对象的C#语言作为开发语言,Microsoft SQL Server 2000作为数据库服务器,采用ADO.NET数据库访问技术,其中,ADO.NET中的.NET Framework采用SQL Server.NET数据库提供程序,Windows XP操作系统作为开发平台。系统基本的流程是:用户登录-主界面-选择各项子系统。

 

第二章、系统分析与设计

2.1 系统需求分析

    需求分析是系统设计的第一步,也是必不可少的一步。通过对用户进行调查研究,准确了解用户对系统的需求,并对系统要实现的功能做准确的描述。主要任务:充分了解手工系统对高校中特种设备的管理方式、管理模式,收集涉及到的所有数据信息及处理方法。

2.1.1 业务工作介绍

    学校的特种设备主要包括电梯、起重机械、压力容器这几类,特种设备由于在使用过程中需要严格按照安全流程操作,因此需对高校特种设备进行严格管理,管理系统涉及到特种设备管理员(即系统用户)、特种设备详细信息、维护保养信息、维护保养管理、年检单位信息、年检管理、特种设备操作人员等。

    管理员负责对高校中所有设备进行统一管理,包括设备日常使用情况、维护保养情况、维修情况、年检情况、报废情况等。特种设备使用必须由取得了特种设备操作人员证的人员才可进行,特种设备人员操作证是由质监局统一培训,有独一的证号,有有效日期,超过有效日期的需再次报名参加复审。

    特种设备年检管理:可涉及特种设备自身信息及年检单位信息,特种设备要根据它的特性定期进行年检,像电梯需要一年一检,起重机械需要两年,压力容器分年度检查(一年一检)和全面检查(五年一检)。

    特种设备使用管理,主要是特种设备日常使用和维护保养情况,如设备在使用过程中出现故障,需管理员报修并进行维修,一般由负责该设备维保的专业的维护保养单位维修,也可以由其他单位维修。由于特种设备在使用过程中存在非常大的安全隐患,一些设备需定期检查,在故障出现之前,需对部分零件进行更换,也是由专业的维护保养单位负责。

    高效特种设备管理系统的业务工作流程,如图2-1

高校特种设备管理系统说明_第1张图片

 

 

2.1.2 数据分析

    根据需求分析,对数据进行收集和分析,得出高校特种设备管理系统的数据流。

  • n 管理员 用户名+密码
  • n 特种设备信息 设备编号+设备注册代码+名称+类别+型号+规格+上次检验日期+下次检验日期+购置单价+购置日期+厂家名+出厂号+出厂日期+领用人+存放地名称+领用部门名+领用部门联系电话+操作人员+维护保养单位+年检单位+备注
  • n 设备操作人员 姓名+作业项目+身份证号码+证书编号+所在单位+办证时间+办证有效期+联系电话
  • n 维护保养单位 单位名称+维护保养设备类别+资质+地址+联系电话+联系人
  • n 年检单位 单位名称+检验设备类别+单位地址+联系电话
  • n 设备年检 设备编号+设备注册代码+设备名称+领用部门名+年检单位名称+检验费+检验日期+检验单位联系方式
  • n 设备维修 设备编号+设备注册代码+设备名称+领用部门名+维修项目+故障原因+维修金额+报修日期+报修人

2.1.3 功能实现需求

    本系统需要实现的功能包括,系统用户注册、登录,对新设备进行信息入库,设备损坏时能够对设备进行报修,设备维修后,对已经维修的报修项删除,对设备日常使用的信息进行管理,定期对设备进行年检,填写年检信息,对设备日常的维护保养进行管理,维护保养情况,对不用的设备进行报废等。系统功能图如图2-2所示。

 高校特种设备管理系统说明_第2张图片

 

2.2 系统设计

2.2.1 系统结构

    2-3是本系统结构图,图中除“”退出系统、“报废设备”、“查询设备”外的每一个矩形框图对应一个模块,也就是对应一个界面,因此本系统有9个界面,其中包含两个下拉菜单,命名为“设备管理”、“信息管理”,“设备管理”包含的子菜单有“注册新购设备”、“维修管理”、“年检管理”,“信息管理”包含“设备操作人员”、“维护保养单位”、“年检部门”。

 高校特种设备管理系统说明_第3张图片

 

2.2.2 系统运行环境

1、硬件环境

    本次开发的为中小型信息管理系统,因此,一般配置的计算机硬件就可以满足系统需求,以下举出一种配置。

  • l 处理器:Intel Pentium 4 3.06GX或更高
  • l 内存:256M(推荐)
  • l 硬盘空间:40GB
  • l 显卡:SVGA显示适配器

2、软件环境

  • l 操作系统:Windows XP
  • l 开发环境:Microsoft Visual Studio 2008
  • l 数据库:Microsoft SQL Server 2000

2.2.3 ADO.NET技术

    .NET中数据库访问时通过ADO.NETActive Data Object.NET)完成的,在ADO.NET中,数据处理被延伸到三层以上的结构,只在有必要的时候对数据库进行连接,当处理完毕后将及时关闭连接,保证了数据库服务器资源的可用性,可以为更多用户服务,特别适合网络应用。

ADO.NET的体系结构如图2-4所示。

 

 高校特种设备管理系统说明_第4张图片

    ADO.NET具有的核心组件包括两个:.NET DataProvider数据提供程序和DataSet数据集。.NET DataProvider数据提供程序包括Connection对象、Command对象、DataReader对象、DataAdapter对象。在.NET Framework中常用4组数据提供程序,包括SQL Server.NET Data ProviderOLEDB.NET Data ProviderODBC.NET Data ProviderOracle.NET Data Provider,这四种数据提供程序分别通过不同的接口来访问各自支持的数据库。

    DataSet用来容纳DataProvider传递过来的数据库访问结果,或把应用程序里的业务执行结果更新到数据库中。DataSet是数据内存驻留表示形式,是一个内存驻留的数据库,它与特定的数据库无关。

 

第三章、数据库设计与实现

3.1数据库结构设计

    数据库结构设计的目的:根据需求分析建立系统的概念模型,根据概念模型建立关系模型,对数据进行规范化管理,使数据满足各种范式。

3.1.1概念模型

    根据高校中特种设备管理的需求分析,得出高校特种设备管理系统的概念模型,实体间的关系E-R图,以及实体属性。

1.E-R

    该系统E-R图如图3-1所示,由于部分实体的属性较多,此关系图中省略了实体属性。

 高校特种设备管理系统说明_第5张图片

 

 

2.实体属性

  • u 管理员:用户名、密码
  • u 特种设备:设备编号、设备注册代码、名称、类别、型号、规格、上次检验日期、下次检验日期、购置单价、购置日期、厂家名、出厂号、出厂日期、领用人、存放地名称、领用部门名、领用部门联系电话、备注
  • u 特种设备操作人员:姓名、作业项目、身份证号码、证书编号、所在单位、办证时间、办证有效期、联系电话
  • u 年检部门:单位名称、检验设备类别、单位地址、联系电话
  • 维护保养单位:单位名称、维护保养设备类别、资质、地址、联系电话、联系人

3.1.2关系模型

    E-R图转换成关系模型要解决两个问题:一是如何将实体集合实体间的联系转换为关系模型;二是如何确定这些关系模型的属性和码。

    概念模型转化成关系模型如下:其中直下划线的为主码,波浪下划线为外码。

  • 管理员(ID,用户名,密码);
  • 特种设备(设备编号,设备注册代码,名称,类别,型号,规格,上次检验日期,下次检验日期,操作人员证书编号,维护保养单位名称,购置单价,购置日期,厂家名,出厂号,出厂日期,领用人,存放地名称,领用部门名,领用部门联系电话,备注);
  • 特种设备操作人员(证书编号,姓名,作业项目,身份证号码,所在单位,办证时间,办证有效期,联系电话);
  • 年检部门(单位名称,检验设备类别,单位地址,联系电话);
  • 维护保养单位(单位名称,维护保养设备类别,资质,地址,联系电话,联系人) 维修(设备注册代码,维修项目,故障原因,金额,报修日期);
  • 年检(设备注册代码,检验单位名称,检验费,检验日期)。

3.2数据库详细设计

    数据库详细设计包括创建数据库,创建单表,对表中字段进行命名,数据类型、长度,主外键以及是否为空等信息进行详细的设计,下面来设计本系统的数据库。

    创建名为DBSpecialEquipment数据库

3.2.1表的属性设计

1、表名:T_SystemUser

意义:系统用户

 

属性名

字段名

数据类型

允许空

主、外键

约束条件

ID

ID

int4

主键

自增

用户名

UserName

varchar16

密码

Password

Char8

数字或字母

2、表名:T_SpecialEquipment

意义:特种设备信息

 

属性名

字段名

数据类型

允许空

主、外键

约束条件

设备编号

Number

varchar10

注册代码

RegisterCode

varchar30

主键

名称

EquipmentName

varchar50

类别

Form

varchar20

电梯、起重机…

型号

Model

varchar20

规格

Standard

varchar20

上次检验日期

LastCheckDate

datetime8

下次检验日期

NextCheckDate

datetime8

操作人员证书编号

OperaterCerID

varchar20

外键

维护保养单位名称

MaintainUnitName

varchar30

外键

维保单位表中存在

购置单价

PurchasePrice

money8

厂家名

ManufacName

varchar50

出厂号

LeaveFacNO

varchar20

出厂日期

LeaveFacDate

datetime8

购置日期

PurchaseDate

datetime8

领用人

ReceivePerson

varchar16

存放地名称

StoredName

varchar50

领用部门名

ReceDepartName

varchar30

联系电话

Phone

varchar20

数字

备注

Remarks

varchar50

3、表名:T_EquipmentOperater

意义:设备操作人员信息

 

属性名

字段名

数据类型

允许空

主、外键

约束条件

证书编号

OperaterCerID

varchar20

主键

姓名

OperaterName

varchar16

作业项目

WorkType

varchar30

电梯、起重机…

身份证号码

IDCardNO

varchar20

所在单位

UnitName

varchar50

办证时间

CerHandingDate

datetime8

办证有效期

CerUsefulTime

datetime8

联系电话

Phone

varchar20

数字

4、表名:T_CheckUnit

意义:年检单位信息

 

属性名

字段名

数据类型

允许空

主、外键

约束条件

单位名称

CheckUnitName

varchar100

主键

检验类别

checkType

varchar40

电梯、起重机…

单位地址

Address

varchar100

联系电话

Phone

varchar20

数字

5、表名:T_MaintainUnit

意义:维护保养单位信息

 

属性名

字段名

数据类型

允许空

主、外键

约束条件

单位名称

MaintainUnitName

varchar30

主键

维保设备类别

MaintainType

varchar20

电梯、起重机…

资质

Aptitude

char1

ABC

地址

Address

varchar50

联系电话

Phone

varchar20

数字

联系人

LinkMan

varchar16

6、表名:T_Maintain

意义:维修信息

 

属性名

字段名

数据类型

允许空

主、外键

约束条件

设备注册代码

RegisterCode

varchar30

主键

维修项目

MaintainItems

varchar50

故障原因

BugCause

varchar100

金额

Price

money8

报修日期

PreRepairDate

datetime8

 

7、表名:T_Check

意义:年检信息

 

属性名

字段名

数据类型

允许空

主、外键

约束条件

设备注册代码

RegisterCode

varchar30

主键

检验单位名称

CheckUnitName

varchar30

外键

检验单位表中存在

检验费

CheckPrice

money8

检验时间

CheckDate

datetime8

 

3.2.2表的关系图

    根据主外键、参照表决定了各表之间的联系,表之间关系的建立可以避免由于误操作导致数据库崩溃,可以保证各表之间数据的一致性,满足数据规范中的参照完整性。在数据库中建模后的数据关系图如图3-2所示。

 高校特种设备管理系统说明_第6张图片

 

3.2.3创建视图、存储过程

1、存储过程

    存储过程是在SQL服务器上存储的已经编译的SQL语句组,存储过程在第一次执行的时候要检查语法和编译,编译好的版本存储在过程高速缓存器中供后续调用。假设某用户没有对指定表或视图的使用权限,但它具有使用存储过程的权限,通过执行存储过程,用户仍可以获得对存储过程中的表或视图的使用权。为了方便本系统并未建立很多存储过程,只创建了2个存储过程:

    存储过程名:AddNew_SpecialEquipment 作用:向T_SpecialEquipment表中插入完整字段。

CREATE PROCEDURE AddNew_SpecialEquipment

@Number varchar(10),

@RegisterCode varchar(30),

@EquipmentName varchar(50),

@NextCheckDate datetime,

@OperaterCerID varchar(20),

@MaintainUnitName varchar(30),

@Form varchar(20),

@Standard varchar(20),

@Model varchar(20),

@ManufacName varchar(50),

@PurchaseDate datetime,

@LeaveFacNO varchar(20),

@LeaveFacDate datetime,

@PurchasePrice decimal,

@ReceDepartName varchar(30),

@ReceivePerson varchar(16),

@Phone varchar(20),

@StoredName varchar(50),

@Remarks varchar(50)

AS  insert  into 

T_SpecialEquipment(Number,RegisterCode,EquipmentName,NextCheckDate,

OperaterCerID,MaintainUnitName,Form,Standard,Model,ManufacName,

PurchaseDate,LeaveFacNO,LeaveFacDate,PurchasePrice,ReceDepartName,

ReceivePerson,Phone,StoredName,Remarks)

values (@Number,@RegisterCode,@EquipmentName,@NextCheckDate,

@OperaterCerID,@MaintainUnitName,@Form,@Standard,@Model,@ManufacName,

@PurchaseDate,@LeaveFacNO,@LeaveFacDate,@PurchasePrice,@ReceDepartName,

@ReceivePerson,@Phone,@StoredName,@Remarks)

GO

存储过程名:login_user 作用:根据用户名和密码查询T_SystemUser表中记录,返回记录数。

CREATE PROCEDURE login_user

@UserName varchar(16),

@Password char(8)

 AS

select count(*) from T_SystemUser

where UserName = @UserName and Password = @Password

GO

2、视图

    视图是根据子模式建立的虚拟表,一个视图可以由一个表构造,也可以由多个表连接构成,视图的作用在于,使用户将注意力集中在所关心的数据上,例如我们可以将多个表连接的查询定义成一个视图,视图将表与表之间的连接操作对用户隐蔽起来了,用户看到的和使用的是多表连接起来的虚表。这样做的优点在于:用户既可以使用和操纵所关系的数据,又可以避免接触复杂的数据内部关系。本系统创建的视图如下:

 

 

视图名称

说明

年检单位

T_CheckUnit的视图

特种设备信息

T_SpecialEquipment的视图

维护保养单位

T_MaintainUnit的视图

设备年检信息

T_Check,T_CheckUnit,T_SpecialEquipment三张表连接,查询年检所需的有用信息

设备报修信息

T_EquipmentOperater,T_MaintainUnit,T_Maintain,T_SpecialEquipment四张表连接,查询设备报修所需的有用信息

设备操作人员

T_EquipmentOperater的视图

 

    例如“设备报修信息”视图创建如下:

create view 设备报修信息 (设备编号,设备注册代码,设备名称,领用部门名,维修项目,故障原因,维修金额,报修日期,报修人)

as select 

Number,T_Maintain.RegisterCode,EquipmentName,ReceDepartName,MaintainItems,BugCause,Price,T_Maintain.PreRepairDate,T_EquipmentOperater.OperaterName from T_EquipmentOperater,T_MaintainUnit,T_Maintain,T_SpecialEquipment

where T_SpecialEquipment.RegisterCode = T_Maintain.RegisterCode and T_EquipmentOperater.OperaterCerID = T_SpecialEquipment.OperaterCerID

 

第四章、特种设备管理系统的功能实现

4.1编码规范

1、数据库编程规范:数据库名称以“DB”开头;表名以“T_”开头,如T_SpecialEquipment(特种设备)。字段名称用英文翻译或部分英文缩写,如RegisterCode(注册代码)、LeaveFacNO(出厂号)。

2、代码编程规范:大小写符合C#编程规范,如类、属性等符合Pascal,参数、方法

等符合Camel。控件命名规范如表4-1所示,控件的命名取决该控件的作用,方便调试,不涉及编码的控件取其默认值。

 

控件类型

前缀缩写

控件类型

前缀缩写

TextBox

txt

Button

btn

Label

lbl

Form

GUI

ComboBox

cbo

ListView

lsv

DateTimePicker

date

MenuStrip

mnu

GroupBox

gbx

ToolStripMenuItem

tsm

DataGridView

dgv

4.2数据连接、断开及操纵类SQLHelper

    代码连接:http://blog.csdn.net/abc123abc_123/article/details/9153867

    创建一个“Windows窗体应用程序”项目,命名为SpecialEquipmentManagement。在项目文件里创建一个类,命名为SQLHelper.cs

    连接SQL Server数据库的方法有多种,在不同场合会用到不同的方法,可以通过SqlConnection配置连接,这种方法可以通过把SqlConnection对象添加到窗体上实现;也可以手动编码连接,这种方法连接数据库更节省时间,尤其是当数据库比较多或者程序的窗体比较多时,使用适配器显得有些浪费时间,因此,本系统数据库连接采用手动编码的方式进行连接。

    为了提高代码的复用性、易修改,避免每次访问数据库时都要进行一系列的创建连接对象、Command对象、连接字符串等。本系统封装了一个数据库连接访问类SQlHelper,下面对该类进行简单的介绍:

1、类的构造函数。在构造函数中实例化一个数据库连接对象,创建连接字符串,这样做的目的是,在创建一个SQLHelper对象时就已经建立了与数据库的连接。

2、LastError属性。LastError属性是当数据库连接异常时,最后出现的异常信息。

3、HandleException方法。处理异常的方法,将产生的异常归为四类,SqlExceptionInvalidOperationExceptionDBConcurrencyException和除此三类异常之外的其他异常,并根据这四类不同异常分别对LastError属性赋予相应的异常信息。该方法为静态方法,有一个参数类型为Exception的参数。

4、ExecuteNonQuery方法。执行不返回结果集的SQL语句的方法,该方法参数中有一个待执行的SQl语句和与SQL语句相关的可变参数数组,是静态方法,程序不要求有任何返回值,但在定义此方法时返回了数值类型,用来表示执行当前语句后数据库中被影响的行数,但在程序的调用中可以不返回值,直接调用方法,若目标记录不存在返回0,出错返回-1,产生异常时显示异常信息。

5、ExecSQLByDataSet方法。该方法执行SQl语句,返回DataSet数据集合,参数中有一个待执行的SQl语句和与SQL相关的可变参数数组。该方法的优点是:通过直接调用此方法获得所需的DataSet数据集,而不需要每次都创建SqlDataAdapter对象来进行填充数据,提高了代码的复用性。该方法如出错返回null,出现异常时显示异常信息,为静态方法。

4.3用户注册、登录模块

    在项目文件里添加两个Windows窗体,分别命名为GUISystemUser.csGUIRegisterUser.cs

    本系统的用户没有设置权限,如果将用户设置权限的话也可以,管理员、设备操作人员、年检部门等角色,但考虑到本系统只是一个简单的管理系统,再结合任务要求中有用户注册的模块,所以本系统的用户角色就定义为最高权限,即管理员。

    在界面上添加相应的控件,按编码规范对控件命名,根据数据库表中字段数据长度,设置TextBoxMaxLength属性,限制可输入到此控件的字符数,编写TextBoxKeypress事件来设置输入的字符类型,TextBox中初始化提示信息可结合该控件的MouseDownLeave事件和窗体的Load事件来设计。加载图片到窗体的Backgroundimage属性来设置窗体背景,注意为了使界面美观,将所有Label设置背景透明,如lblUserName.BackColor = System.Drawing.Color.Transparent。点击注册用户按钮,弹出注册用户窗体,点击立即登录按钮,注册界面隐藏,显示登录界面,界面如图4-1所示。

 高校特种设备管理系统说明_第7张图片

 

4.4系统主界面

    在项目文件里添加一个Windows窗体,命名为GUIMain.cs

用户登录后,会显示主界面,主界面主要是特种设备使用的信息,包括全部设备详细信息,根据设备类别查询设备,菜单选项等。

    主界面控件包括三个按钮,分别为按设备类别查询、查询所有设备、报废设备;一个DataGridView,在窗体初始化时显示全部设备详细信息;一个ComboBox,设置DropDownStyle属性为DropDownList,使该控件不允许手动输入值,该控件的下拉列表值是所有设备类别加载进来的,SQL语句为“select distinct(Form) from T_SpecialEquipment”。

    添加一个MenuStrip控件,在此基础上,添加三个ToolStripMenuStrip,分别设置Text属性为“设备管理”、“信息管理”、“退出系统”,“设备管理”菜单的子菜单有“注册新购设备”、“维修管理”、“年检管理”;“信息管理”的子菜单有“特种设备操作人员”、“维护保养单位”、“年检部门”。

    添加一个StatusStrip控件,用于显示状体信息,在用户登录后,会显示用户输入的用户名,以及当前的日期,代码为this.toolStripStatusLabel1.Text = "您好!管理员:" + userName + "    今天是:" + System.DateTime.Now.ToShortDateString()

    为方便编码实现相关控件的功能,所有控件按规范进行命名,主界面效果如图4-2所示。

 高校特种设备管理系统说明_第8张图片

 

 

4.5“设备管理”菜单实现

    添加MenuStrip控件,添加“设备管理”菜单,设备管理菜单下有“注册新购设备”、“维修管理”、“年检管理”;,每个子菜单对应一个界面,单击子菜单会弹出相应的界面,界面上有该菜单对应的功能。

4.5.1注册新购设备模块

    在项目文件里添加一个Windows窗体,命名为GUIAddNew.cs

    购置设备时,需要对新设备进行入库信息填写,此时就需要“注册新购设备”模块,模块中包含的控件有TextBoxLabelComboBoxDateTimePickerButtonListViewGroupBox,该模块需要填写设备所有信息,有必填选项和选填选项,必填选项是数据库中特种设备信息表中不可空的字段,选填信息是可空字段。为了是界面美观,用GroupBox进行分区,将相似的部分放在同一个GroupBox中。DateTimePicker控件默认的日期是当前计算机显示的日期,可以通过下拉选择日期,将“购置单价”TextBoxText属性设置成0.0,即默认单价,如果不设置的话,将出错。

    “操作人员证书编号”下拉选项是动态加载进来的,内容是“信息管理”菜单里“特种设备操作人员”中的“证书编号”,对比可以看出这两个值是一致的,如果“特种设备操作人员”中的“证书编号”值改变,则“操作人员证书编号”下拉选项的值也随之改变。因为操作人员证书编号很难记忆,所以在此模块中加了一个ListView控件,该控件实现的功能是:通过选择设备操作人员姓名和他作业项目,来选择此人的证书编号,单击ListView显示的一行记录,则自动显示操作人员证书编号。

    维护保养单位名称下拉列表中的值也是动态加载进来的,它的值和“信息管理”菜单中“维护保养单位”中的“单位名称”一致,原理和前面所述一致。

设置类别下拉列表的Item属性,将类别限制在起重机、电梯、压力容器、安全附件里。

    单击“添加”按钮将数据插入到特种设备信息表中,当必填信息有一项为空时,会弹出消息空提示:“第一个为空的字段”+不能为空!,比如注册代码为空,消息框显示“注册代码不能为空!”。

    界面效果图如图4-3所示。

 高校特种设备管理系统说明_第9张图片

 

 

4.5.2维修管理模块

    在项目文件里添加一个Windows窗体,命名为GUIRepair.cs

    “设备管理”菜单的另一个子菜单是“维修管理”,当设备有损坏时,需要对设备进行报修,此时须填写报修信息。

添加相应的控件,此模块的控件包括TextBoxLabelComboBoxDateTimePickerButtonListViewGroupBoxDataGridView。将故障原因TextBoxMultiLine属性设置为True,也就是支持多行输入。

    “维修管理”界面初始化时,在DataGridView控件中会显示已报修设备的信息,相应的SQL语句为“select * from 设备报修信息”,其中“设备报修信息”是已建立的视图。“设备注册代码”下拉列表是动态加载进来的,它的值就是所有设备的注册代码,对比主界面中DataGridView显示的设备信息中的注册代码,可知两项值完全一致。如果知道需要报修的“设备注册代码”,则可以直接选择,如果不知道,则可以通过选择设备名称来选择设备注册代码,方法如下:ListView控件中会显示所有设备的名称,选择其中一项,则相应的注册代码会显示在“设备注册代码”中。

    根据数据库表中字段数据长度,设置TextBoxMaxLength属性,限制可输入到此控件的字符数。

    填写好报修信息后,单击“添加报修项”按钮,再单击“刷新列表”,可以在右侧的表中看到刚才填写的报修项,说明数据保存成功。选中其中一行报修记录,单击“删除报修项”,则此记录删除。界面如图4-4所示。

 高校特种设备管理系统说明_第10张图片

 

 

4.5.3年检管理模块

    在项目文件里添加一个Windows窗体,命名为GUICheck.cs

对设备的年检信息,在年检管理中实现,添加控件TextBoxLabelComboBoxDateTimePickerButtonListViewGroupBoxDataGridView,根据界面所示设置Text属性,按规范更改控件名称。

    年检管理模块和维修管理模块在实现方法上基本一样,只是改变了数据,“年检信息”中显示相关数据的SQL语句为“select * from 设备年检信息”,其中“设备年检信息”是已建立的视图,“添加年检项”和“删除年检项”就是向T_Check表中插入和删除数据。界面效果如图4-5所示。

 高校特种设备管理系统说明_第11张图片

 

 

4.6“信息管理”菜单实现

    “信息管理”菜单的作用是管理该系统中包含的一些实体信息,如年检单位的信息,对年检单位进行添加、删除。信息管理子菜单包括“特种设备操作人员”、“维护保养单位”、“年检单位”,每个子菜单对应一个界面,在界面可实现相应功能。

4.6.1特种设备操作人员模块

    在项目文件里添加一个Windows窗体,命名为GUIOperator.cs

    该模块中控件有TextBoxLabelComboBoxDateTimePickerButtonGroupBoxDataGridView,界面初始化时在DataGridView里显示特种设备操作人员的信息,相应的SQL语句为“select * from 设备操作人员”,其中“设备操作人员”为已建立的视图,也就是T_EquipmentOperater表中的信息。

    信息包括必填和选填,必填信息为表中不可空字段,选填为可空字段,当必填信息有为空的项时,单击“添加设备操作人员”时有相应的信息提示,添加成功时提示添加成功,选中DataGridView中的一行记录,单击“删除设备操作人员”时该行记录将从表T_EquipmentOperater中删除。根据数据库表中字段数据长度,设置TextBoxMaxLength属性,限制可输入到此控件的字符数。

    界面效果图如图4-6所示。

 高校特种设备管理系统说明_第12张图片

 

 

4.6.2维护保养单位模块

    在项目文件里添加一个Windows窗体,命名为GUIMaintainUnit.cs

根据图4-7所示界面添加相应的控件,按规范进行命名,设置相应的Text属性,其中维护保养设备类别为起重机、压力容器、电梯、安全附件四种,资质为ABC,界面初始化时显示维护保养单位的信息,即T_MaintainUnit表中的信息,相应的SQL语句为“select * from 维护保养单位”。

 高校特种设备管理系统说明_第13张图片

 

 

4.6.3年检部门模块

    在项目文件里添加一个Windows窗体,命名为GUICheckUnit.cs

    界面初始化时,在DataGridView中显示年检部门信息,也就是T_CheckUnit表中的信息,相应的SQL语句为“select * from 维护保养单位”,在实现方法上与上述“特种设备操作人员模块”和“维护保养单位模块”基本一致,只是相关的数据不同而已,此处不再累赘,界面效果如图4-8所示。

 高校特种设备管理系统说明_第14张图片

 

 

 

第五章、本系统存在的缺陷及下一步工作

    本系统虽然实现了所有功能需求,但由于开发时间以及开发者水平的限制,在具体细节上仍然存在一定的缺陷,现将缺陷阐述如下:

1、管理员的信息不详细,只有用户名和密码,以及自动增长的ID号,如果要将本系统投入使用的话,应增加管理员的详细信息,包括姓名、性别、身份证号码、联系电话等等。

2、管理员和特种设备之间虽然在总E-R图中有“管理”的联系,但在程序设计中并没有表现出来,实际应该在特种设备信息中加上管理员的信息,确定这台设备是哪个管理员负责。

3、本系统按照任务书的要求,只是将角色定义成了管理员,没有将角色拓展。

4、本系统中使用ListView控件实现通过设备名称选择注册代码,由于使用的SQL语句为“select * from T_SpecialEquipment where EquipmentName = '" + selectName + "'”,所以特种设备名称不能相同,设备操作人员和其所操作的设备类型也不能出现两个一样的值。

5、在系统界面上不能查看本次登录的管理员信息,管理员密码也没有设计修改的界面。

6、各界面上都没有设计信息数据的修改,只有插入新数据和删除旧数据。

    综合以上所述的缺陷,下一步需要做的工作是:完善本系统,争取将缺陷全部消除,以及扩展新功能,应用到高校特种设备管理的具体工作中,将本系统投入使用。

 

项目文件下载地址:http://download.csdn.net/detail/abc123abc_123/6035043

 

你可能感兴趣的:(【项目】特种设备管理系统,特种设备,管理系统,ADO.NET,SQL,Server,2000,C#)