长途汽车订票管理系统

上传人:飞*** 文档编号:44524212 上传时间:2018-06-09 格式:DOC 页数:17 大小:325.50KB
返回 下载 相关 举报
长途汽车订票管理系统_第1页
第1页 / 共17页
长途汽车订票管理系统_第2页
第2页 / 共17页
长途汽车订票管理系统_第3页
第3页 / 共17页
长途汽车订票管理系统_第4页
第4页 / 共17页
长途汽车订票管理系统_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《长途汽车订票管理系统》由会员分享,可在线阅读,更多相关《长途汽车订票管理系统(17页珍藏版)》请在金锄头文库上搜索。

1、长途客运汽车订票管理系统长途客运汽车订票管理系统一、一、 课题内容和要求课题内容和要求按照软件工程思想,以 SQL Server 2000 为后台数据库,以 Delphi 或VC+等为前端开发工具,设计并实现一个长途客运汽车订票管理系统。系统有两类用户:一位管理员和多个普通用户。系统的主要功能如下:(1) 管理员需要登录认证,管理员在登录界面输入正确的帐号信息后,可以进行客车基本信息的查询,录入,修改和删除。(2) 电影票的基本信息如下:车号、起点、终点、日期、开出时刻、到达时刻、预设座位数、剩余座位数。(3) 普通用户可以查询客车信息,不需要登录可直接进入到查询界面,按起点、终点、日期查询客

2、车信息。(4) 普通用户在查询到合适的客车信息后,开始订票。订票时需输入:姓名、身份证号、客车号、日期。确定订票后,相关信息记录于订票表中,同时,对应客车的剩余座位数减 1。(不考虑退票情况)。(5) 普通用户可以在输入身份证号后查询自己的订票信息和对应客车的基本信息。(6) 管理员登录后,可以在查看全部的订票信息和各客车的订票数量。二、二、 设计思路分析设计思路分析首先理解系统的功能需求,然后进行数据库设计,包括表的划分与建立,表中属性值的定义。其次选择开发环境,主要用了 delphi 软件。然后对系统的模块划分,确定各个模块实现的功能。接着进行模块的设计和实现,并进行测试。测试完后,进行改

3、错,最后美化界面,完成本次课程。三、三、 系统设计系统设计1.1 数据库逻辑设计结果首先确定正确的属性关系,设计完善正确的数据库,包括各个表中的主键以及外建关系。本次试验建了三张表。其中车次表定义了车号、起点、终点、日期、开出时刻、到达时刻、预设座位数、剩余座位数,车号为主键。订票表定义了姓名、身份证号、客车号、日期,身份证、车号为主键。两张表通过车号这个外键链接。车次信息表:订票信息表:管理员账号信息表:车次表定义了客车基本信息,主键为车号。订票表定义了用户预订客车票的信息,主键为身份证号和车号订票表中的车号同时为车次表的外键1.2 系统功能设计1、管理员用例图2、用户用例图3、系统功能结构

4、4、相关流程图四、四、 系统实现系统实现用 delphi 创建五个 form,分别是登录界面,管理员维护与查询界面,订票统计界面,用户订票与查询界面,订票查询界面。各部分源代码及注释如下:(1)登录界面主要代码如下:implementation uses Unit2,unit3, Unit4, Unit5; $R *.dfmprocedure Tdenglu.RadioButton1Click(Sender: TObject);/选择管理员时的操作 begindenglu.Label1.Hide;denglu.Label2.Hide;denglu.Edit1.Hide;denglu.Edit2

5、.Hide; end;procedure Tdenglu.RadioButton2Click(Sender: TObject);/用户直接查询订票 begindenglu.Label1.show;denglu.Label2.show;denglu.Edit1.show;denglu.Edit2.show; end;procedure Tdenglu.RadioButton3Click(Sender: TObject);/订票查询 begindenglu.Label1.Hide;denglu.Label2.Hide;denglu.Edit1.Hide;denglu.Edit2.Hide; end

6、;procedure Tdenglu.loginClick(Sender: TObject);/判断管理员账号是否正确 var username,password:string; begin if Radiobutton1.Checked=true then messagebox(login.handle,请选择管理员再登录,警告,mb_ok+mb_iconwarning); if Radiobutton3.Checked=true then messagebox(login.handle,请选择管理员再登录,警告,mb_ok+mb_iconwarning); if Radiobutton2.

