用C#做火车订票管理系统课程设计文档格式.docx

上传人:b****3 文档编号:16379426 上传时间:2022-11-23 格式:DOCX 页数:38 大小:640.63KB
下载 相关 举报
用C#做火车订票管理系统课程设计文档格式.docx_第1页
第1页 / 共38页
用C#做火车订票管理系统课程设计文档格式.docx_第2页
第2页 / 共38页
用C#做火车订票管理系统课程设计文档格式.docx_第3页
第3页 / 共38页
用C#做火车订票管理系统课程设计文档格式.docx_第4页
第4页 / 共38页
用C#做火车订票管理系统课程设计文档格式.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

用C#做火车订票管理系统课程设计文档格式.docx

《用C#做火车订票管理系统课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《用C#做火车订票管理系统课程设计文档格式.docx(38页珍藏版)》请在冰豆网上搜索。

用C#做火车订票管理系统课程设计文档格式.docx

1.游客功能模块:

列车信息查询、用户注册。

1.用户功能模块:

列车信息查询、购票、退票、查看订单、查看用户信息、修改登录密码。

3.管理员功能模块:

列车信息查询、购票、退票、查看订单、查看用户信息、修改登录密码、增加车票。

设计报告要求

1.封面

2.课程设计任务书

3.成绩评定表

4.课程设计报告:

(1)系统总体方案

(2)设计思路和主要步骤

(3)各功能模块和流程图

(4)系统详细设计

(5)设计代码

(6)总结和参考资料

说明:

学生完成课程设计后,提交课程设计报告及软件,要求文字通畅、字迹工整(也可打印),文字不少于3000字,并装订成册。

版面要求

1.题目用黑体三号,段后距18磅(或1行),居中对齐;

2.标题用黑体四号,段前、段后距6磅(或0.3行);

3.正文用小四号宋体,行距为固定值22磅;

4.标题按“1”、“1.1”、“1.1.1”、“⑴”、“

”顺序编号。

上机时间安排

星期

周次

第15周-第18周

指导时间地点

上机时间

蚌埠学院计算机科学与技术系本科课程设计成绩评定表

项目

权重

分值

具体要求

得分

文献阅读与调查论证

0.20

100

能独立查阅文献和从事其它调研活动;

有收集、加工各种信息的能力

设计质量

0.30

设计合理、功能齐备,程序运行正常,实验数据准确可靠;

有较强的实际动手能力

论文撰写质量

设计说明书完全符合规范化要求,用A4复印纸打印成文

学习态度

学习态度认真,科学作风严谨,严格按要求开展各项工作,按期完成任务

学术水平与创新

0.10

设计有创意,有一定的学术水平或实用价值

总分

评语:

存在问题:

等级:

指导教师:

年月日

1系统总体方案

1.1开发背景

现在人们更多的使用火车作为出行交通工具,因此车票票务市场也在快速发展。

人们希望车票销售手段也能相应地有所调整,并对如何能经济、方便和及时地购买到自己所需要的车票表现出极大的关注。

随着社会的不断进步,国内外铁路运输事业的飞速发展,各国铁路运营部门对票务管理的要求也在不断的提高,本系统就是针对这种日益增长的需求而进行开发的。

1.2意义

随着铁路客运量大幅度的提高,国内列车专线的增加,这些都对铁路的订票管理系统提出了更高的要求,所以要不断的完善更新铁路订票系统,提高铁路订票系统的工作效率。

铁路运输系统中,订票系统是很重要的一个环节,要想提高整个铁路运营部门的工作效率,就要先提高订票系统的工作效率和安全性,故而研发此系统,此系统能够为订票工作提供方便快捷的订票服务,广大的客以得到更好的票务服务。

1.3系统相关知识介绍

(1)VisualStudio是微软公司推出的开发环境。

是目前最流行的Windows平台应用程序开发环境。

VisualStudio2010版本其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。

(2)SQLServer2008在Microsoft的数据平台上发布,可以组织管理任何数据。

可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。

可以对数据进行查询、搜索、同步、报告和分析之类的操作。

数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,它都可以控制数据而不用管数据存储在哪里。

(3)C#(Csharp)是一种最新的、面向对象的编程语言。

它使得程序员可以快速地编写各种基于Microsoft.NET平台的应用程序。

使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。

最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。

因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。

2设计思路与主要步骤

2.1系统需求

对于一个火车票订票管理系统,准确快捷的车次信息查询功能和方便简单的订票操作是十分必要的,因此系统必须为用户提供准确的车次信息和当前的车票状况,这也是火车票订票管理系统的最基本要求。

客户端后台管理员要能够及时添加车票。

所以结合实际情况,火车订票管理系统应满足以下需求:

(1)客户端界面清晰友好,达到一目了然的效果。

(2)客户端能够方便的查询系统及简单明了的订票、退票操作。

