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“组织机构管理”界面组织机构权限管理采用新的界面,操作权限按模块进行展示
对于某些大型的企业.信息系统,涉及的组织机构较多,模块多.操作权限也多,对用户或角色一一设置模块.操作权限等比较繁琐.我们可以直接对某一组织机构进行权限的设置,这样设置后,同一组织机构的用户就可以拥有 ...
随机推荐
- sqlexpress 不用管理工具 sa
操作步骤: 开始=>运行=>(快捷键:win+R) cmd, 屎劲敲回车. 出现黑色的DOS窗体后,输入如下几条命令: 1.SQLCMD -S (local)\sqlexpress -E ...
- BorderLayout布局,修改各个区域大小办法
摘自http://blog.csdn.net/zcsearching/article/details/50808446 BorderLayout控件大小的设置 使用BorderLayout时,中间的面 ...
- 解决 VM虚拟机网卡无法拉起 的问题
复制虚拟机后,第二块网卡始终无法正常运作,表现为无法自动获得dhcp地址,且重启后与第一块网卡使用同样的地址,让人苦笑不得,反复重启了很多次都是这样,后面想到ifcfg-eth1的配置文件可能写得太简 ...
- 449A - Jzzhu and Chocolate 贪心
一道贪心题,尽量横着切或竖着切,实在不行在交叉切 #include<iostream> #include<stdio.h> using namespace std; int m ...
- Akka边学边写(2)-- Echo Server
EchoServer 上篇文章里,我们用Akka写了一个简单的HelloWorld样例,对Akka(以及Actor模式)有了初步的认识.本文将用Akka写一个EchoServer,看看在Actor的世 ...
- Zero Downtime Upgrade of Oracle 10g to Oracle 11g Using GoldenGate — 2
Prepare 10g Database for OGG Create GGS and GGS_MON Database Users SQL> create tablespace ggs_tbs ...
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
tomcat的运行模式有3种.修改他们的运行模式.3种模式的运行是否成功,可以看他的启动控制台,或者启动日志.或者登录他们的默认页面http://localhost:8080/查看其中的服务器状态. ...
- 监控代码运行时长 -- StopWatch用法例程
在.net环境下,精确的测量出某段代码运行的时长,在网络通信.串口通信以及异步操作中很有意义.现在做了简单的总结.具体代码如下: (1).首先 using System.Diagnostics; (2 ...
- Hello又大了一岁
时间就这样子过了一年一年一年一年一年...一年一年一年......... 以往每年的生日,都习惯安静的猫在一个地方.时间流逝,更像是一种默默的悼念. 也许从28岁开始,我得习惯用逗比的心态欢迎.长大的 ...
- 纯CSS3技术 加载中
你能相信吗?这些都是由一个DIV元素实现的动画,纯CSS3技术 html <div class="loader">加载中...</div> css: 图( ...