欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    铁路售票系统设计与实现.docx

    • 资源ID:1421649       资源大小:310.34KB        全文页数:37页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    铁路售票系统设计与实现.docx

    铁路售票系统设计与实现摘要进入十四五后,国民的经济水平得到大幅度的提高,人们的生活水平有了质的提升,人们有了出行的经济条件。加上近年来国家各种旅游政策的出台,大家的出行需求日益增大。而高铁凭借着安全、快速、经济等优点当仁不让成为人们出行的首选交通工具。然而,人们出行产生的大量的购票需要给铁路部门带来了非常大的压力。就现如今正在使用的12306购票平台,也会出现不少的问题,宕机也是出现过的。在人们需求仍会增加和现今系统仍需继续完善的情况下,铁路售票系统仍需要进一步的研究和探讨。本论文所提出的城际铁路售票系统采用了基于ThinkPHP+Bootstrap技术实现。ThinkPHP作为城际铁路售票系统服务器的后台开发语言,BOOtStraP用于编写前台的网页,向用户提供可视化的操作页面。该系统的开发运用到的是目前比较受欢迎的B/S模型、MySQ1.数据库。开发利用PhpStorm编写代码。系统的开发工作过程中,包括需求分析、设计与实现、系统测试等。满足人们在线进行注册、登录、查询车票、购买车票、改签、退票等操作。本文以广珠城际为例,使用广珠城际现有的相关票务数据和列车开行数据,研究城际铁路售票系统。研究的路线为:前期收集有关铁路售票系统的相关知识,进行铁路售票系统的需求分析;针对售票系统做出的需求分析做系统设计、数据库设计;编码实现系统的各个功能;导入现有的广珠城际相关数据,测试系统的完整性、健壮性等。最后对实现的系统做出评价与未来的展望。关键词:城际铁路;系统开发;售票系统;ThinkPHP;Bootstrap第一章绪论1.1研究背景及意义铁路是国民经济的大动脉、基础设施、民生项目,是国家综合运输系统的支柱,是国民经济和社会发展的重要载体。在我国由高水平的经济向中高速发展转变的背景下,我国的发展形势已经发生了根本改变川。综合国力提高,城市规模进一步扩大,也带动城市轨道交通的高速发展。城市轨道交通以其经济、舒适、环保、安全、快速的特点在公共交通中的地位和客流规模稳步上升。2022年底,中国铁路营运总里程突破15万公里,全国铁路新增运营里程超过4000公里,其中高铁里程约2150公里。12月30日,京港高铁安九段开通运营,至此,中国高铁运营里程突破4万公里,稳居世界第一。随着社会经济的迅速发展,旅客的流动性越来越大,对基础设施、票务系统和其它服务也产生了很大的影响。为此,中国铁路于2011年推出了网络预订服务,以满足旅客的不断增加。根据数据显示,2022年春运期间的旅客达到2.18亿人次。2020年是疫情爆发的头一年,2020年春运有2.1亿人次的旅客运送,与上一次的春运相比,2019年的春运有4.1亿人次的旅客。因特网售票服务使人们的购票更加便捷,也降低了车站在实际售票设备、人力等方面的投入,为乘客提供了更加便捷、快捷的购票渠道。除了普通列车的客流量有所增长,京津城际高铁2008年建成后,高铁客运量已由0.5%上升到20.5%,而城铁、高铁等中短途客运的普及使得旅客对即时购票的需求更加突出。面对广大民众出行购票需求的增加。铁路的售票工作作为铁路运输的重要一环,得到了铁路部门的重视,自2011年春运开始启用12306网上售票系统以来,该系统承担起了超过50%旅客的购票需要,虽然网上售票推出使用的初期出现了过宕机、黄牛刷票、访问量过大导致死机等情况。但是经过十几年的发展,铁路网上售票系统已日趋完善,成为人们订购铁路车票的首选方式之一。未来,为提升运输服务质量,满足庞大的旅客购票需求。提升系统的稳定性,避免出现宕机;提高系统的安全性,避免黄牛的刷票;是本课题的研究方向和目标。我们有理由相信经过我们不断的努力,售票系统将完善到一个新的高度。广珠城际起点广州南站,分为广州南站至珠海和小榄至江门两条线路,承担着珠三角的大部分客流,连接起珠三角主要客流区域,是珠三角旅客运输的中坚力量和代表。本课题以广珠城际为例,以广珠城际现有的票务及列车开行数据,研究城际铁路售票系统。城际铁路售票系统实现了旅客购票,查询余票,改签等核心功能,改变了过去人工售票模式。其次,减少了相关票务的管理人员,由计算机核算票务。不仅如此,售票系统的投入使用,还能进行票务统计分析、客流统计分析,客流预测、客流营销分析等。为铁路部门决策提供科学的依据。除此之外还具有以下研究意义:(I)购票更加便利化。铁路售票系统带来的最大改变就是改变了传统的售票方式。乘客可以足不出户购买车票,查询开行的车次、时间、余票等。购票更加的方便和便捷。提升运输服务质量,也提升了铁路运输的竞争力。(2)减低铁路运输的成本。售票是铁路运输中不可或缺的一环。传统的窗口式的售票方式限制了铁路运输的发展。售票系统的投入使用后,可以减少铁路运输部门对人工售票的资金投入,减少人工窗口服务人员的工作压力。(3)提高铁路运输的效率。实现铁路部门对票务进一步的管理。1.2 国内外研究现状铁路售票系统最早是美国在1994年最先投入使用。经过多年的发展,世界上各国都已基本拥有本国自己的铁路售票系统,其中就以德国、日本以及我国的铁路售票系统为代表,成为铁路售票领域的领头羊。1.2.1 国外研究现状德国铁路公司为旅客提供售票服务,包括旅游商店、售票机、网络售票、电话售票和火车上购票。在网络购票系统中,德国推出电子邮件e-ticket服务,深受旅客青睐。德国铁路网络购票也是欧洲最受欢迎的购票站点,每日平均有800,000人次访问。德国的网络购票也非常便捷,购买完票后可以直接用信用卡支付,也可以在自动售票机直接用现金支付。目前德国最新的售票系统也更加的现代化,适用于短途、长途运输、触摸式操作界面、现金或非现金的支付方式,采用统一标准的硬件和系统,改善运营管理,提高可用性。日本现有的铁路售票系统(MARS)是六个日本公司的共有和使用。有预定座位、补票、优惠券的发售、剧院和酒店预订券。不过,在火车票的销售上,(MARS)仅发售新干线、急行、特急等专列专座及长途汽车。目前,该系统已有超过8000个终端,每日可处理超过110,000个用户。每日售出两百万张,超过10%的日本火车发运量。美国率先开发并应用了在线购票系统,并于1994年十月正式启用。直至1997年底,全球有20家铁路公司推出了自己的网上售票系统。1.2.2 国内研究现状梅笑冬在2004年对上海铁路局开行的5趟京沪列车建立网上购票系统及流程进行了描述,结合电子商务的快速发展,给铁路客运服务的发展带来契机,通过市场预测,特性分析,技术解决方案,实践方案探讨论证网上售票系统的可行性。杨琳洁也是在2004年,结合网络的发展的强大动力,对网络购票进行了可行性的研究。1999年,杨林以银行卡、网上支付为切入点,论证了运用银行卡、网上支付等,建立售票系统的可行性。宋晓阳在2001年,利用银行ATM机原型,模仿、设计、实现出了列车售票系统的。王颖在2014年提出了基于.NET的三层技术体系结构,采用ASP.NET技术,有效地开发了列车售票系统,采用AJAX技术进行异步通讯,使用户在不刷新的情况下完成多个工作。在我国,铁路网上售票系统起步较晚,一方面互联网引入我国较晚,发展缓慢,另一方面我国经济发展落后,铁路建设缓慢。直至2(X)0年,北京铁路局首先推出“首铁在线”网站,成为我国第一个网上售票系统。拥有查询车票和预定等多种服务。但是,也出现了一些问题,在一些买票的高峰期,往往买不到票,即使在非高峰期,也很难买到一张热门的车票,究其原因,没有对系统进行试点运行。网站运行8年后,关闭了查询车票等服务。第二个国内上线的售票系统是2009年6月4日上海铁路局的网上预约系统,但是自上线后,频繁接到投诉,上海铁路局层层压力下,上线没几天的售票系统就匆匆下线。现如今,我国的铁路售票系统经过了十几年的发展,经过大小节假日、春运购票高峰期的考验,铁路12306网上售票系统已日趋完善,满足人们的日常购票需要。综上所述,我国铁路售票系统的发展艰难而漫长。铁路的售票业务是一项极其复杂的系统工程,售票系统需要不停的发展和更新完善,我们也应该继续研究这一课题,助力我国的铁路运输。1.3 研究内容及思路铁路售票系统是一项极为惠民的工程,系统的主要功能是解决人们在购买车票时的难题,帮助人们完成车次开行的相关信息查询、车票信息查询、停站信息查询、开行和到站时间查询、购票、退票、改签等。购票系统具有多种功能和复杂的服务。目前.,我国的科研工作还面临诸多困难,亟待解决。因此,本论文重点对铁路车票的全过程进行了研究,并对车票的各个环节进行了研究。需要对问题进行论证和研究。主要的内容如下:(1)对铁路车票的有关业务过程进行了深入的研究,并结合自身的工作经验和与铁路相关人员的交流,总结出自己的经验。认真学习和总结列车票务系统的整体运作和每一个运营环节。研究售票系统要实现的目标。(2)探讨我国铁路客运专线建设中遇到的一些问题。包括售票各个流程之间的关联、每个业务之间的业务逻辑、系统编码开发实现过程中出现的技术难点等。本文重点探讨了在铁路售票系统中应用ThinkPHP的后台实现,研究如何使用Bootstrap前端框架实现铁路售票系统的网页。研究如何设计售票系统的数据库等。(3)研究铁路售票系统需要的每个功能。为提高系统的完整性,满足人们在线查询、注册、登录、购票、退票、改签等需要,研究铁路售票系统的主功能和相应的子功能。在实现这些功能的基础上,力求网页设计更加的人性化,操作简单、方便。本课题研究的铁路售票系统相较于铁路部门正在投入使用的12306网上购票系统。仅限能提供一套完整的购票的功能。在系统的结构上、安全性上、性能上,12306网上售票系统更加的健壮和完善,有着无法比拟的优势。12306网上售票系统提供了购票、货运服务、订外卖、车站接送、车站大屏信息显示查询等功能。本课题研究的铁路售票系统只研究了售票这一环节的功能实现,但是能让初学者更加方便学习和模拟购买车票的业务流程。具备部署简单方便的特点,方便演示等特点。本文共分六章,围绕着整个系统的开发过程,每个章节编排具体如下:第一章为绪论。首先对这个选题的一些研究背景、意义、国内研究现状、国外研究现状和研究重点进行了阐述。第二章为系统使用的关键技术。简要概述铁路售票系统所运用到的技术,包括现实系统开发使用的编程软件、平台、编程语言、数据库等进行必要的介绍,并且做出选择该技术的说明。第三章为系统需求分析。总结所收集的资料,在分析、分析和总结分析过程中的问题,制定系统的规范。从需求分析、非功能需求分析、设计约束等方面表现出来。第四章为系统的设计以及实现。并对其具体的相关设计与实现进行了详细的阐述。结合系统的具体设计,对实现的系统进行截屏并在相应的地方附上。第五章主要为系统测试的主要工作。简要概述了系统测试的一些重要意义、步骤、内容,总结测试工作的结果,指出测试中及测试结果的优点、欠缺之处。第六章为总结与展望。总结城际铁路售票系统的工作过程、结果。本文的结构如图1.1中所示:WEB服务器系统流程用户层服务层控制层图1.1论文技术路线数据层第二章系统关键技术2.1 B/S模式B/S架构是指浏览器/服务器架构的网络技术,它只需要安装、开发和维护服务器,而客户机则通过浏览器来获取服务。它是因特网技术的崛起,是整个因特网技术的中心,同时也是C/S体系结构的一个完善。该模式采用万维网的技术,并结合网页使用SCriPt脚本技术,实现技术的革新,使得简化了开发、维护和使用上的物力、人力的投入。B/S是一项新的软件架构技术。它仅需安装数据库到WEB的服务器上,开发相应的服务,就能使用户与系统进行了交互“°】。B/S模式的应用有如下优势:(1)价格低廉,易于操作。B/S模式下开发的网络服务。用户不必安装客户机,省去了客户的麻烦,降低了企业开发客户机的费用。用户通过浏览器,就可以得到他们所需的信息。(2)易于维护和扩展业务。B/S模式中没有客户机,企业不需要为客户机的维护而烦恼。仅需要对服务器进行维护或升级,即可实现业务的变更和扩展,从而降低系统维护的工作量和费用。(3)兼容性强。B/S模式采用的网页协议可以在不同的设备和平台上使用。PC、平板、智能手机等。不因用户使用的设备而受到影响,用户可以获得无差别的服务。(4)更加安全。B/S模式下,通过网络服务器、业务服务器、数据库等多种方式来验证用户的身份,使系统的安全性得到了很大的改善。B/S的结构如图2.1用户层服务层控制层数据层图2.1B/S结构WEB服务器第二章系统关键技术2.2 ThinkPHP框架ThinkPHP是一个极具轻量级特性的PHP开发框架。具备诸多的优点:免费、简单、开源,快速。强调使用方便,同时保留优秀的性能和简单的代码。遵循Apache2开源许可协议U1.ThinkPHP可以支持windows/1.iunx/Unix等多种服务器环境,同时支持MySQ1.等多种数据库,具备强大的兼容性。2.3 Bootstrap框架BoOtStraP是目前最受开发人员欢迎的前端框架之一。因BOOtStraP基于HTM1.、JavaScriptWCSS,让网站的开发变得简单和快速。BOOtStr叩为HTM1.和CSS代码提供了严格的规范,符合广大开发人员的开发习惯。同时,Bootstrap也是一项开源的项目,因此受到开发人员的欢迎。基于HTM1.和CSS开发,BOOtStraP使用了jQuery,因此也就拥有了它的全部特性。Bootstrap包含开发人员所需所有需要的内容,例如使用率高的按钮、下拉菜单、进度条、分页、导航条等。网页所需样式全面,开发人员调用十分方便。2.4 MySQ1.数据库MySQ1.是由瑞典的一个公司开发,是一个小型的关系数据库。得益于开源这一特性,MySQ1.被应用在中小型网站中的比率非常高,应用在大型网站中的份额极小。尽管如此,MySQ1.还是具有以下的优点:(1)速度快。MySQ1.是目前最快的数据库,MySQ1.内置了多种算法,可以完美应对数据量庞大的情况下的查找和响应时间,针对使用频率高的资源和使用频率低的资源做出了优化,提高数据库的性能。(2)安全与连通性。具有多种安全权限及灵活口令的系统。在连接到数据库时,系统的全部口令都是加密的,以确保网络的安全。(3)跨平台。MySQ1.强大地支持20多个开发平台,完美解决在不同平台上的移植问题,且无需对数据库进行任何改动。(4)成本低。MySQ1.是一款免费开源的产品,开发人员可以免费使用MySQ1.进行生产和学习。2.5 MVC设计模式MVC全名是ModelVieWCOmrOller,是当前最受欢迎的软件设计范例。主要包括三个主要模块:第一个是业务逻辑处理的控制器(Comroner)模块、第二个视图(VieW)模块负责可视网页、第三个是处理数据库的模型(MOdeI)模块。分离了业务逻辑、数据和显示界面,一次来组织代码的方式。MVe设计模式可以单独对一个模块进行修改而不涉及整个系统的调整。如VieW模块。需要改进或是定制个性化的用户界面时,只需修改VieW模块中的代码,而无需改变模型中的相关信息,控制器中的相关业务逻辑。本文中MVC的设计模型在ThinkPHP架构中运用。下图2.2展示了MVC的模型:Controller协调控制Model>数据View>显示图2.2MVC模式2.6 本章小结本章介绍了铁路售票系统使用的相关技术。先后介绍了B/S模式、Bootstrap前端技术、ThinkPHP后台服务器技术、MySQ1.数据库、MVC设计模式。详细对这些技术做了阐述,并且对选择这些技术的优点做了总结,最后对部分模型进行画图说明。第三章系统需求分析需求分析是每个系统开发必不可少的一部分。在这个环节里。需要对铁路的售票相关功能和业务深入研究和调研。对系统的功能、服务、行为和系统设计做出必要的分析,做到十分的了解,以此来确定系统开发的目标。客观分析系统可以达到的目标、限制因素,把握系统开发的每个环节。3.1 功能性需求分析3.1.1 系统总体需求分析通过分析票务业务流程,确定售票系统使用对象仅分为两个角色,用户跟管理员。针对不同的角色,制定相应的功能。下图3.1为系统总体功能需求模型图。城际铁路售票系统用户模块管理员模块用户注册、登录子系统用户信息管理子系统车票查询子系统购票子系统列车管理子系统管理员登录子系统用户信息管理子系统图3.1系统功能用例模型3.1.2 用户模块需求分析用户注册登录子系统需要完成用户的登录和注册。登录功能实现系统对用户身份的识别,是购票、查询用户信息等功能操作的前提。针对用户可能出现的不同操作方式,登录功能需要完成两种场景需求的设计。一是用户进入铁路售票系统直接登录后购票,用户可以直接购票。二是用户进入铁路售票系统后查询车票后购票,系统应提示用户需登录后方可购票。登录成功跳转到下单页面。为增强系统的健壮性,登录功能仍需加入验证码防止攻击,加入登录失败多次禁止登录等功能。注册功能需满足用户注册的需求,需对注册填写的信息进行设置,设置必填项、非必填项等。为应对恶意注册,注册也需要加入验证码才能注册。下图3.2为用户登录的流程用例模型图。登录购票城际铁路售票系统用户信息管理子系统需要实现已登录的用户查询并且修改自己信息的功能。例如修改绑定的手机号码、邮箱和登录密码等功能。对于非登录的用户进入用户信息管理子系统则需要提示用户登录或自动跳转登录页面。用户的信息至关重要,用户信息的修改流程应更加的严格,大体需要经过查询、输入修改信息、确定修改信息、获取和填入手机或邮箱验证码等流程。所有流程必须正确才可完成修改。车票查询子系统需要实现已登录用户对己购买车票的列车信息查询。用户需在查询车票信息前登录成功,拒绝未登录的用户进行访问。车票查询功能需满足用户对已买车票进行查询,改签,退票等操作。根据不同的功能,用户可以通过查询车票信息,如列车运行时间、站点信息、座位信息等。改签功能应实现对车票的改签,跳转至购票系统,输入必要的信息,选购合适的车票,提交订单等操作成功后生成新的订单、车票信息。原车票及订单显示已改签等信息。购票子系统需要实现用户在线购买车票。针对用户的身份不同。分为成人票和学生票。实现用户购买不同类型车票和选座的需求。购票子系统需要用户输入必要的信息,起点站、终点站、出发时间等信息。购票子系统根据用户提供的信息查询开行的列车,显示满足用户的所有列车信息,经用户选择列车、填写订单信息、提交并生成订单、最后支付订单后成功购买车票。3.1.3 管理员模块需求分析列车管理子系统需要实现增加开行列车、查询所有的列车信息,修改列车信息和删除开行的列车。对于增加开行列车功能,针对不同的使用场景,需要实现批量导入和单个导入,批量导入主要面对日常开行计划变化小的情况,单个导入主要面对临时加开列车等情况。查询所有列车信息需要显示列车的开行、终到时间,每个停站的站点信息和停站时间等。修改列车信息主要实现对列车的开行时间、停站站点进行修改。删除列车信息主要应对临时停运、列车故障等无法开行时的特殊场景。管理员登录子系统主要为了对管理员的身份识别,因管理员的权限重要且较大,也需对管理员的登录做验证码、登录失败次数限制。同时,不提供管理员账号自行注册功能,需登录初始管理员账号登录后由管理员添加注册。用户信息管理子系统的主要功能有:修改、查询。考虑到管理员日常某些需要高频使用到的功能,例如重置用户密码,设计一键重置用户密码功能;一键查看异常账户功能,方便管理员对用户账户的管理。3.2 非功能性需求分析非功能性需求是对系统硬件、软件、性能等方面的要求。是保证系统持续、正常、稳定运行的必要条件。3.2.1 系统性能需求分析系统性能是保证用户使用良好体验的重要指标之一。要求城际铁路售票系统需要达到用户使用时页面流畅不卡顿。业务处理迅速,减少用户的等待时间等,提高系统的响应速度。针对系统使用BoOtStraP框架编码前端网页,网页加载需要加载框架、图片、控件等资源。网络也是影响系统性能的重要指标之一。精简网页,做相应的优化提高用户的网页打开速度。在系统满足性能的要求下,仍需满足以下几个方面川:(1)针对用户访问的硬件设备及操作系统的不同。需要考虑兼容,因售票系统只开发网页版,只需考虑用户访问时使用的浏览器类型及版本。现如今主流使用的浏览器有Safari>Chrome、Firefox>IE四种。四种浏览器的内核各有差别,但支持的协议大同小异,考虑到本次系统开发上没有运用到新技术、某个浏览器特有功能。网页制作时应遵循W3C标准,能极大提高网页的兼容性。(2)系统拓展性需要系统具备增加或减少系统某个功能模块的功能,并且支持对系统的修复和升级等。系统在开发时充分考虑为应对业务变动而带来对系统拓展上的要求,满足为其他公司系统提供服务的接口,也需满足其他公司系统为本系统提供服务的接口。在系统的拓展性上制定一套统一的标准,提高系统的拓展性。(3)系统稳定性要求系统足以应对用户访问量大、用户输入异常及系统出现的一些异常情况下,不影响主要业务的正常工作。系统工作面对的问题是错综复杂的。可以分为自身因素及外来的因素。自身因素可能来自系统崩溃,重启等情况。外来因素主要来自用户异常的数据,网络攻击等情况。为应对此类不利因素而带来的系统稳定性考验,应在系统测试时制定针对性的测试方案,测试系统的稳定性。(4)系统界面要求简洁、方便、直观。操作流程简单明了,对用户操作有指导作用,避免冗余繁琐。遵循这一设计原则基础上,追求界面更加人性化,符合大众的审美,力求得到用户的喜爱。3.2.2 系统硬件需求分析硬件需求分析主要分析系统前端、后端两个方面。前端主要为用户使用浏览器访问城际铁路售票系统,数据的处理主要由后台服务器负责,对用户访问的设备性能要求极低。在服务器中,要充分考虑庞大的用户在同一个时间点访问,产生大量的数据。这时对服务器高负载情况下的处理应对能力、数据库的查找能力、网络传输能力提出较高的要求。在开发测试的平台上。服务器运行在WindowslO系统上,IT硬盘、16G内存、ImeIi5的平台上,使用100M的网络连接。能满足庞大的用户访问而不宕机且不卡顿。3.2.3 系统软件需求分析铁路售票系统在技术上使用ThinkPHP+Bootstrap开发。系统开发更加符合开发标准,代码运行更加高效,减小系统负担。数据库使用MySQ1.,选择NaViCatforMySQ1.对铁路售票系统的数据库进行连接。这是一款专门针对MySQ1.连接的软件,提供专业化的视图操作窗口,测试调试时减少数据库命令的使用,减少开发人员的工作量,工作更高效。WEB的服务器可以使用WampServer,它可以整合mysql,php,叩ache,只需要一次简单的安装和部署,就可以实现整个系统所需要的运行环境。广泛应用于学习生产中,得到开发人员的青睐。3.3 本章小结这一章着重介绍了铁路售票系统的需求分析。从系统功能需求和非功能需求两个方面进行论述,对铁路车票系统进行了综合分析,主要涉及铁路售票系统应完成的功能及达到的目标,系统的性能等方面。为下一步设计及实现明确方向。第四章系统设计及实现4.1 系统总体功能架构根据旅客的需要,铁路售票系统分为两个主要模块:用户的模块和管理员的模块。在图4.1中显示了整个系统的功能体系结构:城际铁路售票系统管理员模块查询用户订单-1用户信息管理子系统"-修改用户信息_查询用户A管理员登录子系统工登录I-I查闻列乍-I修改列车酊I-I列车管理子系统lTj-I删除列车车次I-I增加列车却用户模块图4.1系统总体功能架构模型整个铁路售票系统结构清晰,功能完整全面。用户注册、登录子系统包含注册和登录两个功能,是系统完成对用户新注册和身份识别的重要环节。通过这两项功能,用户可以很容易地完成自己的账号注册,并利用自己的账号登录系统,享受到系统所提供的服务。用户信息管理子系统主要包含查询个人信息和修改个人信息两大功能。满足用户的查询和更改。车票查询子系统实现了对购票的查询。包含购买车票、改签车票、退票。购票子系统主要包括填写购票信息、生成订单和在线付款,是整个系统的功能核心。管理员立车管理系统由增加列车车次、删除列车车次、修改列车车次查询列车车次四大功能组成,管理员实现对列车的全面管理。管理员登录子系统只提供登录功能,初次使用提供一个默认账号登录,需要新增管理账号则需要管理员登陆系统后添加,不允许自行注册添加。用户信息管理子系统由查询用户信息、修改用户信息、查询用户订单三大功能组成,覆盖了用户个人信息及车票信息。4.2 系统功能模块详细设计城际铁路售票系统分为两个主要模块:用户和管理人员,以及7个子系统,各子系统具体设计如下:(1)用户注册和登录子系统包括注册和登录两部分。账号的注册与登录是获取系统服务的先决条件。注册并登陆后,可进行购票、改签、退票、查询、修改等操作。而未登录者,则只能在系统主页上浏览。在用户访问该系统后,系统会向用户展示出该系统的主页,然后用户可以进行注册或登录。下面的图4.2显示了有关的过程:图4.2用户注册、登录时序图(2)用户信息管理子系统包含了修改跟查询用户信息的功能。在访问修改用户信息时,用户可以修改用户名、密码、手机号等,但是用户的身份证号码是不能更改的。若用户使用手机号码登录系统,手机号码为上一个主人弃用后被通信公司回收销售导致用户信息不一致等情况,则提供用户注销账号后重新注册功能。用户登录后,系统首页提供用户信息查询和修改的入口,点击相应的链接进行查询和修改。若是用户未登录,系统首页隐藏用户信息查询和修改的入口,若是用户通过历史记录直接访问用户信息查询或修改功能的网页,系统应拒绝访问,并提示用户未登录,跳转至登录页。相应操作如下图4.3所示:图4.3用户信息查询、修改时序图(3)车票查询子系统由已购车票查询、车票改签、退票三大功能组成。车票查询主要满足用户对自己购买的车票进行查询,了解已购买车票的出发时间、座位、站点等详细信息;车票改签,主要实现对已购买车票进行改签,需要用户点击己购买的车票的改签按钮,跳转至购票子系统,查询列车并选择合适的车次,生成订单并支付才完成改签操作;退票,主要实现对已购买的车票进行退票,用户按下退票键后,需要进行系统的提示,确认后,系统才会进行退款。车票查询子系统所有的功能需要用户登录后才能正常访问。在改签、退票之前,必须先进行火车票的查询,然后在系统的提示下,进行下一步的操作。至于退票功能,在点击退票后,系统会发出确认的“确认”操作,确认后,系统才会立刻进行退款,金额原路退回,同时该票也会显示退款。车票改签功能需用户点击改签按钮后重复一次购票操作,订单生成后原车票将标注原车票已改签。操作时序如图4.4所示:首贝登录隼票查询改签选择车次填写订单用户访问用户登录1.登录成功用户杳询车票,用户点击改签一返回E.用户输入起点、终点、时间等查询选择列举填写信皂一订单生成成功、改签成功图4.4用户改签时序图(4)购票子系统由填写订购票信息,生成订单,在线付款三大功能组成。是论文的研究的核心内容,也是系统的核心功能。主要实现用户从查找合适列车,选择车次,填写订单信息,生成订单,网上支付等操作完成购买。购票子系统考虑用户使用操作习惯。分为用户登录后买票和未登录先查询列车后买票两种情况。当用户访问首页登录后买票时,登录成功后返回首页,输入起点、终点、出行时间等信息查询列车,用户选择合适的车次后填写订单相关信息提交,系统生成订单,用户进行网上支付,用户支付成功则提示支付成功并展示车票的信息,若用户支付失败且未在规定时间内支付成功则订单被自动取消。当用户访问首页未登录直接输入起点、终点、出行时间等信息查询列车,系统展示查询到的列车车次,当用户选择合适的车次后系统则提示用户未登录,需登录后进行下一步并转到登录。登录成功后填写订单信息。相关流程如下图4.5所示:图4.5用户购票时序图(5)列车管理子系统由增加列车车次,删除列车车次,修改列车信息和查询列车车次四个功能组成,是保证用户正常购票的前提。管理员需添加开行的列车及相关信息,用户输入相关信息才能查询到列车。针对特殊情况,如临时加开列车、临时停运等情况,管理员新增列车信息或修改列车相关信息,用户即可购买加开列车的车票或禁止购买停运列车车票。相关流程如图4,6所示:查询列车车次图4.6管理员子系统操作时序图(6)管理员登录子系统仅提供管理员登录功能。管理员权限高,对系统的影响大。管理员登录需受到的限制应更加严格。管理员的登录入口不能出现在用户模块的子系统中,需独立设计并提供给特定人员,由系统提供初始管理员账号。(7)管理员可以查询和删除用户的车票跟用户的信息。考虑到口常管理员的日常工作,如恢复账号、重新设置密码等频繁的业务,设置管理员一键查询账号、一键重新设置密码等。在图4.7中显示了有关的流程:登录首页查询用户信息修改用户信息查询用户订单管理员登录登录成功添加列车车次修改用户信息杳泡用户订单图4.7用户信息管理子系统操作时序图4.3 数据库设计数据库设计主要通过E-R图和数据库表设计分别进行介绍。E-R图主要是对数据结构做出直观的描述,数据库表更加突出数据的细节,以此明确数据结构的特点并加以实现。4.3.1 E-R图E-R图是一种概念模型,是为了描述现实世界中的实体联系,包含了表示属性(元素)、实体类型、联系的方法。E-R图是由:联系、属性、实体组成。系统中满足的主要实体有:订单信息实体、列车座位信息实体、站点信息实体、列车信息实体、用户个人信息实体。如图4.8为订单信息E-R图。图4.8订单信息E-R图列车座位信息实体中包含座位号、车次号、1至122主体属性。1至12_12用于标记座位的占用情况。如某个用户购买从始发站到第三个车站,则1、2_2、3_3写入1表示占用,4_4至122写入O表示未被占用。用户从3_3站下车后,该座位车票可以重新发售。如图4.9为座位信息E-R图。站点信息实体包含编号、站点名、里程三个主体属性。编号为1至12,与座位信息至122对应。如图4.10为站点信息ER图。图4.10站点信息E-R图列车信息实体包含列车车次号、列车方向、始发站、终到站、始发时间、终到时间、日期主体属性。如图431为歹IJ车信息E-R图。图4.11列车信息E-R图用户信息实体中设置的属性中包含了必要的密码、用户的手机、用户名、身份证id、邮箱等。具体如下图4.12展示。图4.12用户信息E-R图4.3.2 数据库表从数据结构上分析,数据库表的设计主要包括订单信息表、座位信息表、车站信息表、列车信息表、用户信息这5个主要的表。(1)订单信息表。该表存储了订单的编号、用户名、用户身份证、车次号、出发站、到达站、出发时间、到达时间、票价、订单号、下单时间、座位和订单状态。下表4.1为订单信息表。表4.1订单信息表(order)字段名数据类型是否为空备注idintNotNull主键namevarcharNotNull用户名idcardvarcharNotNull身份证trainjdvarcharNotNull车次startvarcharNotNull出发站endvarcharNotNull到达站start_timetimeNotNull出发时间end_timetimeNotNull到达时间coatdecimalNotNull票价order_idvarcharNotNull订单号create_timetimestampNotNull下单时间seatvarcharNotNull座位statevarcharNotNull订单状态(2)用户信息表。这个表格设计储存了用户名、用户编号id、密码等信息。下面的表格4.2为用户信息表。表4.2用户信息表(USer)字段名数据类型是否为空备注idintNotNull主键namevarcharNotNull用户名pswvarcharNotNull密码idcardvarcharNotNull身份证phoneintNotNull手机号码mailvarcharNotNull邮箱(3)座位信息表。该表存储了座位编号、列车车次、情况。下表4.3为座位信息表。表4.3座位信息表(seat)座位在每个车站的占用字段名数据类型是否为空备注seat_idintNotNull主键train-idvarcharNotNull车次号1_1tinyintNotNull座位占用标识2_2tinyintNotNull座位占用标识3_3tinyintNotNull座位占用标识4_4tinyintNotNull座位占用标识5_5tinyintNotNull座位占用标识6_6tinyintNotNull座位占用标识7_7tinyintNotNull座位占用标识8_8tinyintNotNull座位占用标识9_9tinyintNotNull座位占用标识10_10tinyintNotNull座位占用标识tinyintNotNull座位占用标识12_12tinyintNotNull座位占用标识(4)车站信息表。该表存储了车站编号、车站名、车站里程信息。下表4.3为站点信息表。表4.4车站信息表(sit)字段名数据类型是否为空备注idintNotNull主键placevarcharNotNull车站编号distanceintNotNull车站里程(5)列车信息表。该表存储了列车标号、列车车次、列车运行方向、始发站、终点站、始发时间、终到时间、日期。下表4.5为列车信息表。表4.5列车信息表(train)字段名数据类型是否为空备注idintNotNull主键train_idvarcharNotNull列车车次direstiontinyintNotNull列车方向startvarcharNotNull起点站endvarcharNotNull终点站StarUimetimeNotNull始发时间end_timetimeNotNull终到时间timedateNotNull日期4.4 系

    注意事项

    本文(铁路售票系统设计与实现.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开