车站售票管理系统模板.doc_第1页
车站售票管理系统模板.doc_第2页
车站售票管理系统模板.doc_第3页
车站售票管理系统模板.doc_第4页
车站售票管理系统模板.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计名称: 数据库应用课程设计 专 业 班 级 : 学 生 姓 名 : 学 号 : 指 导 教 师 : 课程设计时间: 计算机应用技术专业课程设计任务书目 录1 需求分析1(1) 功能需求1(2 )数据流图22. 概念结构设计43. 逻辑结构设计5(1) 关系模式5(2) 外模式:54. 物理结构设计7(1)实验环境:7(2)系统软件结构图:75. 数据库实施和维护86. 数据库的操作界面127. 课程设计的过程、体会及建议14参考文献151 需求分析系统应具有售票、查询、管理和维护等功能,系统管理员可以进行对车次的更改、票价的变动及调度功能,票价的修改可以通过修改运价来进行,车次调度可通过对发车时刻表的修改来进行,维护功能即可对表进行修改。(1) 功能需求经过分析后确定系统应具备以下功能:(1) 售票功能1.销售车票任一售票员均可以售权限范围内车次的客票,权限可按班次、车属等属性由管理员设置。可售全票、半票2.预订车票预订票可在任一未停止售票的车次上进行操作,预订数量仅受剩余位数量限制。预订的客票售票员不能售出。预订的客票也可取消预订,取消预订的客票售票员可以售出。在订票人来取票时,售票员可将预订的客票从电脑上售出3.退票退票时由退票员输入客票的编号,计算机将根据退票时的时间,自动确定退票手续费的比例,也可由系统管理员指定手续费比例。 对不合法的客票(如已办理退票手续的客票、超过规定时间的客票、没有售出的客票、已经作废的客票、不属于权限范围内售出的票等),计算机将自动识别,不予退票。(2) 查询功能 车次查询,可以查询各个班次和票情况。 时刻表查询:查询任一时刻的班次和票情况。 售票情况查询:查询已售票和剩余票数的情况 。(3)、调度功能 运价修改:只有管理员有这一权限,根据各种调整票价。 车辆修改:对车辆信息进行调度和增删改功能。 终点站修改:对车次终点站的调度和修改。 车次修改:对各个车次实施调度和调整(4)、维护功能 车票表修改:管理员针对实际情况对车票表的修改和维护 预订车票表修改:管理员根据车票的预定情况对该表进行修改和维护 退票表修改:该功能由管理员根据退票情况进行修改 密码修改:售票员可以根据个人修改自己的登入密码(5)、统计功能 售票统计:可按车次,售票员对已售出票情况进行统计 报表打印:对当天和该月的售票情况及盈利情况做表(2 )数据流图使用结构化分析方法,确定系统的数据主要是运价、车次、终点站名、发车时间和车票,对数据的操作主要有运价修改、车次修改、终点站修改、发车时间修改、售票及打印,可以确定系统的处理逻辑和流程,得到如下所示的系统数据流图。系统管理员车次修改运价修改终点站修改发车修改售票车次表运价表终点站名表发车时刻表查询售票员预订车票表退票表已售车票表报表打印车票已售车票表 定 按票出售情况做车次表 决 着 打印 改 系 查看 售票 修 关 查看 报表 整 决定 出售票 调 体现 修改 发车 包含 查询 时刻 修改 决定 查看已售车票情况 数据字典:经过分析可以得到以下数据流条目:车次表=车辆编号+车型+座位数终点站名表=站名+里程运价表=车型+运价发车时刻表=车次+车辆编号+站名+发车时间+检票口已售车票表=票号+乘车日期+车次+站名+发车时间+票价+全半价+工号+退票否预订车票表=预订号+乘车日期+车次+站名+发车时间+车型+票价+客户名称+订票数量退票表=票号+退票时间+票价+应退款售票员编号=工号+姓名车辆编号=6数字6车次=4字符5车型=1字符8座位数=2数字2检票口=1数字2站名=1字符10里程=1数字5运价=1数字6发车时间=时间乘车日期=日期票号=7数字7票价=1数字5全半价=2字符2退票否=T|F预订号=4数字4客户名称=6字符20订票数量=1数字2退票时间=日期时间应退款=1数字5工号=3字符3姓名=4字符82. 概念结构设计 车辆编号座位号车型车辆开往车次发车时间检票口目标站点里程站名车票售票员售票票号预订顾客车次站名票价座位号全半价乘车日期工号站名车次预订号顾客名称退票退票时间计费运价车型价格nnnn1111票价应退款退票否乘车日期 选定 姓名 n3. 逻辑结构设计(1) 关系模式车辆(车辆编号,车型,座位数)目标站名(站名,里程)发车时刻表(车次,站名,车辆编号,发车时间,检票口)途径(车次,站名)车票(票号,乘车日期,车次,站名,票价,全半价,座位号,工号,退票否)预订表(预订号,车次,站名,乘车日期,顾客名称,票数)退票(票号,退票时间,票价,应退款)售票员(工号,姓名)运价(车型,价格)(2) 外模式:车辆表:字段名类型长度小数点允许空主/外键车辆编号Int4主车型Varchar8座位数smallInt2目标站名:字段名类型长度小数点允许空主/外键站名Varchar10主里程Int4发车时刻表:字段名类型长度小数点允许空主/外键车次Varchar5主站名Varchar10外车辆编号Int4外发车时间Datetime 8检票口smallInt2途径表:字段名类型长度小数点允许空主/外键车次Varchar5主站名Varchar10外车票表:字段名类型长度小数点允许空主/外键票号Int4主乘车日期Datetime8车次Varchar5外站名Varchar10外票价Float8全半价Char2座位号smallInt2工号Char3退票否Char1预订表:字段名类型长度小数点允许空主/外键预订号Int4主车次Varchar5外站名Varchar10外乘车日期Datetime8顾客名称Varchar20票数smallInt2退票表:字段名类型长度小数点允许空主/外键票号Int4主退票时间Datetime8票价Float8应退款Float8售票员表:字段名类型长度小数点允许空主/外键工号Char3主姓名Char8运价表:字段名类型长度小数点允许空主/外键车型Varchar8主价格Float84. 物理结构设计 (1)实验环境: WindowsXP,SQLServer2000,VB6.0 (2)系统软件结构图:车站售票管理系统售票功能查询功能调度功能维护功能统计功能销售车票预订车票退票车次查询时刻表查询售票情况查询运价修改车辆修改终点站修改车次修改已售车票表预订车票表退票表售票统计报表打印5. 数据库实施和维护 用户登入用户名和密码校对:Private Sub Cmdok_Click()Dim username1 As String, username2 As Stringusername1 = Text1.TextIf Option1.Value Then Set Text3.DataSource = Adodc1 Text3.DataField = 口令 Adodc1.Recordset.MoveFirst If username1 Then username2 = 用户名= & username1 & Adodc1.Recordset.Find username2 If Adodc1.Recordset.EOF Then MsgBox 用户名错误请重输, 16, 错误 Else If Text2.Text Text3.Text Then MsgBox 密码错误请重输, 16, 错误 Text2.Text = Else MDIForm1.Show Form1.Hide End If End If End IfElse If Option2.Value Then Set Text3.DataSource = Adodc2 Text3.DataField = 口令 Adodc2.Recordset.MoveFirst If username1 Then username2 = 工号= & username1 & Adodc2.Recordset.Find username2 If Adodc2.Recordset.EOF Then MsgBox 用户名错误请重输, 16, 错误 Else If Text2.Text Text3.Text Then MsgBox 密码错误请重输, 16, 错误 Text2.Text = Else MDIForm1.Show Form1.Hide End If End If End If End IfEnd IfEnd Sub当选中车次显示当前座位号和剩余票数Private Sub DataGrid1_Click()Dim cc As String, sum As Integersum = 0Adodc3.Recordset.MoveFirstAdodc4.Recordset.MoveFirstAdodc6.Recordset.MoveFirstAdodc7.Recordset.MoveFirstAdodc8.Recordset.MoveFirstcc = 车型= & Text5.Text & Adodc3.Recordset.Find cccc = 站名= & Text6.Text & Adodc4.Recordset.Find ccIf Combo4.Text = 全 Then Text2.Text = Int(Val(Text7.Text) * Val(Text8.Text) + 0.5)Else Text2.Text = Int(Val(Text7.Text) * Val(Text8.Text) / 2 + 0.5)End IfText2.RefreshWhile Not Adodc8.Recordset.EOF If Year(Text12) = Year(Date) And Month(Text12) = Combo2.Text And Day(Text12) = Combo3.Text And Text13.Text = Text9.Text And Text25.Text = F Then sum = sum + 1 End If Adodc8.Recordset.MoveNextWendText3.Text = sum + 1Adodc8.Recordset.MoveFirstWhile Not Adodc8.Recordset.EOF If Year(Text12) = Year(Date) And Month(Text12) = Combo2.Text And Day(Text12) = Combo3.Text And Text13.Text = Text9.Text And Text25.Text = T Then Text3.Text = Text17.Text Adodc8.Recordset.MoveLast flag = T Else Adodc8.Recordset.MoveNext End IfWendWhile Not Adodc9.Recordset.EOF If Year(Text22.Text) = Year(Date) And Month(Text22.Text) = Combo2.Text And Day(Text22.Text) = Combo3.Text And Text23.Text = Text9.Text Then sum = sum + Val(Text24.Text) End If Adodc9.Recordset.MoveNextWendcc = 车次= & Text9.Text & Adodc7.Recordset.Find cccc = 车辆编号= & Text11.Text & Adodc6.Recordset.Find ccText4.Text = Val(Text10.Text) - sumText4.RefreshEnd Sub退票时当输入票号后算出应退款Private Sub Text1_LostFocus()Dim cc As StringAdodc1.Recordset.MoveFirstAdodc2.Recordset.MoveFirstcc = 票号= & Text1.Text & Adodc1.Recordset.Find ccText3.Text = Text6.TextText2.Text = Nowcc = 车次= & Text7.Text & Adodc2.Recordset.Find ccIf Not Adodc2.Recordset.EOF ThenIf Month(Text5.Text) Month(Text2.Text) Then Text4.Text = Int(Val(Text6.Text) * 0.1 + 0.5)Else If Month(Text5.Text) = Month(Text2.Text) Then If Day(Text5.Text) Day(Text2.Text) Then Text4.Text = Val(Text6.Text) - Int(Val(Text6.Text) * 0.1 + 0.5) Else If Day(Text5.Text) = Day(Text2.Text) Then If (Hour(Text9.Text) - Hour(Text2.Text) * 60 + Minute(Text9.Text) - Minute(Text2.Text) = 120 Then Text4.Text = Val(Text6.Text) - Int(Val(Text6.Text) * 0.1 + 0.5) Else If (Hour(Text9.Text) - Hour(Text2.Text) * 60 + Minute(Text9.Text) - Minute(Text2.Text) = 60 Then Text4.Text = Val(Text6.Text) - Int(Val(Text6.Text) * 0.2 + 1) Else If (Hour(Text9.Text) - Hour(Tex

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论