7、Checked=true then beginif edit1.Text= thenmessagebox(login.handle,请输入用户名,警告,mb_ok+mb_iconwarning)elseif edit2.Text= thenmessagebox(login.handle,请输入密码,警告,mb_ok+mb_iconwarning)elsebeginusername:=edit1.text;password:=edit2.text;with ADOQuery1 dobeginclose;sql.clear;sql.add(select * from 管理员账号 where use

8、rname=);sql.add(+username+and password=+password+);open;first;edit1.Text:=;edit2.Text:=;if recordcount=1 thenbeginHide;weihu.show;endelsemessagebox(login.handle,请输入正确的账号密码,警告,mb_ok+mb_iconwarning)end;end;end; end;procedure Tdenglu.BitBtn2Click(Sender: TObject);/关闭界面,退出 begin closeend;procedure Tdeng

9、lu.BitBtn1Click(Sender: TObject); begin if Radiobutton2.Checked=true then/如果选择用户查询chaxun.show;/查询界面出现hide; /主界面隐藏 if Radiobutton1.Checked=true then /如果选择管理员 chaxun.show; /查询界面出现 hide; /主界面隐藏 if Radiobutton3.Checked=true then/如果选择订票查询 jilu.show; /订票查询界面出现 hide; /主界面隐藏 end;(2) 管理员维护与查询主界面:主要代码如下:imple

10、mentation uses Unit1, Unit4; $R *.dfmprocedure Tweihu.FormCreate(Sender: TObject); beginADOQuery1.Close;ADOQuery1.SQL.clear;ADOQuery1.Active:=false;ADOQuery1.SQL.Add(select * from 车次;);ADOQuery1.Prepared;ADOQuery1.active:=true;edit1.Text:=T1;combobox1.text:=2013;combobox2.text:=1;combobox3.text:=1;c

11、ombobox2.items.add(1);combobox2.items.add(2);combobox2.items.add(3);combobox3.items.add(1);combobox3.items.add(2);combobox3.items.add(3); end;procedure Tweihu.BitBtn1Click(Sender: TObject);/查询信息 begin ADOQuery1.close;ADOQuery1.SQL.clear;ADOQuery1.sql.Add(select *);ADOQuery1.sql.Add(from 车次);ADOQuery

12、1.SQL.Add(where 车号=+edit1.Text+ and 日期=+combobox1.text+- +combobox2.text+-+combobox3.text+);ADOQuery1.Prepared;ADOQuery1.Open;ADOQuery1.Active:=true; end;procedure Tweihu.BitBtn2Click(Sender: TObject);/打开统计界面 begin tongji.show; end;procedure Tweihu.BitBtn3Click(Sender: TObject);/返回登录界面 begin denglu.

13、show; close end;procedure Tweihu.BitBtn4Click(Sender: TObject);/退出系统,关闭隐藏的登录界面 begin denglu.close; close end;procedure Tweihu.FormClose(Sender: TObject; var Action: TCloseAction); begin /界面被关闭时,隐藏的登录界面会出现 denglu.show; end;end.(3) 管理员数据统计界面:主要代码如下:implementation uses unit1, Unit5; $R *.dfmprocedure T

14、tongji.FormCreate(Sender: TObject);/从订票表查询需要的信息显示 beginwith ADOQuery1 dobeginADOQuery1.Close;ADOQuery1.SQL.Clear;ADOQuery1.Active:=false;ADOQuery1.SQL.Add(select 订票.车号,车次.起点,车次.终点,订票.日期,+车次.开出时刻,到达时刻,订票.姓名,+订票.身份证 from 订票,车次 where 订票.车号=车次.车号);ADOQuery1.Prepared;ADOQuery1.Active:=true;end;with ADOQu

15、ery2 dobeginADOQuery2.Close;ADOQuery2.sql.clear;ADOQuery2.Active:=false; ADOQuery2.SQL.Add(select 车号,count(*) from 订票 group by 车号;);/计算同一车次的订票数量 输出显示ADOQuery2.Prepared;ADOQuery2.Active:=true;end; end;procedure Ttongji.BitBtn1Click(Sender: TObject);/返回维护界面 begin weihu.show; tongji.Close; end;procedure Ttongji.BitBtn2Click(Sender: TObject);/关闭所有界面退出 begin weihu.close; tongji.Close; denglu.close; end;procedure Ttongji.FormClose(Sender: TObject; var Action: TCloseAction); /当窗体关闭时 隐藏的登录界面显示 begin weihu.show; end;procedure Ttongji.BitBtn3Click(Se

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号