C#/winform 旅游管理信息系统
工具:Visual Studio 2015,sql server2014
1.系统概述
该旅游管理信息系统可以为游客和公司业务管理员提供服务。游客可以对旅游路线,旅游班次,旅游团,保险,导游,交通工具以及宾馆的信息查询,并且游客可以在线报名旅游。同时公司业务管理员可以对所有报名信息进行处理,确认之后导出报名信息交由旅行社。
2.需求分析
2.1 需求描述
此系统主要供三类用户使用:游客,公司业务管理员,超级管理员
1.对游客应该实现的功能为:
(1).旅游信息查询:旅游线路查询,旅游班次查询,旅游团查询,保险查询,导游查询,交通工具查询,宾馆查询。
(2).报名旅游
2.对业务管理员应实现的功能
(1).报名信息处理:报名信息查询,报名信息修改,报名信息删除,报名信息添加。
(2).报名信息导出
3.超级管理员:对所有数据库进行管理。
2.2 系统业务流程和数据流图
2.2.1 游客的业务流程图
2.2.2 业务管理员流程图
2.2.2 数据流图
1.按系统功能分析得出顶层数据流图:
2.将其功能分解得到1层数据流图:
3.系统设计
3.1 数据库设计
3.1.1系统概念模型
1)该系统主要包括旅游路线,班次,旅游团,游客,导游,交通工具,宾馆,保险单8个实体类型,各实体属性如下:
旅游线路(路线号,起点,终点,天数,主要景点)
旅游班次(班次号,出发日期,回程日期,旅游标准,报价)
旅游团(团号,团名,人数,联系人,地址,电话)
游客(游客编号,姓名,性别,年龄,身份证号码,住址,电话)
导游(导游编号,姓名,性别,年龄,身份证号码,住址,电话,语种,业绩)
交通工具(旅游班次号,出发工具,出发日期,出发班次,出发时间,回程工具,回程日期,回程班次,回程时间)
宾馆(宾馆编号,宾馆名,城市,星级,标准房价,联系人,职务,地址,电话)
保险单(保险单编号,保险费,投保日期)
2)根据系统的需求和业务、数据分析,得到系统概念模型如下图所示:
3.1.2 系统逻辑模型
1.这个ER图有7个联系类型,其中2个1:1联系,3个1:N联系,2个M:N联系。
根据E-R模型和逻辑模型的转换规则,8个实体类型转换成8个关系模式,2个M:N联系转换成2个关系模式。因此,总的ER图可转换成10个关系模式,如下:
旅游线路(路线号,起点,终点,天数,主要景点)
旅游班次(班次号,路线号,出发日期,回程日期,旅游标准,报价)
旅游团(团号,旅游班次号,团名,人数,联系人,地址,电话)
游客(游客编号,团号,姓名,性别,年龄,身份证号码,住址,电话)
导游(导游编号,姓名,性别,年龄,身份证号码,住址,电话,语种,业绩)
交通工具(旅游班次号,出发工具,出发日期,出发班次,出发时间,回程工具,回程日期,回程班次,回程时间)
宾馆(宾馆编号,宾馆名,城市,星级,标准房价,联系人,职务,地址,电话)
保险(保险单编号,团号,人数,保险费,投保日期)
陪同(旅游班次号,导游编号)
食宿(旅游班次号,宾馆编号)
2. 系统10张数据表的具体设计如表1至表10所示。
(1)旅游线路表(Tourism_Line)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Route_Num |
nvarchar(10) |
路线号 |
主键 |
Origin |
nvarchar(30) |
起点 |
不允许为空 |
Destination |
nvarchar(30) |
终点 |
不允许为空 |
Day_Num |
nvarchar(10) |
天数 |
不允许为空 |
Attractions |
nvarchar(30) |
主要景点 |
不允许为空 |
(2)旅游班次表(Tourism_Shift)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Tourism_Shift_Num |
nvarchar(10) |
班次号 |
主键 |
Route_Num |
nvarchar(10) |
路线号 |
不允许为空 |
SetOut_Date |
nvarchar(20) |
出发日期 |
不允许为空 |
ReturnTrip_Date |
nvarchar(20) |
回程日期 |
不允许为空 |
Tourism_Standard |
nvarchar(50) |
旅游标准 |
不允许为空 |
Quoted_Price |
Int |
报价 |
不允许为空 |
(3)旅游团表(Tourism_Group)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Group_Num |
nvarchar(10) |
团号 |
主键 |
Tourism_Shift_Num |
nvarchar(10) |
旅游班次号 |
不允许为空 |
Group_Name |
nvarchar(10) |
团名 |
不允许为空 |
Group_People_Num |
int |
人数 |
不允许为空 |
Group_Contact |
nvarchar(20) |
联系人 |
不允许为空 |
Group_Address |
nvarchar(20) |
地址 |
不允许为空 |
Group_Phone |
nvarchar(20) |
电话 |
不允许为空 |
(4)游客表(Tourist)即报名表
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Tourist_Num |
nvarchar(10) |
游客编号 |
主键 |
Group_Num |
nvarchar(10) |
团号 |
不允许为空 |
Tourist_Name |
nvarchar(20) |
姓名 |
不允许为空 |
Tourist_Sex |
nvarchar(4) |
性别 |
不允许为空 |
Tourist_Age |
nvarchar(4) |
年龄 |
不允许为空 |
Tourist_IDCard |
nvarchar(20) |
身份证号 |
不允许为空 |
Tourist_Address |
nvarchar(20) |
住址 |
不允许为空 |
Tourist_Phone |
nvarchar(20) |
电话 |
不允许为空 |
(5)导游表(Guide)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Guide_Num |
nvarchar(10) |
导游编号 |
主键 |
Guide_Name |
nvarchar(20) |
姓名 |
不允许为空 |
Guide_Sex |
nvarchar(4) |
性别 |
不允许为空 |
Guide_Age |
nvarchar(4) |
年龄 |
不允许为空 |
Guide_IDCard |
nvarchar(20) |
身份证号 |
不允许为空 |
Guide_Address |
nvarchar(20) |
地址 |
不允许为空 |
Guide_Phone |
nvarchar(20) |
电话 |
不允许为空 |
Guide_Language |
nvarchar(20) |
语种 |
不允许为空 |
Guide_Performance |
nvarchar(20) |
业绩 |
不允许为空 |
(6)交通工具表(Transportation)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Tourism_Shift_Num |
nvarchar(10) |
旅游班次号 |
主键 |
SetOut_Transportation |
nvarchar(10) |
出发工具 |
不允许为空 |
SetOut_Date |
nvarchar(20) |
出发日期 |
不允许为空 |
SetOut_Shift_Num |
nvarchar(10) |
出发班次 |
不允许为空 |
SetOut_Time |
nvarchar(10) |
出发时间 |
不允许为空 |
ReturnTrip_Transportation |
nvarchar(10) |
回程时间 |
不允许为空 |
ReturnTrip_Date |
nvarchar(20) |
回程日期 |
不允许为空 |
ReturnTrip_Shift_Num |
nvarchar(10) |
回程班次 |
不允许为空 |
ReturnTrip_Time |
nvarchar(10) |
回程时间 |
不允许为空 |
(7)宾馆表(Hotel)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Hotel_Num |
nvarchar(10) |
宾馆编号 |
主键 |
Hotel_Name |
nvarchar(20) |
宾馆名 |
不允许为空 |
Hotel_City |
nvarchar(20) |
城市 |
不允许为空 |
Hotel_Star |
int |
星级 |
不允许为空 |
Hotel_Price |
nvarchar(20) |
标准房价 |
不允许为空 |
Hotel_Contact |
nvarchar(20) |
联系人 |
不允许为空 |
Hotel_Post |
nvarchar(10) |
职务 |
不允许为空 |
Hotel_Address |
nvarchar(20) |
地址 |
不允许为空 |
Hotel_Phone |
nvarchar(20) |
电话 |
不允许为空 |
(8)保险(Insurance)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Insurance_Num |
nvarchar(10) |
保险单编号 |
主键 |
Group_Num |
nvarchar(10) |
团号 |
允许为空 |
Insurance_People_Num |
int |
人数 |
不允许为空 |
Insurance_Price |
int |
保险费 |
不允许为空 |
Insurance_Start_Date |
nchar(10) |
投保日期 |
不允许为空 |
(9)陪同(Accompany)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Tourism_Shift_Num |
nvarchar(10) |
旅游班次号 |
主键 |
Guide_Num |
nvarchar(10) |
导游编号 |
主键 |
(10)食宿(Accommodation)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Tourism_Shift_Num |
nvarchar(10) |
旅游班次号 |
主键 |
Hotel_Num |
nvarchar(10) |
宾馆编号 |
主键 |
注:此系统无需登录即可查看旅游信息,只有当点击报名旅游才需填写游客个人信息,而不报名则不获取用户个人信息,因此数据库中为游客和业务管理员单独增加了两张只用来存放账号和密码的表,两张表如下:
(1).游客账户表(Account_Tourist)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Account_Tourist_Username |
nvarchar(50) |
账户名 |
主键 |
Account_Tourist_Password |
nvarchar(20) |
密码 |
不允许为空 |
(2).业务管理员账户表(Account_Business)
字段名称 |
数据类型 |
字段说明 |
字段属性 |
Account_Business_Username |
nvarchar(50) |
账号名 |
主键 |
Account_Business_Password |
nvarchar(20) |
密码 |
不允许为空 |
3.2 概要设计
此系统有三个模块:游客模块,业务管理员模块,超级管理员模块。其中超级管理员可以对数据库中所有数据进行管理,这里主要设计模块为游客模块和业务管理员模块:
4.系统实现
首页:
点击报名:如果没有登录提示游客登录
游客登录界面:
账号注册界面:
登录成功之后填写报名信息:
业务管理员模块:
对报名信息进行增删查改,并且可以将所有报名信息导出到Excel表中:
5.总结
此次数据库系统设计由于太急于求成,快速的写完了系统实现,当把文档写完之后发现系统需要大改,再次证明文档是很重要的。
附上源码下载地址:http://download.csdn.net/detail/xch_yang/9591440
C#/winform 旅游管理信息系统的更多相关文章
- 手把手教你使用FineUI+动软代码生成器开发一个b/s结构的取送货管理信息系统(附源码)之开篇
一 本系列随笔概览及产生的背景 近阶段接到一些b/s类型的软件项目,但是团队成员之前大部分没有这方面的开发经验,于是自己选择了一套目前网上比较容易上手的开发框架(FineUI),计划录制一套视频讲座, ...
- WinForm酒店管理软件--框架
WinForm酒店管理软件--框架 搞软件开发4年多了,现在自认为还是菜鸟,从一开始走上工作岗位各种技术对我都很新奇没解决一个问题都觉得很伟大到后来开始对出路的迷茫,到现在我坚信学什么技术不重要,做什 ...
- timestamp与timedelta,管理信息系统概念与基础
1.将字符串‘2017年10月9日星期一9时10分0秒 UTC+8:00’转换为timestamp. 2.100天前是几号? 今年还有多少天? #timestamp与timedelta from ...
- 手把手教你使用FineUI开发一个b/s结构的取送货管理信息系统系列博文索引
近阶段接到一些b/s类型的软件项目,但是团队成员之前大部分没有这方面的开发经验,于是自己选择了一套目前网上比较容易上手的开发框架(FineUI),计划录制一套视频讲座,来讲解如何利用FineUI快速开 ...
- JT∕T 905 -2014 出租汽车服务管理信息系统的相关协议研究
出租汽车服务管理信息系统(JT∕T 905 -2014) 国家的相关技术要求2014年7月正式出台,总体有四部分, 第 1 部分:总体技术要求: 第 2 部分:运营专用设备: 第 3 部分 ...
- 杂项:MIS(管理信息系统)
ylbtech-杂项:MIS(管理信息系统) 管理信息系统(Management Information System,简称MIS)是一个以人为主导,利用计算机硬件.软件.网络通信设备以及其他办公设备 ...
- MIS(管理信息系统)
MIS 管理信息系统(Management Information System,简称MIS) 是一个以人为主导,利用计算机硬件.软件.网络通信设备以及其他办公设备,进行信息的收集.传输.加工.储存. ...
- 毕业设计 ASP.Net+EasyUI开发 X X露天矿调度管理信息系统(一)
开篇介绍关于EasyUI技术,界面部分的一些使用知识,包括控件的赋值.取值.清空,以及相关的使用. 我们知道,一般Web界面包括的界面控件有:单行文本框.多行文本框.密码文本框.下拉列表Combobo ...
- .NET快速信息化系统开发框架 V3.2 -> WinForm“组织机构管理”界面组织机构权限管理采用新的界面,操作权限按模块进行展示
对于某些大型的企业.信息系统,涉及的组织机构较多,模块多.操作权限也多,对用户或角色一一设置模块.操作权限等比较繁琐.我们可以直接对某一组织机构进行权限的设置,这样设置后,同一组织机构的用户就可以拥有 ...
随机推荐
- Minimum Size Subarray Sum 解答
Question Given an array of n positive integers and a positive integer s, find the minimal length of ...
- VBA:Google翻译(含tk算法)
完整的tk算法: //源自http://translate.google.cn/ TKK=eval('((function(){var a\x3d618632403;var b\x3d14854840 ...
- 在线CRC校验
在线CRC校验: http://www.lammertbies.nl/comm/info/crc-calculation.html
- VLC-Android和VLC几个关键宏定义的分析
在用SourceInsight分析VLC-Android源码过程中,有几个宏定义在源代码中一直没有找到出处,比如 HAVE_DYNAMIC_PLUGINS和__PLUGIN__,以及MODULE_NA ...
- javascript XMLHttpRequest对象全面剖析
转载:http://www.jb51.net/article/23175.htm 一. 引言 异步JavaScript与XML(AJAX)是一个专用术语,用于实现在客户端脚本与服务器之间的数据交互过程 ...
- java 短信发送例子 tdy
import java.io.IOException; import java.util.logging.Level;import java.util.logging.Logger;import or ...
- html 基础之 <link>标签
实例 链接一个外部样式表: <head> <link rel="stylesheet" type="text/css" href=" ...
- 2015.4.8-C#入门基础(二)
初来乍道,下面分享一下,自己做的小程序 主要用到 数组,类型转换,枚举,循环: 主要体现的是: 输入姓名,就可以查看其性格 using System;using System.Collections. ...
- Hadoop配置文件-hdfs-site.xml
name value Description dfs.default.chunk.view.size 32768 namenode的http访问页面中针对每个文件的内容显示大小,通常无需设置. ...
- 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析
在创建一个job后,就要开始job的运行,运行的全流程如下: 1.在界面上启动job 2.index.jsp 查看上述页面对应的源代码 <a href='"+request.getCo ...