(3)防止用户重复订票、退票操作,影响系统数据的正确性。

(4)服务器端提供信息完全可靠,时效性强。

能够保证数据与信息的安全性。

2.2功能需求

本网上售票系统应该具备如下功能:

2.2.1查询

分为用户对个人登录信息的查询,列车信息的查询和用户对已订车票信息的查询。

要求:

(1)用户登录该系统后,可以查询到自己的个人信息和已经预定的车票信息。

(2)对车次的查询,可以按照出发地和目的地对列车信息进行查询;

(3)车次信息只允许用户查询,不能修改。

2.2.2.购票

通过查询系统,客户根据自己的需求找到满意的车次,登录系统后,便可以通过该系统购票。

2.2.3.退票

用户通过登录该系统,查询到自己已经预定的火车票,通过退票模块退去已购车票。

2.3数据库逻辑结构

火车订票管理系统数据库中各个表格的设计结果如表2-1到2-4所示。

表2-1车票信息表

字段名

数据类型

是否为空

车次

char(10)

出发地

nchar(10)

出发时间

目的地

到达时间

车票数量

车票价格

出发日

time(7)

time(7)

int

float

date

表2-2车票预订表

用户号

姓名

身份证号

char(18)

表2-3管理员表

管理号

密码

表2-4用户表

性别

char(4)

char

(2)

2.4数据库中的约束

2.4.1主键约束

(1)在车票信息表中,定义车次,出发地,出发时间,目的地,到达时间,出发日这个整体作为车票信息表的主键。

相关代码如下:

altertable车票信息表

addconstraintpkprimarykey(车次,出发地,出发时间,目的地,到达时间,出发日)

(2)在车票预订表中,定义用户号,姓名,身份证号这个整体作为车票预订表的主键。

(3)在管理员表和用户表中,分别将管理号和用户号作为各表的主键。

2.4.2外键约束

在车票预订表中,定义车次,出发地,出发时间,目的地,到达时间,出发日这个整体作为车票预订表的外键,参考车票信息表中的主键。

altertable车票预订表

addconstraintfk1foreignkey(车次,出发地,出发时间,目的地,到达时间,出发日)

references车票信息表(车次,出发地,出发时间,目的地,到达时间,出发日)

2.4.3CHICK约束

在用户表的性别字段,定义CHICK约束。

规定性别在男、女中选值。

altertable用户表

addconstraintCK_sexcheck(性别in('

女'

'

男'

))

2.4.4DEFAULT约束

在用户表的性别字段,定义DEFAULT约束。

规定性别默认值为男。

addconstraintdf_sexdefault'

for性别

2.4.5长度约束

在车票预订表和用户表中,定义身份证长度为18位,相关代码如下:

addconstraintCK_PIDcheck(len(身份证号)=18)

3各功能模块和流程图

3.1系统软件结构设计

综合以上需求,本系统需要以下几个模块来支持:

(1)用户模块:

用于用户注册,用户登陆,订票,退票,修改登录密码。

(2)管理员模块:

供后台管理员登录。

用于添加车票信息。

(3)游客模块:

列车信息查询,用户注册。

三个模块的关系如下:

修改登录密码

图3.1火车订票管理系统的层次图

3.2系统流程图

系统总体流程图如下图3.2所示。

图3.2系统用户权限的系统主程序流程图

车次信息查询流程图如下图3.3所示。

图3.3车次信息查询程序流程图

订单信息查询流程图如下图3.4所示。

图3-4订单信息查询流程图

退票模块处理流程如下图3.5所示。

图3.5退票模块程序流程图

4系统的详细设计

4.1登录界面

本系统设计要求用户通过输入登录账号和密码,选择登录按钮,登录到用户对应的窗口,而管理员通过输入登录账号和密码,选择管理员登录按钮,登录到管理员对应的窗口。

登陆界面如下图4-1所示。

图4-1登陆界面

4.2游客模块

对于没有注册的游客,在本系统中拥有列车信息查询和网上用户注册的功能。

4.2.1列车信息查询

游客和用户都有这部分的操作权限。

列车信息查询窗体如图4-2所示。

图4-2列车信息查询

通过输入出发地和目的地,点击查询,可以查询出用户需要的车票。

运行界面如图4-3所示。

图4-3列车信息查询结果

4.2.2网上用户注册

一般的游客可以通过用户注册,购买火车票。

用户注册界面如图4-4所示。

图4-4用户注册

游客输入相关信息后,单击注册,注册成功,弹出如图4-5所示。

图4-5用户注册成功

4.3用户模块

用户具有列车信息查询,购票,退票,查看用户信息,查看订单,修改登录密码的模块。

用户界面如下图4-6所示。

图4-6用户界面

4.3.1购票

用户在用户界面,单击购票,便可以进行预订火车票。

运行界面如图4-7所示。

图4-7用户预订火车票界面

