唐山市住宿管理信息系统.docx
- 文档编号:23017243
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:39
- 大小:1.66MB
唐山市住宿管理信息系统.docx
《唐山市住宿管理信息系统.docx》由会员分享,可在线阅读,更多相关《唐山市住宿管理信息系统.docx(39页珍藏版)》请在冰豆网上搜索。
唐山市住宿管理信息系统
河北理工大学
GIS设计与实现设计说明书
设计题目:
唐山市住宿管理系统
学生姓名:
组员:
专业班级:
学院:
指导教师:
刘亚静
吴凤华
2010年7月14日
目录
1唐山市住宿管理信息系统功能分析3
1.1需求分析3
1.1.1用户类型分析4
1.1.2现在市场上的住宿管理系统分析4
1.1.3明确系统服务对象4
1.1.4系统服务对象需求4
1.2可行性分析4
1.2.1数据源分析4
1.2.2技术可行性分析5
1.2.3经济和社会效益分析5
1.3系统目标5
2系统总体设计7
2.1系统总体设计要求7
2.2系统结构设计7
2.3数据库设计8
2.3.1属性数据库9
2.4系统软硬件配置9
2.4.1系统硬件配置9
2.4.2系统软件配置9
2.5系统功能设计10
2.6系统开发工具与平台10
2.6.1高级程序设计语言C#10
2.6.2ArcGISEngine组件开发简介11
3系统详细设计13
3.1界面设计13
3.2系统基本功能13
3.3地图操作14
3.4宾馆基本信息查询15
3.5小区信息查询15
3.6宾馆信息查询16
3.7公交路线路径分析16
3.8建筑物缓冲分析17
3.9用户登录管理18
3.10系统地图编辑18
4系统设计实现19
4.1界面设计与实现19
4.2鹰眼功能21
4.3缓冲区查询24
4.4地图定位24
4.5地图属性查询26
4..6专题图29
4.7地图输出与打印31
4.8宾馆信息查询32
4.9地图符号管理功能33
4.10最短路径分析34
4.11地图视图与版面视图的同步34
1唐山市住宿管理信息系统功能分析
1.1需求分析
随着我国经济的快速发展和假日经济的出现,宾馆酒店业的生意竞争越来越厉害,可是人们出行还是经常遇到住宿的麻烦。
要想在解决这些存在的问题,必须在经营管理、住宿管理等方面努力,提高管理意识,让消费者更容易找到自己想要的住宿环境。
1.1.1用户类型分析
主要分为外地来唐山的和本地居民。
外地来唐山的人经常遇到寻找住宿地方的麻烦,而本地的宾馆酒店却也同样遇到住宿情况不佳的现象,两者的矛盾日益严重。
1.1.2现在市场上的住宿管理系统分析
现在市场上的大部分的住宿管理信息系统都是为政府的管理者准备的,很少有站在普通消费这的立场上开发的软件,本系统完全基于对唐山本土的实际情况,开发而成。
1.1.3明确系统服务对象
公众利用本系统,在系统中键入查询内容,便可以查询访问到国家管理部门、事业单位、宾馆位置的分布现状:
包括地图分布、宾馆分布等)。
1.1.4系统服务对象需求
根据网上资料查询得出:
公众和商务人士主要对住宿管理信息及医疗点较为关注;各宾馆酒店及居民区、政府机构及各下属事业部门则需汇集并加工查询管理信息,以对宾馆信息分析,得出结论,而政府职能部门要根据宾馆酒店也得分布作出合理的宏观调控,服务于民。
1.2可行性分析
可行性分析是对建立系统的必要性和实现目标的可能性,从数据源、技术、效益三个方面进行分析,以确定用户的实力、系统环境、资料、数据、数据流量、硬件能力、软件系统、经费预算以及时间分析和效益分析等。
1.2.1数据源分析
数据是唐山市宾馆查询系统使用唐山市市区地图作为基础,运用ArcGIS9.3进行地图矢量化,宾馆信息、小区信息、公交信息等各类信息分别作为不同图层,作为系统使用地图;属性数据,如宾馆名称、小区名称、公交线路等属性则可通过互联网资源得到,用ArcGIS9.3将其添加至矢量好的唐山市市区地图相应图层上,然后即可对地图进行坐标系选择、配准、地图修饰、建立几何网络等相关处理,最终得到满足系统功能应用的数据。
1.2.2技术可行性分析
唐山市宾馆查询系统选用的ESRI公司的ArcGIS9.3系列软件,辅以ESRIArcGIS9.3的二次开发工具ArcGISEngine组件及微软公司所开发的一种面向对象,且运行于.NETFramework之上的高级程序设计语言C#进行设计开发。
C#是面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。
最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。
而ArcGISEngine是随ArcGIS9一起推出的一种新的开发者产品,它包含了创建和部署用户GIS解决方案应用程序所需的所有内容。
使用ArcGISEngine,开发者能够为现有的应用程序添加动态制图和GIS功能,或者构建他们自己的专门制图程序。
ArcGISEngine提供了良好定义的、跨语言的对象集,称之为ArcObjects,它包括了ArcGIS桌面用户界面之外的所有ArcGIS功能。
二者结合,本系统在技术上并无问题。
1.2.3经济和社会效益分析
近年来,人们生活水平有所提高,渐渐开始加大对自身出行的重视程度,唐山市住宿管理系统的开发,必将为用户乃至社会带来巨大的经济效益和社会效益。
首先,对于住宿管理者来说,住宿管理系统的开发,会大大的减少住宿管理人员的工作量,减轻管理人员的工作压力,提高他们的工作效率,从而减少管理部门的财政支出;而对于用户来说,用户只需在电脑前登录系统,即可进行宾馆信息的相关查询,不仅节省时间,方便用户,还可减少用户以往为得到这些信息而东奔西跑,减少其为此而付出的时间和费用等。
1.3系统目标
本系统的建设目标是要建成一个唐山市宾馆控制系统,服务于唐山市人民和到唐山来的外地游客,同时也给外地商业人士提供一个住宿查询的平台。
系统有机结合了唐山市酒店、宾馆、旅馆、政府机构、事业单位等位置信息和属性数据。
此系统面向广大用户和决策者,为他们方便快捷的、直观的提供符合自己需要的数据与图像等信息。
系统长远的发展目标是不断地引入国际上领先的网络信息技术,并开拓新的相关服务领域。
该系统设计的主要目标有:
系统应全面支持唐山市住宿的数据信息化。
系统的功能集成了唐山市居住信息,包括其基本信息、分布信息、宾馆查询范围分析等功能,为用户提供一个良好的查询平台;
系统全面、完整地管理各类数据。
该系统要实现唐山市宾馆的各种信息的集成,同时也提供了宾馆管理者模块,以便为系统数据的更新提供平台;
系统除具有快速、方便地对各类信息进行查询、检索、统计等功能,还应实现唐山宾馆事业的发展态势,分布情况等方面的专题图。
系统能快速摸清宾馆的空间分布;辅助政府主管部门及时决策。
本系统的应用可以为宾馆管理和查询系统内部业务提供更直观、更便捷的工作平台,同时为业务的高效处理及决策支持提供有效的工具,从而极大地提高工作效率,在提高宾馆住宿控制信息化应用的水平的同时提升自身形
2系统总体设计
2.1系统总体设计要求
为了使系统满足科学化、合理化和经济化的总体设计要求,本系统遵循了以下基本原则:
完备性:
系统功能齐全完备,具有管理、处理、查询、显示、分析及输出等功能;
标准化:
系统符合GIS的基本要求、标准和行业规范;
系统性:
空间数据和非空间数据要有机地结合为一体,与其他系统可以实现数据共享;
实用性:
系统数据组织灵活,可以满足不同数据分析的要求,为生产实践、管理、决策服务;
可靠性:
数据精度和系统安全都要可靠;
扩充性:
系统采用的是模块化结构设计,模块独立性强,模块的增减及修改对整个系统影响很小,便于系统扩充改进,使该系统随着项目工程进展情况处于不断完善之中。
2.2系统结构设计
唐山市住宿管理信息系统面向广大唐山市民和众多到唐山出差或旅游的的人士,方便人们了解唐山的基本住宿信息,宾馆分布基本信息,学校、居民区、道路、商业机构、政府机构等等信息。
其主要包括图层管理模块、图层属性查询模块、图层显示及鹰眼实现模块、查询显示及分析模块、公交查询模块、最短路径分析模块、专题图模块,系统维护者可以进行地图编辑和专题图的制作等其他维护工作,系统框架结构如图4-1:
2.3数据库设计
数据是信息系统的中枢,数据库是以一定的组织方式存储在一起的相互关联的数据集合,能以最佳方式,最少重复为多种目的服务。
数据库设计时,必须满足数据库建设的要求,需满足唐山市宾馆控制系统的要求。
具体而言,数据库的设计要遵循如下一些原则:
数据库安全稳定
数据库是系统良好运行的关键,因此,必须从软硬件平台选型、数据库结构等方面进行优化设计,确保数据库的稳定运行。
采用严格的用户身份认证措施防止非法用户的攻击,做好数据的备份,防止数据库的崩溃。
数据库设计必须规范合理
数据库设计必须符合数据完整性和数据最小处理单元的原则,进一步完善数据操作的安全性、完整性、一致性、并发性、保密性等。
空间属性数据的存储管理
为了实现对该系统数据业务的高效访问和操作,便于数据更新维护,必须考虑将空间数据和属性数据进行统一的设计,实现空间和属性的综合查询和管理。
能够适应数据的实时更新
宾馆数据管理中各项数据的编辑操作应能在数据库中得到实时更新。
数据编辑更新后关联数据也必须得到相应的更新,数据库设计将遵循ER实体关系模型,建设各个表之间合理的逻辑关系,确保数据库表之间的关联更新。
2.3.1属性数据库
唐山市住宿管理系统属性数据主要包含在地图空间数据库中,主要包括:
宾馆数据表、医院数据表、学校数据表、居民区数据表等等。
在此仅列出以下几种数据表(前十项数据),公交站点数据表结构如表4-1,主要说明主键(OBJECTID),数据类型(Shape),公交站点名称(Name),用于公交查询模块路径的查询;
2.4系统软硬件配置
2.4.1系统硬件配置
硬件名称
最低要求
推荐
CPU
主频1.0GHz
大于1GHz
内存
512MB
1GB
硬盘
40GB
80GB或更大
显卡
AGP8X
PCIX16独立显卡
2.4.2系统软件配置
软件名称
可运行的平台
推荐
操作系统
Windows2000、2003、XP、Vista、windows7、
WindowsXPSP3
软件
MicrosoftAccess2003
MicrosoftAccess2003
专业软件
ArcEngine
ArcEngine9.3
环境要求
Microsoft.NETFramework2.0
Microsoft.NETFramework2.0
2.5系统功能设计
2.6系统开发工具与平台
本系统选用的ESRI公司的ArcGIS9.3系列软件,辅以ESRIArcGIS9.3的二次开发工具ArcGISEngine组件及微软公司所开发的一种面向对象,且运行于.NETFramework之上的高级程序设计语言C#进行设计开发。
2.6.1高级程序设计语言C#
C#是微软公司发布的一种面向对象的、运行于.NETFramework之上的高级程序设计语言。
并定于在微软职业开发者论坛(PDC)上登台亮相。
C#是微软公司研究员AndersHejlsberg的最新成果。
C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。
但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。
C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。
最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。
因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。
C#语言允许类型定义的,扩展的元数据。
这些元数据可以应用于任何对象。
项目构建者可以定义领域特有的属性并把他们应用于任何语言元素-类,接口等等。
然后,开发人员可以编程检查每个元素的属性。
这样,很多工作都变得方便多了,比如编写一个小工具来自动检查每个类或接口是否被正确定义为某个抽象商业对象的一部分,或者只是创建一份基于对象的领域特有属性的报表。
定制的元数据和程序代码之间的紧密对应有助于加强程序的预期行为和实际实现的之间的对应关系。
作为一种自动管理的,类型安全的环境,C#适合于大多数企业应用程序。
2.6.2ArcGISEngine组件开发简介
ArcGIS9.0版本中新增了面向开发人员的开发产品ArcGISEngine,这对不适应用ArcObjects开发和定制GIS功能的软件开发人员来说无疑是一个惊喜。
ArcGISEngine可以在自定义的软件应用中嵌入GIS功能。
ArcGISEngine是一个完整的嵌入GIS组件库和工具,我们可以用来创建新的应用程序或者在自定义的软件应用中扩展GIS的功能。
使用ArcGISEngine,我们可以嵌入GIS功能到已经存在的应用中,比如自定义的工业软件和商用软件,MicrosoftWord和Excel,这样的应用程序就可以让很多用户都实现GIS的功能。
ArcGISEngine由两个产品组成:
一个软件开发包和一个可分发的运行库。
ArcGISEngine它包含了创建和部署用户GIS解决方案应用程序所需的所有内容。
使用ArcGISEngine,开发者能够为现有的应用程序添加动态制图和GIS功能,或者构建他们自己的专门制图程序。
ArcGISEngine提供了良好定义的、跨语言的对象集,称之为ArcObjects,它包括了ArcGIS桌面用户界面之外的所有ArcGIS功能。
ArcGISEngine有两种产品:
(1)ArcGISEngineDeveloperKit—包括开发者建立解决方案所需的组件和工具集。
(2)ArcGISEngineRuntime—运行定制的ArcGISEngine应用程序所需的基础设施.该系统是利用ArcGISEngineDeveloperKit和VB6.0结合开发。
ArcGISEngine开发包是一套地图制图组件和开发资源库,可以让编程人员为现有的应用程序添加动态制图和GIS功能,或者创建新的定制的制图和GIS解决方案。
使用ArcGISEngine开发包,开发人员在为地图创建定制界面时有了前所未有的灵活性。
开发人员可以使用多种具有行业标准的交互式开发环境来创建专门的应用程序,或者将ArcGISEngine组件和其他软件的组件结合来创建先进的GIS应用程序。
ArcGISEngine开发包不是面向终端用户的产品,而是专门为开发应用程序的人员设计的。
开发人员基于ArcGISEngine建立应用程序,并将这些程序传递给终端用户。
ArcGISEngine的一个很重要的特征就是在一个应用程序中,地图可以是次要部分,也可以是核心部分。
这以特性使得ArcGISEngine尤其的适合于特定的GIS解决方案。
ArcGISEngine开发包为一个大型的ArcObjects组件集(ArcGIS就是建立在此软件组件之上)提供接口,并且包括了许多开发控件,用于创建一个高质量的制图用户界面。
这些可视化控件与.NET控件、VisualJavaBeans和ActiveX控件一样使用。
ArcGISEngine开发包还包括所有的开发资源库,以支持全面的开发任务。
许多应用程序界面(COM,Java,.NET,和C++)除了拥有对象模型图表和ArcGISEngine每一部分的范例外,还提供一个集成化的帮助系统。
ArcGISEngine开发包允许用户建立和测试ArcGISEngine应用程序中的包含在ArcGISEngineRuntime及其所有选项中的功能。
部属这些应用程序需要一个ArcGISEngineRuntime许可和相应的选项。
3系统详细设计
3.1界面设计
唐山市住宿管理系统主要包括系统基本功能、地图操作、宾馆基本信息查询、小区信息查询、各个标志性地方位置查询、公交路线路径分析、查找目标缓冲分析、用户登录管理系统地图编辑等功能。
界面设计在充分满足用户需求的基础上,考虑到界面的构图或布局,界面元素的位置、界面元素的一致性等问题来美化界面,提高应用程序界面的可用性和美感。
其界面设计应遵循一般信息系统软件界面设计的要求:
简洁美观,主次分明:
尽量减少不必要的花俏成份,界面做得太复杂,往往会使得用户无所适从。
提供简单的错误处理:
在出现错误时,系统应该能检测出错误,并且提供简单的错误处理功能。
提供信息反馈:
对不常用操作和至关重要的操作,系统应该提供信息反馈。
操作可逆:
对于不具备专门知识的操作人员相当有用。
界面初步设计如图5-1:
3.2系统基本功能
文件菜单(对数据和文件的基本操作)
1)新建
2)打开
3)保存
4)另存为
5)退出
工具(实现调出和关闭特定工具)
1)地图操作:
包括地图的基本操作,如放大,缩小,平移,全图显示,清除、属性查询等。
2)编辑:
对某一图层开始编辑,保存编辑,绘制图形等功能。
3)绘图工具:
包括画点,画直线,画曲线,画矩形,画不规则图形等。
4)选择要素:
对当前图层进行单选或者多选。
专题图(通过对各种功能得到各种专项数据的分析)
1)点密度图
2)柱状统计图
3)饼状统计图(如下图小区的面积)
4)分层设计图:
对某一图层的某一属性进行分层
5)等级图
视图切换(可以切换图层视图)
地图打印输出(可以输出地图)
3.3地图操作
该模块包括地图的放大、缩小、自由缩放、漫游、全幅显示、刷新、鹰眼、属性查询等。
放大:
为了方便使用者对地图进行放大操作,系统提供了简单方便的操作方式,进行地图的局部放大功能:
即拉框放大所希望看到的区域。
缩小:
为了方便使用者对地图进行缩小操作,系统提供了简单方便的操作方式,进行地图的局部缩小功能:
即拉框缩小显示所希望看到的区域。
漫游:
利用系统提供的移图功能,用户可以实现在地图中任意地点的漫游。
可以随心所欲地拖动地图使之移动到所希望的地点。
全幅显示;用户通过地图放大、地图缩小、移图等操作后,地图的显示区域和显示比例将发生很大的变化,若用户想查看全貌时,只需简单地选择显示全图的功能,即可达到目的。
鹰眼:
在鹰眼控件中右击拖出自己想要区域的红色矩形框,左键可以拖动矩形框进行地图窗口的定位。
3.4宾馆基本信息查询
此项功能提供用户在地图上查找唐山市各宾馆在地图上的位置。
首先选中要查询的宾馆名称,然后确定,即可在地图上查找出其所在位置,并闪烁显示。
此外还可以查询分析在某个地方一定范围内是否有宾馆,方便用户。
查询流程图如图5-2:
3.5小区信息查询
该功能里既可以查询唐山市所有小区,又可以针对某小区查询的一些具体信息,并显示该地区大致位置,同时以为文本形式显示出相关内容,可以进小区进行定位,对地图信息进行实时的更新,保持其现势性。
其流程图如图5-3:
3.6宾馆信息查询
主要查询唐山市所有宾馆的具体信息,包括:
规模、星级、网址、电话、详细信息等
3.7公交路线路径分析
(1)站点查询
列出经过任意俩个站点的所有公交线路,并高亮显示。
(2)公交换乘查询
找出两个站点间的所有公交线路,并以文本形式输出显示。
查询流程如图5-4:
3.8建筑物缓冲分析
次缓冲区分析能实现的功能是以某一选定的建筑或标志点为圆心,以设定距离为半径画一个圆,该功能统计出所有在圆内的目标建筑,帮助人们了解目标的数量和大概的距离。
分析流程如图5-5:
3.9用户登录管理
此功能主要是保证数据的安全性,以免本系统遭到非法用户的破坏。
3.10系统地图编辑
系统地图编辑功能是提供给系统管理员的一项功能,本项功能的实现是调用ArcEngine内部已经封装好的控件。
当唐山市的环境发生改变的时候,例如道路变化、绿化带改变、居民区的变化,最重要的是宾馆信息的变化,系统管理员可以随着这些变化,利用此项功能反映到图上。
保证了地图
4系统设计实现
4.1界面设计与实现
界面是系统与用户实现交互的部分,它体现了系统的整体感觉,一个系统是否拥有好的界面是用户能否接受该系统的基本前提。
而一个拥有了舒适美观、简洁明了又通俗易懂的界面的系统则具有了最起码的市场魅力,从而也为其赢得更高的使用率。
如图4-1,是系统运行的主界面
菜单及工具栏设计:
文件、工具、专题图、视图切换、地图打印输出等。
整个系统控制中,在菜单中用户可以选择任何系统功能操作。
在文件中实现了新建、打开、保存、另存为、退出功能。
文件中打开功能实现主要代码:
if(this.axMapControl1.LayerCount>0)
{
DialogResultresult=MessageBox.Show("是否保存当前地图?
","警告",MessageBoxButtons.YesNoCancel,MessageBoxIcon.Question);
if(result==DialogResult.Cancel)return;
if(result==DialogResult.Yes)this.save_Click(null,null);
}
OpenNewMapDocumentopenMapDoc=newOpenNewMapDocument(m_controlsSynchronizer);
openMapDoc.OnCreate(m_controlsSynchronizer.MapControl.Object);
openMapDoc.OnClick();
用户可以在工具栏上选择不同工具对地图作任意操作,对电子地图实施放大、缩小、漫游、全幅显示和退出MapControl工具功能的清除等基本操作。
在进行地图的操作时,选择不同的功能如放大,缩小,漫游等等操作,这些都是ArcEngine自带的功能,只需进行简单调用。
这部分和鹰眼导航联系起来,用户可以任意的浏览地图的每一处,如图4-2:
代码如下:
privatevoidzoomin_Click(objectsender,EventArgse)
{
ControlsMapZoomInToolzi=newControlsMapZoomInTool();
zi.OnCreate(axMapControl1.Object);
axMapControl1.CurrentTool=(ITool)zi;
}
privatevoidzoomout_Click(objectsender,EventArgse)
{
ControlsMapZoomOutToolzo=newControlsMapZoomOutTool();
zo.OnCreate(axMapControl1.Object);
axMapControl1.CurrentTool=(ITool)zo;
}
privatevoidpan_Click(objectsender,EventArgse)
{
ControlsMapPanToolzp=newCo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 唐山市 住宿 管理信息系统