用户通过输入出发地,目的地,出发日,可以查询到所需的火车票。

结果如图4-8所示。

图4-8用户查询火车票

然后输入乘客姓名和乘客身份证号,找到用户需要预定的火车票,在火车票后面单击预订,可以购买到所需的火车票。

购票成功如图4-9所示。

图4-9用户预订火车票成功

点击查看订单,用户可以看到自己订的所有火车票,界面如图4-10所示。

图4-10用户查看订单

4.3.2退票

用户可以在用户界面,也可以在用户订单里单击退票,进入退票模块。

如图4-11所示。

图4-11用户退票

用户找到要退的火车票,单击后面的退票,就可以退票了。

退票成功的界面如图4-12所示。

图4-12用户退票成功

点击确定,呈现如图4-13所示。

图4-13退票完成

可以看到我的火车票里,没有了刚才退的票。

这部分模块,本课程设计采用一个重读原来的显示函数实现的。

函数代码如下:

publicvoidreread()

{

this.车票预订表TableAdapter.Fill(this.火车票管理系统DataSet2用户退票.车票预订表);

}

如果退票成功,在退票按钮下,调用这个函数,代码如下:

if(ExecuteNonQuery(strSql,conn)>

0)

MessageBox.Show("

退票成功"

"

提示!

"

);

reread();

else

退票失败!

4.3.3查看用户信息

用户进入用户界面后,单击查看用户信息,可以看到自己的注册账号和登录密码。

界面如图4-14所示。

图4-14查看用户信息

4.3.4用户修改密码

用户进入用户界面后,单击修改密码,进入修改密码界面如图4-15所示。

图4-15用户修改密码

4.3管理员模块

管理员可以注册用户账号,拥有用户所拥有的所有模块,包括列车信息查询,购票,退票,查看用户信息,查看订单,修改登录密码。

并且管理员还有自己特定的账号,具体增加车票的权限。

管理员运行界面如图4-16所示。

图4-16管理员运行界面

管理员输入车票车次,出发地和出发时间等相关信息,单击增加车票,弹出如图4-17界面。

图4-17管理员增加车票

单击确定,车票添加成功。

用户就可以买这班火车票。

5设计代码

//登录

privatevoidbtnLogin_Click(objectsender,EventArgse)

cApp.m_User.m_User=txtName.Text;

cApp.m_User.m_Type=txtidentity.Text;

stringuserName=txtName.Text;

stringpassword=txtPassword.Text;

stringtype=txtidentity.Text;

if(txtName.Text=="

||txtPassword.Text=="

||txtidentity.Text=="

MessageBox.Show("

登录账号或密码,身份不能为空!

警告"

MessageBoxButtons.OK,MessageBoxIcon.Warning);

if(txtidentity.Text=="

用户"

SqlConnectionconn=newSqlConnection();

conn.ConnectionString="

DataSource=2013-20141011IV;

InitialCatalog=火车票管理系统;

UserID=sa;

Password=123456"

;

conn.Open();

stringcmdStr="

select*from用户表where用户号='

+userName+"

'

and密码='

+password+"

//定义查询语句

SqlCommandsqlCom=newSqlCommand(cmdStr,conn);

//定义查询命令

SqlDataReadersdr=sqlCom.ExecuteReader();

if(sdr.HasRows)

this.Hide();

userU_user=newuser();

U_user.Show();

登录账号或密码错误!

错误"

MessageBoxButtons.OK,MessageBoxIcon.Error);

conn.Close();

Initial

Catalog=火车票管理系统;

stringcmdStr="

select*from管理员表where管理号='

+

userName+"

managerM_manager=newmanager();

M_manager.Show();

MessageBoxButtons.OK,MessageBoxIcon.Error);

//用户购票

privatevoiddataGridView1_CellContentClick_1(objectsender,DataGridViewCellEventArgse)

if(txtusername.Text==string.Empty)

MessageBox.Show(this,"

请输入乘客姓名!

"

PhoenixInformation:

MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

return;

if(txtshenfen.Text==string.Empty)

请输入乘客身份证号!

inta=dataGridView1.CurrentRow.Index;

try

stringstrSql="

insertinto车票预订表(出发日,用户号,姓名,身份证号,车次,出发地,出发时间,目的地,到达时间,车票价格)values('

+dtp.Value+"

+cApp.m_User.m_User+"

+txtusername.Text+"

+txtshenfen.Text+"

+dataGridView1.Rows[a].Cells[0].Value+"

+dataGridView1.Rows[a].Cells[1].Value+"

+dataGridView1.Rows[a].Cells[2].Value+"

+dataGridView1.Rows[a].Cells[3].Value+"

+dataGridView1.Rows[a].Cells[4].Value+"

+dataGridView1.Rows[a].Cells[6].Value+"

)"

//连接字符串

stringconn="

DataSource=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1