第一篇:航空售票ETERM操作指令
操作手冊
1.航班信息查詢AV:城市對/日期/起飛時間/航空公司代碼/經停標志/座位等級
“+”表示明天 “N”表示經停 “D”表示直達
2.航班經停點及起降時間的顯示 FF:航班號/日期 例:FF:1321/19MAY
3.票價查詢 FD:城市對/航空公司代碼 例:FD:PEKSHA/CA 從已有的AV中查詢票價 FD:序號
4.訂票:(注:請一次性封口)
(成人)SD1(航段)Y(艙位)/1(人數)(回車)
NM1計算1管理(名字中間用數字1隔開)(回車)TKTL(預定時間)/1200/19MAY/SIA000(回車)
SSR FOID MU HK/NI545123152(身份證)(回車)
CT4524545(聯系電話)(回車)@或 F12(輸入)
(兒童)SD1(航段)Y(艙位)/1(人數)(回車)
NM1計算CHD1管理CHD(名字中間用數字1隔開,在名字后面加上CHD標志)(回車)
TKTL(預定時間)/1200/19MAY/SIA000(回車)CT4524545(聯系電話)(回車)@或 F12(輸入)
(嬰兒)與大人在同一個記錄,但是嬰兒不占座位(回車)
SD1(航段)Y(艙位)/1(人數)(回車)
NM1計算1管理(名字中間用數字1隔開)(回車)TKTL(預定時間)/1200/19MAY/SIA000(回車)XN:IN/名字INF(出生月和年)/P1(回車)
SSR FOID MU HK/NI545123152(身份證)(回車)CT4524545(聯系電話)(回車)@或 F12(輸入)
5.訂票:
(成人)SD1(航段)Y(艙位)/1(人數)(F12)
NM1計算1管理(名字中間用數字1隔開)(F12)TKTL(預定時間)/1200/19MAY/SIA000(F12).SSR FOID MU HK/NI545123152(身份證)(F12)
CT4524545(聯系電話)(F12)@或 F12(輸入)(兒童)SD1(航段)Y(艙位)/1(人數)(F12)
NM1計算CHD1管理CHD(名字中間用數字1隔開,在名字后面加上CHD標志)(F12)
TKTL(預定時間)/1200/19MAY/SIA000(F12)CT4524545(聯系電話)(F12)@或 F12(輸入)
(嬰兒)與大人在同一個記錄,但是嬰兒不占座位(F12)
SD1(航段)Y(艙位)/1(人數)(F12)
NM1計算1管理(名字中間用數字1隔開)(F12)TKTL(預定時間)/1200/19MAY/SIA000(F12)XN:IN/名字INF(出生月和年)/P1(F12)
SSR FOID MU HK/NI545123152(身份證)(F12)CT4524545(聯系電話)(F12)@或 F12(輸入)
6.做假RR
RTSKIKS(記錄編號)(輸入)XE(出票時限項)(回車)
TKT/999-0000000000(假票號)(回車)2RR(把航程項做RR)輸入
7.PNR取消整個記錄:XEPNR@SKSKI(加記錄編號)
取消記錄中的一個人:XEP1(1代表所取消的第幾個人)PNR的歷史記錄.,先提記錄,RTU1要往下翻頁:RTC|記錄|PN 如果是記錄往下翻只能翻兩次:第一次:RT記錄|PN 第二次:RT記錄|PN|PN
8.團隊定位(注請一次性封口)
例: AV查詢航班(輸入)
SD1(航段)Y(艙位)/25(人數)(回車)
GN:25kxun(回車)
TKTL(預定時間)/1200/19MAY/SIA000(回車)CT4524545(聯系電話)(回車)@或 F12(輸入)生成記錄后再輸入名單(注在輸入名單的時候最多只能輸入一行,然后穿入,不能回車接著輸入)
團隊取消 :XEG 取消一人 XEGP1(1是指第幾個人)RTN團隊記錄里已入的名單
9.團隊訂票(獨占30秒訂票,必須在規定時間內完成訂票)10.用短信方法通知客人定票信息
首先提出記錄編號(輸入)RMK MP 電話號碼(輸入)SMS I/記錄編號
(輸入)
11航班時刻顯示 SK:選擇項/城市對/日期/時間/航空公司代碼/艙位
例:SK PEKCAN/19MAY 指定日期前后三天內航班信息 0查詢三字代碼 CNTD:T/BEIJING 查詢城市名稱 CD:PEK
13特殊服務信息(OSI/SSR)
國航知音卡 SSR FQTV CA HK/NN………/P1 特殊餐食的輸入法 例:SSR SPML CA NN1 LOW SALT/P1 例:SSR VGML CA NN1 P1/S2 或:SSR SPML CA NN1 PEKSHA CA1501 Y 19MAY LOW SALT/P1 餐食代碼:
SPML 特殊餐食申請 VGML 素食(不含奶,蛋制食品)AVML 亞洲素食 VLML 素食(專門牛奶,蛋)LSML 低鹽餐 MOML 穆斯林餐
ORML 東方餐 BBML 嬰兒,兒童餐 CHML 兒童餐 申請定位
SSR OTHS MU(航空公司代碼)KK,V(艙位)THANKS 計算功能
CO加數 天氣預報
WF加所查城市 例:WFSIA
14兒童,嬰兒及豁免的外交官免稅輸入方法 FM:FCNY…../SCNY…../C…../TEXEMPTCN
15.國際票定座(注請一次性封口)
SD1(航段)Y(艙位)/1(人數)(回車)NM1計算1管理(名字中間用數字1隔開)(回車)TKTL(預定時間)/1200/19MAY/SIA000(回車)SSR FOID MU HK/NI545123152(身份證)(回車)CT4524545(聯系電話)(回車)@或 F12(輸入)16國際運價 RT記錄 QTE: 輸入
注:1.QTE指令最多可以計算16個航段的運價,當航程段超過8段時,QTE后,系統不能立即算出其結果,而是給出一個編碼,然后再使用XS FSI/編碼,找到其結果
2.如果使用XS FSI/編碼依然沒有結果時,2分鐘之后再使用XS FSI/編碼提取結果 QTE指令的實質是XS FSP或XS FSI指令 國際運價 NFI 顯示運價附加規則:XS FSG2 2是QTE中票價的序號
17.注共享出來的帳號,可以出電子客票!
指令:1.RT記錄編號 PAT:A F12輸入 2.TXE(預出票時限前的序號)F12輸入 3.ETDZ:2(打票機號)F12輸入
4.航段RR F12輸入
先出票在做“RR”
18.PID共享出來的帳號可以支持縱橫中國的票價及其它指令
指令:PAT:#YZZS PAT:#3UZZ 兒童價格輸入:PAT:*CH TKTV:打票機號
獨占30秒指令:30LOCK 永久獨占指令:MXLOCK 釋放獨占:UNLOCK F12輸入
銷售日子查詢指令:tsl:c/打票機號 翻頁:PN 做假RR后的出票指令
rt記錄編號|票號序號at/城市對/./bjs001(代號)|etdz: 打票機號
PID服務器共享用戶,支持虛擬支付賬戶,通過eterm在線支付出票 虛擬帳戶余額查詢 fare F12 輸入
虛擬帳戶在線出票 指令:1.RT記錄編號 PAT:A F12輸入
2.*記錄編號 支付指令(如果PID共享里有多個航信配置時,*記錄編號&指定office號)F12輸入
19.大記錄轉換小記錄
指令:rrt:v/記錄/航班號/日期|rrt:ok 20.如果PAT:A穿出來沒有票價或是需要修改的票價的,PAT:A穿入不能出來新的FN FC FP,得手工輸入FN FC FP
1:直接pn:fd tsl nfd nfi tktv qt 2:限制xe: 在共享帳號的指令限制里選擇
LXE,該帳號就只能xe本office號的記錄。3:改期:不用在rt記錄編號|ssr......|@,直接ssr......4:限制輸入假票號:在共享帳號里限制RR指令,就能限制做假票號了。5:rtu1 rtc 指令
PID新增加的指令如下:
1:訂票:
A:直接sd單步操作: B:(一次性封口)Sd f12 Sd 回車 Nm f12 Nm 回車 Tktl f12 Tktl 回車 Ct f12 Ct 回車 Ssr foid f12 Ssr foid 回車 @或 f12 @或 f12 團隊訂座:(注請一次性封口)
例: AV查詢航班(輸入)
SD1(航段)Y(艙位)/25(人數)(回車)
GN:25kxun(回車)
TKTL(預定時間)/1200/19MAY/SIA000(回車)CT4524545(聯系電話)(回車)@或 F12(輸入)生成記錄后再輸入名單(注在輸入名單的時候最多只能輸入一行,然后穿入,不能回車接著輸入)
團隊取消 :XEG 取消一人 XEGP1(1是指第幾個人)RTN團隊記錄里已入的名單 2:XE
1:xe pnr
指令:xepnr@記錄編號
做 TKTV ETDZ DZ 指令之前 必須用 TXE 代替 XE 刪掉時限才能操作成功。3:做假RR
A:直接sd單步操作: B:(一次性封口)RTSKIKS(記錄編號)f12
RTSKIKS(記錄編號)(輸入)TXE(出票時限項)f12 XE(出票時限項)(回車)
TKT/999-0000000000(假票號)f12 TKT/999-0000000000(假票號)(回車)2RR(把航程項做RR)f12 2RR(把航程項做RR)輸入 4:票價輸入:PAT:A 南航縱橫中國價格PAT:#YZZS 川航往返價格PAT:#3UZZ 兒童價格:PAT:*CH
注:如果PAT:A穿出來沒有票價或是需要修改的票價的,PAT:A穿入不能出來新的FN FC FP,得手工輸入FN FC FP
5:出票
RT記錄編號 PAT:A F12 TXE(預出票時限前的序號)F12 ETDZ:2(打票機號)F12 航段RR F12 先出票在做“RR” 6:做假RR后的出票指令
rt記錄編號|票號序號at/城市對/./bjs001(代號)|etdz: 打印機號
第二篇:eterm系統簡單指令
在指令后加上D,只顯示所有直飛航班 城市名查詢三字代碼 CNTD T/BEIJING 三字代碼查城市名 CD JD 通過二字代碼查詢航空公司名稱 CNTD D/JD 提取票號 DETR: TN/票號 提取證件號 DETR:NI/身份證號 通過票號查票價 DETR:TN/票號,S 通過票號查身份證 DETR:TN/票號,F 通過身份證號查票號 DETR NI/身份證號
通過票號查歷史記錄 DETR:TN/票號,H(DETR:NI/身份證號)查航段價格 FD起點至終點 查詢一周航班指令 SK:SZXPEK328 查詢航班指令:
查詢當日航班 AVH/SZXPEK 查詢明日航班 AVH/SZXPEK+ 按日期查詢航班 AVH/SZXPEK30mar 按航空公司查詢航班 AVH/SZXPEK/CZ 按起飛時間查詢航班 AVH/SZXPEK/1000 A表示有9張以上,S表示鎖定,Q表示可以申請 查詢票價指令:
通過航班查詢票價 FD:1(航班序號)直接查詢票價 FD:SZXPPEK/CZ(指定的航空公司)查詢航班的經停點指令: FF:CZ3561/150CT 查詢一次顯示不完的指令:
查詢下一頁 PN(F9)最后一頁 PL 查詢前一頁 PB(F8)查詢當前頁 PG1
第二節 訂票指令及操作方法:
1、控制、預定位實例: 查詢航班 AVH/SZXPEK15OCT/D 輸入
指定航班訂位 SD1(航班序號)Y(訂座艙位)/2(訂座人數)輸入 旅客姓名 NM1XXX1XXX 小回車 旅客聯系電話 CT25866518 小 回車 出票時限 TKTL1500/18OCT/SZX638 小回車 封口輸入 或@ 輸入 形成訂座記錄編號碼 由五位英文或數字組成
2、申請位訂座實例:(因所需訂座的艙位無位,須向控制室申請座位)指定航班訂位 SD2Y/LL3 輸入 申請團 SD2Y/1 GN:人數+公司名稱 其它步驟與控制訂位一致
3、兒童訂位方法:兒童訂位須在姓名后注兒童代碼 CHD 如:NM1吳時光CHD
4、嬰兒不單獨占位,故無需訂位:嬰兒出票須跟隨成人一并出票。嬰兒代碼INF 5、提取訂座記錄:(1)RT訂位記錄編號
(2)如忘記訂座記錄編碼:RT+姓(拼音)+/航班號+/日期
(3)知航空公司編碼提代理人編號:RRT:V/編碼/航班號/日期(大記錄轉小記錄)
6、訂座記錄修改方法:
1、1、旅客姓名修改: 修改姓名: 1/1(需修改旅客姓名序號)XXX 輸入(需在未產生訂座記錄編號情況下)封口
輸入
7、取消訂座記錄(PNR):
1、1、取消一人實例: XEP1(此人在記錄里的序號)輸入2、2、取消單項:XE3(須取消在記錄里的序號)輸入3、3、全部取消:XEPNR@ 輸入
8、分離PNR :SP1(此人在記錄里的序號)輸入
9、清屏指令:CP或CTRL+A
第四章 打票實例
第一節 第一節 打印客票實例
1、HK狀態記錄打票實例:(單人單程)提取訂座記錄 RT訂座記錄 輸入 改變訂座狀態 2RR 回車
取消出票時限 XE5(時限欄序號)輸入
票價欄 FN FCNY1550。00SCNY1550。00C3。00 回車
票價計算欄 FC SZX CZ PEK 1550。00YBCNY1550。00END 回車 付款方式欄 FP CASH,CNY 輸入
pat:A輸入將顯示出FN、FC、FP各項(部分航空公司要手工輸入價格)PAT:A*CH為兒童PAT:*SD學生PAT:*CD老人PAT:*IN嬰兒 PAT:M手工填寫稅款 打印 DZ:1(打票機序號)輸入
2、直接訂位出票的打票實例:(聯程客票)
查詢去程航班 AVSZXPEK15OCT 輸入 指定航班訂位 SD2Q/RR2 輸入 查詢回程航
班 AVPEKSZX19OCT 輸入 指定航班訂位 SD2Q/RR2 輸入 旅客姓名 NM1XXX1XXX 回車 電話號碼 CTXXXXXXXX 輸入 票價 FN FCNY1860.00 SCNY1860.00C3。00 票價計算 FC SZX CZ PEK930.00YB60 CZ SZX930.00YB60 CNY1860.00END 付款方式 FP CASH,CNY 簽注欄 EI :不得簽轉 不得更改 打印 ETDZ:打票機號
輸入
4、兒童票、嬰兒票的打票實例:
例: AVH/SZXPEK+D 輸入 SD2Y/RR1 輸入 NM1XXXCHD 回車 CTXXXXXXXX 輸入 FC SZX CZ PEK 780.00YB50 CNY780.00END FN FCNY780.00SCNY780.00C3.00 嬰兒姓名 XN IN/XXX(JUN01)P1(指定跟隨旅客序號)FC IN/SZX CZ PEK 160。00YB10CNY160。00END/P1
FN IN/FCNY160.00 SCNY160.00C0.00/P1 FP CASH,CNY 輸入
4、再次打印客票
取消該重打旅客的票號 XE5(單T項)/8(票號項)
重新輸入票價計算欄 FC SZX CZ PEK1550.00YB CNY1550.00END 打印 DZ3
5、已做成RR的編碼打印 把假票號那項內容如:(1)(票號項)5WC。空格/SZX311+輸入鍵(2)取消票號那一項
(3)按正常格式輸入打票指令
廢票:VT:1/票號/編號 查詢廢票:DETR:TN/票號 兒童出票:NM1某某CHD CZ兒童出票:SSR CHLD CZ HK 03AR13 護照查票號:DETR PP 護照號 授權:RMK TJ AOTH 工作號 PN下一頁 PG1只看證件信息 SDY1 NM1某某1某某
OSI 航班空公司 CTCT123456789 SSR FOID 航空公司代碼 HK/NI4301234567898
補位:XE2,倉位號NN 回車 回車 HL——共享航班 差價 Rt c 倉位的狀態:HK1 HK2 占幾個位子;HKK 封口加K;HL 候補;N01沒有位子; 換編碼:CY:D OSI 航空公司代碼 CTCT1234656/P1 SSR FOID 航空公司代碼 HK/NI430258793 I
證件或票號提出機票的狀態: 正常狀態:OPEN FOR USE 使用過的:USED/FLOWN 正在辦理登記手續:CHECKDE IN 退款:REFANDED 已辦理登記手續:liftboarded 改簽換開:print exch et 票號已作廢:lioid 換開(已登記):exchanged oi 航班遷轉:fim exchange 控制:status bcz 機場控制:airrort cntz 換開、及使用:used/closed
第三篇:航空售票合作協議
航空售票合作協議
甲方: 地址: 聯系電話: 乙方: 地址: 聯系人: 聯系電話:
根據《中華人民共和國合同法》甲乙雙方遵循自愿、公平、平等、合法、誠信的原則簽訂本協議:
一、合同范圍:
甲方為乙方提供的國內機票、國際機票酒店預訂服務,本售票中心提供發票。
二、費用及支付:
本合同甲乙雙方之間發生的一切費用以人民幣結算,結算時間為每月一號節假日雙休日推至收假后第一天上班結算。
三、購票方式:
1、購票統一由乙方指定財務或者專職人員告知甲方行程又甲方進行購票,所有費用統一由甲方墊付,到指定報賬日再由甲方財務向乙方報銷所墊付的款項。
2、乙方指定一至兩名訂票負責人負責向甲方訂購機票,甲方必須按乙方要求安排航班。并時刻掌握在信息隨時通知乙方航班變動情況。協助乙方出行。注:如合作單位在甲方單位所在地甲方將根據乙方要求進行機場接送工作并為乙方出行的人員和領導更換登機牌。
四、機票結算
1、乙方購票,甲方根據航班情況,向乙方提供當時市場優惠的價格給乙方參考決定行程時間。
2、甲方每月2日前向乙方送交本月行程單,乙方在審核無誤后,須在當月25日前向甲方支付票款。
五、退票費
1、如乙方購票后因自身原因航班延誤或者航程變動等情況造成退票改簽等需按航空公司規定收取退票費。特價機票按照民航總局和各航空公司規定收取退票費,改簽費在報賬時需支付給甲方。在乙方員工訂票時,甲方有義務對退票費的收取規定事先作出說明。乙方有義務按照相關規定繳納退票費。
2、特價機票不涉及改變航空公司及航班的近期變更請求,甲方參照相關航空公司規定及操作慣例。
七、權利義務
1、乙方有權利對乙方的機票價格和服務進行監控,在甲方出現違約時,乙方有權利要求甲方彌補損失。乙方有權要求甲方對自己的業務人員進行培訓以提供優質的服務,對甲方服務態度差,責任心不強的業務人員提供更換。
2、甲方權利義務 甲方設臵訂票:。
為乙方提供24小時電話查詢,訂座以及航班變更改簽、座位再證實、退票并提供網上實時航班信息查詢。
甲方提供乘機手機短信通知給乙方乘客,乘客以有效證件直接辦理乘機手續,可無需帶票乘機。
八、違約責任:
1、乙方違約的責任:對因票款支付不及時、準確、給乙方造成的損失應承擔賠償責任。
2、甲方違約責任:甲方未按照合同規定提供相應的服務、價格、造成乙方損失的甲方負責賠償。
3、訂票時如在甲方提醒核對證件信息的情況下乙方工作人員提供錯誤乘機人信息致使乘機人無法正常登機則甲不對次負責。
九、合同終止
1、合同期滿,一年自動延續一年,若一方無意續簽的則合同終止。
2、合同的終止不影響雙方各自承擔的賠償責任,結算和協議解決和協議解決條款。累計積分 以上送機票一張,必須提前15天預定機票。
十、甲乙雙方合同一式兩份,自簽訂之日起履行合同的各項規定。
甲方負責人:
聯系電話:
乙方負責人: 聯系電話:
年 月 日
第四篇:航空售票管理系統
#include
typedef struct node//定義信息結構體 {
char num[10];// 航班號
int hour;//起飛時間小時
int minitues;//起飛時間分鐘
char start[10];//起始
char end[10];//終點
float prize;//經濟艙票價
int last;//剩余座位 }FLIGHT;
typedef struct Order//訂單信息 {
char name[10];//乘客姓名
char num[10];//航班號
int count;//訂票數量 }Order;
class flight//定義類 {
private: FLIGHT stu[N];//每個元素對應一條信息
Order psg[N];//訂單
int len;//航班總數
int lenp;//訂票者總數 public:
flight();
~flight();void input();//錄入信息
void show();//瀏覽
void sall();//售票
void back();//退票
void search();// 信息查詢
void search2();// 信息查詢(起點終點)
char menu();//菜單
};
flight stud;
char filename[]=“flight.txt”;
flight::flight(){}//構造函數 flight::~flight(){}//析構函數
bool CheckTime(int h1,int m1,int h2,int m2)//判斷兩個時間前后
{ if(h1
return true;else if(h1==h2){
if(m1 return true; else return false;} else return false;} void flight::show()//瀏覽 { system(“cls”);//清屏 cout<<“ 所有航班信息如下:”< 起飛時間 起點 終點 經濟艙票價 剩余座位 備注”< for(int i=0;i printf(“%-10s%-2.2d:%-2.2d %-10s%-10s%-12.2f%-10d”,stu[i].num,stu[i].hour,stu[i].minitues,stu[i].start,stu[i].end,stu[i].prize,stu[i].last); time_t t; struct tm *tm; t=time(NULL);//獲取當前系統時間 tm=localtime(&t); if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)//如果起飛時間在當前時間之前 輸出此次航班已發出 cout<<“此次航班已發出”< else cout< } cout<<“_______________________________________________________________________________”< void flight::back()//退票 { char name[20]; char s[20]; system(“cls”);//清屏 cout<<“請輸入退票的航班編號:”;cin>>s; for(int i=0;i if(strcmp(stud.stu[i].num,s)==0) break;//存在 結束循環 if(i==stud.len)//這二者相等說明查找完所有信息也沒找到輸入信息,說明輸入航班編號不存在{ cout<<“對不起!沒有你輸入航班編號的相關信息。n”; system(“pause”);//任意鍵繼續 return;} time_t t; struct tm *tm; t=time(NULL);//獲取當前系統時間 tm=localtime(&t);if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true) { cout<<“對不起!該航班已經起飛。不能退票。n”; system(“pause”);//任意鍵繼續 return;} int j=i; cout<<“請輸入您的姓名:”;cin>>name;for(i=0;i if(strcmp(stud.psg[i].name,name)==0 && strcmp(stud.psg[i].num,s)==0)//查詢這個名字是否相同 { stud.stu[j].last+=stud.psg[i].count;//退票 stud.psg[i]=stud.psg[stud.lenp-1];///刪除這個訂單 stud.lenp--;//訂單數減一 cout<<“退票成功!n”; system(“pause”);//任意鍵繼續 return; } } cout<<“對不起!您沒有定該航班的票。n”; system(“pause”);//任意鍵繼續 } void flight::sall()//售票 { char s[20]; system(“cls”);//清屏 cout<<“請輸入要購買的航班編號:”;cin>>s; for(int i=0;i if(strcmp(stud.stu[i].num,s)==0) break;//存在 結束循環 if(i==stud.len)//這二者相等說明查找完所有信息也沒找到輸入信息,說明輸入航班編號不存在{ cout<<“對不起!沒有你輸入航班編號的相關信息。n”; system(“pause”);//任意鍵繼續 return;} if(stud.stu[i].last<=0)//沒有票了 { cout<<“對不起!該航班票已售完。n”; system(“pause”);//任意鍵繼續 return;} time_t t; struct tm *tm; t=time(NULL);//獲取當前系統時間 tm=localtime(&t);if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true) { cout<<“對不起!該航班已經起飛。n”; system(“pause”);//任意鍵繼續 return;} int j=i;i=stud.lenp;strcpy(stud.psg[i].num,stud.stu[i].num);cout<<“請輸入購票數量:”;cin>>stud.psg[i].count; while(stud.psg[i].count>stud.stu[i].last){ cout<<“余票不足,請重新輸入:”; cin>>stud.psg[i].count; } cout<<“請輸入您的姓名:”;cin>>stud.psg[i].name; stud.stu[j].last-=stud.psg[i].count;//剩余票數 stud.lenp++;cout<<“購票成功!n”;system(“pause”);//任意鍵繼續 } void flight::input()//錄入信息 { system(“cls”);//清屏 for(int i=stud.len;i { cout<<“請輸入航班號:”; cin>>stud.stu[i].num; cout<<“請輸入起飛時間(格式: 12:30):”; char ch; cin>>stud.stu[i].hour>>ch>>stud.stu[i].minitues; cout<<“請輸入起點:”; cin>>stud.stu[i].start; cout<<“請輸入終點:”; cin>>stud.stu[i].end; cout<<“請輸入經濟艙票價:”; cin>>stud.stu[i].prize; cout<<“請輸入剩余座位:”; cin>>stud.stu[i].last; stud.len++;//個數加1 cout<<“一條航班信息錄入完成,是否繼續錄入?(y/n):”; while(1) { cin>>ch; if(ch=='y' || ch=='Y' || ch=='n' || ch=='N') break; else cout<<“輸入錯誤請重新輸入:”; } if(ch=='n' || ch=='N') break; } } void flight::search()// 信息查詢 { char s[20]; system(“cls”);//清屏 cout<<“請輸入要查詢的航班編號:”;cin>>s; for(int i=0;i if(strcmp(stud.stu[i].num,s)==0) break;//存在 結束循環 if(i==stud.len)//這二者相等說明查找完所有信息也沒找到輸入信息,說明輸入航班編號不存在{ cout<<“對不起!沒有你輸入航班編號的相關信息。n”; system(“pause”);//任意鍵繼續 return;} cout<<“ 查詢結果如下:”< 起飛時間 起點 終點 經濟艙票價 剩余座位 備注”< printf(“%-10s%-2.2d:%-2.2d %-10s%-10s%-12.2f%-10d”,stu[i].num,stu[i].hour,stu[i].minitues,stu[i].start,stu[i].end,stu[i].prize,stu[i].last); time_t t; struct tm *tm; t=time(NULL);//獲取當前系統時間 tm=localtime(&t); if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)//如果起飛時間在當前時間之前 輸出此次航班已發出 cout<<“此次航班已發出”< else cout< cout<<“_______________________________________________________________________________”< void flight::search2()// 信息查詢(按線路){ char s1[20],s2[20]; system(“cls”);//清屏 cout<<“請輸入要查詢的線路起點:”;cin>>s1; cout<<“請輸入要查詢的線路終點:”;cin>>s2; for(int i=0;i if(strcmp(stud.stu[i].start,s1)==0 && strcmp(stud.stu[i].end,s2)==0) break;//存在 結束循環 if(i==stud.len)//這二者相等說明查找完所有信息也沒找到輸入信息,說明輸入航班編號不存在{ cout<<“對不起!沒有你輸入線路的相關信息。n”; system(“pause”);//任意鍵繼續 return;} cout<<“ 查詢結果如下:”< 起飛時間 起點 終點 經濟艙票價 剩余座位 備注”< for(i=0;i if(strcmp(stud.stu[i].start,s1)==0 && strcmp(stud.stu[i].end,s2)==0) { printf(“%-10s%-2.2d:%-2.2d %-10s%-10s%-12.2f%-10d”,stu[i].num,stu[i].hour,stu[i].minitues,stu[i].start,stu[i].end,stu[i].prize,stu[i].last); time_t t; struct tm *tm; t=time(NULL);//獲取當前系統時間 tm=localtime(&t); if(CheckTime(stud.stu[i].hour,stud.stu[i].minitues,tm->tm_hour,tm->tm_min)==true)//如果起飛時間在當前時間之前 輸出此次航班已發出 cout<<“此次航班已發出”< else cout< } cout<<“_______________________________________________________________________________”< char flight::menu()//菜單 { char c; system(“cls”);//清屏 cout<<“nnnn ╔═══════════════════════════╗n”;cout<<“ ║ 1、錄入航班信息 ║n”; cout<<“ ╠═══════════════════════════╣n”;cout<<“ ║ 2、瀏覽航班信息 ║n”;cout<<“ ╠═══════════════════════════╣n”; cout<<“ ║ 3、查詢路線(按編號) ║n”; cout<<“ ╠═══════════════════════════╣n”;cout<<“ ║ 4、查詢路線(按線路) ║n”; cout<<“ ╠═══════════════════════════╣n”;cout<<“ ║ 5、售票 ║n”; cout<<“ ╠═══════════════════════════╣n”;cout<<“ ║ 6、退票 ║n”; cout<<“ ╠═══════════════════════════╣n”;cout<<“ ║ 0、退出系統 ║n”; cout<<“ ╚═══════════════════════════╝n”;cout<<“ 請選擇:”; cin>>c; return c;} int main(){ while(1) { char ch; ch=stud.menu();//獲取選擇 switch(ch) { case '1': stud.input();break;//錄入航班信息 case '2': stud.show();break;//瀏覽航班信息 case '3': stud.search();break;// 查詢路線 case '4': stud.search2();break;// 查詢路線(按線路) case '5': stud.sall();break;// 售票 case '6': stud.back(); break;// 退票 case '0': exit(0);//退出 } } return 0;} public FlightBook() //構造函數 { super(“航空訂票”);this.setSize(600,400);this.setLocation(300,240);this.setResizable(false);this.setVisible(true);this.setLayout(new BorderLayout());JPanel panel=new JPanel(new GridLayout(11,1));this.add(panel,BorderLayout.WEST);this.setBackground(Color.blue); button_ask=new JButton(“查詢”);panel.add(button_ask);button_ask.addActionListener(this); button_book=new JButton(“訂票”);panel.add(button_book);button_book.addActionListener(this); button_cancel=new JButton(“退票”);panel.add(button_cancel);button_cancel.addActionListener(this); text_user=new JTextArea();this.add(text_user,BorderLayout.CENTER); frame_cx=new JFrame(“輸入”); //查詢輸入框 frame_cx.setSize(280,120);frame_cx.setResizable(false);frame_cx.setBackground(Color.LIGHT_GRAY);frame_cx.setLayout(new FlowLayout());frame_cx.add(new JLabel(“終點站:”));text_field1=new JTextField(20);frame_cx.add(text_field1);button_ok1=new JButton(“ok”);frame_cx.add(button_ok1);button_ok1.addActionListener(this);frame_cx.addWindowListener(this); frame_dp=new JFrame(“輸入”); //訂票輸入框 frame_dp.setSize(350,150);frame_dp.setResizable(false);frame_dp.setBackground(Color.LIGHT_GRAY);frame_dp.setLayout(new FlowLayout());frame_dp.add(new JLabel(“ 航班號:”));text_field2=new JTextField(20);frame_dp.add(text_field2);frame_dp.add(new JLabel(“ 訂票數:”));text_field3=new JTextField(20);frame_dp.add(text_field3);button_ok2=new JButton(“確定”);frame_dp.add(button_ok2); button_ok2.addActionListener(this);frame_dp.addWindowListener(this); frame_tp=new JFrame(“輸入”); //退票輸入框 frame_tp.setSize(350,150);frame_tp.setResizable(false);frame_tp.setBackground(Color.LIGHT_GRAY);frame_tp.setLayout(new FlowLayout());frame_tp.add(new JLabel(“ 日期 :”));text_field4=new JTextField(20);frame_tp.add(text_field4);frame_tp.add(new JLabel(“ 航班號:”));text_field5=new JTextField(20);frame_tp.add(text_field5);button_ok3=new JButton(“正確”);frame_tp.add(button_ok3);button_ok3.addActionListener(this);frame_tp.addWindowListener(this); dialog_cx=new JDialog(this,“提示”,true); //提示查詢輸入航線未開通錯誤 dialog_cx.setSize(240,80);label=new JLabel(“此站點未開通航線,請重新輸入!”);dialog_cx.add(label);dialog_cx.setLayout(new FlowLayout(FlowLayout.CENTER)); dialog_cx.addWindowListener(this); frame_dpsx=new JFrame(“訂票手續”); //訂票手續 frame_dpsx.setSize(250,200);frame_dpsx.setResizable(false);frame_dpsx.setBackground(Color.LIGHT_GRAY);frame_dpsx.setLayout(new FlowLayout(FlowLayout.CENTER));frame_dpsx.add(new JLabel(“ 姓名 :”));text_fielddp_name=new JTextField(10);frame_dpsx.add(text_fielddp_name);frame_dpsx.add(new JLabel(“ 航班號 :”));text_fielddp_hbh=new JTextField(10);frame_dpsx.add(text_fielddp_hbh);frame_dpsx.add(new JLabel(“ 訂票數 :”));text_fielddp_number=new JTextField(10);frame_dpsx.add(text_fielddp_number);frame_dpsx.add(new JLabel(“聯系方式 :”));text_fielddp_lxfs=new JTextField(10);frame_dpsx.add(text_fielddp_lxfs);button_tj=new JButton(“提交”);frame_dpsx.add(button_tj);button_tj.addActionListener(this); frame_djsx=new JFrame(“登記手續”); //登記手續 frame_djsx.setSize(250,200);frame_djsx.setResizable(false); frame_djsx.setBackground(Color.LIGHT_GRAY);frame_djsx.setLayout(new FlowLayout(FlowLayout.CENTER));frame_djsx.add(new JLabel(“ 姓名 :”));text_fielddj_name=new JTextField(10);frame_djsx.add(text_fielddj_name);frame_djsx.add(new JLabel(“ 航班號 :”));text_fielddj_hbh=new JTextField(10);frame_djsx.add(text_fielddj_hbh);frame_djsx.add(new JLabel(“ 訂票數 :”));text_fielddj_number=new JTextField(10);frame_djsx.add(text_fielddj_number);frame_djsx.add(new JLabel(“聯系方式 :”));text_fielddj_lxfs=new JTextField(10);frame_djsx.add(text_fielddj_lxfs);button_wc=new JButton(“完成”);frame_djsx.add(button_wc);button_wc.addActionListener(this); frame_tpsx=new JFrame(“退票手續”); //退票手續 frame_tpsx.setSize(250,200);frame_tpsx.setResizable(false);frame_tpsx.setBackground(Color.LIGHT_GRAY);frame_tpsx.setLayout(new FlowLayout(FlowLayout.CENTER));frame_tpsx.add(new JLabel(“ 姓名 :”));text_fieldtp_name=new JTextField(10);frame_tpsx.add(text_fieldtp_name);frame_tpsx.add(new JLabel(“ 航班號 :”)); text_fieldtp_hbh=new JTextField(10);frame_tpsx.add(text_fieldtp_hbh);frame_tpsx.add(new JLabel(“ 退票數 :”));text_fieldtp_number=new JTextField(10);frame_tpsx.add(text_fieldtp_number);frame_tpsx.add(new JLabel(“聯系方式 :”));text_fieldtp_lxfs=new JTextField(10);frame_tpsx.add(text_fieldtp_lxfs);button_cg=new JButton(“成功”);frame_tpsx.add(button_cg);button_cg.addActionListener(this); dialog_dpwk=new JDialog(this,“提示”,true); //提示訂票輸入未開通航線錯誤 dialog_dpwk.setSize(350,80);label=new JLabel(“此站點未開通航線,請查詢后重新輸入!”);dialog_dpwk.add(label);dialog_dpwk.setLayout(new FlowLayout(FlowLayout.CENTER));dialog_dpwk.addWindowListener(this); dialog_dpyk=new JDialog(this,“提示”,true); //提示訂票輸入票額不足錯誤 dialog_dpyk.setSize(350,150);label1=new JLabel(“此站點已滿員或余票不足,請查詢后重新輸入!”);dialog_dpyk.add(label1); 錯誤 } label2=new JLabel(“ 若需要,可登記排隊候補”);dialog_dpyk.add(label2);button_sq=new JButton(“登記”);button_sq.addActionListener(this);dialog_dpyk.add(button_sq);dialog_dpyk.setLayout(new FlowLayout(FlowLayout.CENTER));dialog_dpyk.addWindowListener(this); dialog_tpts=new JDialog(this,“提示”,true); //提示退票輸入日期和航班號矛盾dialog_tpts.setSize(350,80);label=new JLabel(“您輸入的日期無此航班號,請查詢后重新輸入!”);dialog_tpts.add(label);dialog_tpts.setLayout(new FlowLayout(FlowLayout.CENTER));dialog_tpts.addWindowListener(this); d=new JDialog(this,“提示”,true); //當退票滿足客戶,提示聯系該客戶 d.setSize(350,150);d.setLayout(new FlowLayout(FlowLayout.CENTER));d.addWindowListener(this); this.addWindowListener(this);this.setVisible(true);4.1.2 軟件的查詢、訂票和退票模塊 查詢截圖: 查詢成功截圖: 訂票截圖: 退票截圖: public void actionPerformed(ActionEvent e){ String s=e.getActionCommand();if(s==“查詢”){ frame_cx.setLocation(this.getX()+100,this.getY()+100);frame_cx.setVisible(true);} if(s==“訂票”){ frame_dp.setLocation(this.getX()+100,this.getY()+100);frame_dp.setVisible(true);} if(s==“退票”){ frame_tp.setLocation(this.getX()+100,this.getY()+100);frame_tp.setVisible(true);} if(s==“ok”){ if(text_field1.getText().toString().trim().equals(“北京”)){ text_user.append(“地點:”+F_name[0]+“ 航班號:”+H_number[0]+“ 飛機號:”+F_number[0]+“ 時間:”+time[0]+“ ”+Price[0]+“ 余票量:”+Count[0]+“n”); 價格: } else if(text_field1.getText().toString().trim().equals(“香港”)){ text_user.append(“地點:”+F_name[1]+“ 航班號:”+H_number[1]+“ 飛機號:”+F_number[1]+“ 時間:”+time[1]+“ 價格:”+Price[1]+“ 余票量:”+Count[1]+“n”);} else if(text_field1.getText().toString().trim().equals(“澳門”)){ text_user.append(“地點:”+F_name[2]+“ 航班號:”+H_number[2]+“ 飛機號:”+F_number[2]+“ 時間:”+time[2]+“ ”+Price[2]+“ 余票量:”+Count[2]+“n”);} else if(text_field1.getText().toString().trim().equals(“紐約”)){ text_user.append(“地點:”+F_name[3]+“ 航班號:”+H_number[3]+“ 飛機號:”+F_number[3]+“ 時間:”+time[3]+“ ”+Price[3]+“ 余票量:”+Count[3]+“n”);} else if(text_field1.getText().toString().trim().equals(“悉尼”)){ text_user.append(“地點:”+F_name[4]+“ 航班號:”+H_number[4]+“ 飛機號:”+F_number[4]+“ 時間:”+time[4]+“ ”+Price[4]+“ 余票量:”+Count[4]+“n”);} else { dialog_cx.setLocation(this.getX()+100,this.getY()+100); dialog_cx.setVisible(true);} 價格:價格:價格: } frame_cx.setVisible(false);if(s==“確定”){ String Hnumber=text_field2.getText().toString().trim();int Dcount=Integer.parseInt(text_field3.getText().toString().trim());if(Hnumber.equals(“CAC”)||Hnumber.equals(“cac”)){ if(Dcount<=Count[0]){ Count[0]-=Dcount; frame_dpsx.setLocation(this.getX()+100,this.getY()+100);frame_dpsx.setVisible(true); } else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100);dialog_dpyk.setVisible(true); } else if(Hnumber.equals(“CFC”)||Hnumber.equals(“cfc”)&&Dcount<=Count[1]){ if(Dcount<=Count[1]){ Count[0]-=Dcount;} frame_dpsx.setLocation(this.getX()+100,this.getY()+100);frame_dpsx.setVisible(true); } else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100);dialog_dpyk.setVisible(true);} } else if(Hnumber.equals(“CDA”)||Hnumber.equals(“cda”)&&Dcount<=Count[2]) { if(Dcount<=Count[2]){ Count[0]-=Dcount; frame_dpsx.setLocation(this.getX()+100,this.getY()+100);frame_dpsx.setVisible(true); } else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100);dialog_dpyk.setVisible(true);} } else if(Hnumber.equals(“CCX”)||Hnumber.equals(“ccx”)&&Dcount<=Count[3]) { if(Dcount<=Count[3]){ Count[0]-=Dcount; frame_dpsx.setLocation(this.getX()+100,this.getY()+100);frame_dpsx.setVisible(true); } else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100);dialog_dpyk.setVisible(true);} } else if(Hnumber.equals(“MCM”)||Hnumber.equals(“mcm”)&&Dcount<=Count[4]) { if(Dcount<=Count[4]){ Count[0]-=Dcount; frame_dpsx.setLocation(this.getX()+100,this.getY()+100);frame_dpsx.setVisible(true); } else { dialog_dpyk.setLocation(this.getX()+100,this.getY()+100);dialog_dpyk.setVisible(true); } if(e.getActionCommand()==“提交”){ frame_dpsx.setVisible(false);else { } frame_dp.setVisible(false);dialog_dpwk.setLocation(this.getX()+100,this.getY()+100);dialog_dpwk.setVisible(true);} } } if(e.getActionCommand()==“登記”){ dialog_dpyk.setVisible(false);frame_djsx.setLocation(this.getX()+100,this.getY()+100);frame_djsx.setVisible(true);} if(e.getActionCommand()==“完成”){ int Wait_number=Integer.parseInt(text_fielddj_number.getText().toString().trim());Wait_name[Wait_i]=text_fielddj_name.getText().toString().trim();Wait_hbh[Wait_i]=text_fielddj_hbh.getText().toString().trim();Wait_count[Wait_i]=Wait_number;Wait_xl[Wait_i]=Wait_i;Wait_lxfs[Wait_i]=text_fielddj_lxfs.getText().toString().trim();frame_djsx.setVisible(false);text_user.append(“登記姓名 :”+Wait_name[Wait_i]+“ 登記航班號 :”+Wait_hbh[Wait_i]+“ 登記訂票數量 :”+Wait_count[Wait_i]+“ 聯系方式 ”+Wait_lxfs[Wait_i]+“n”);Wait_i++;} if(e.getActionCommand()==“正確”){ String a=text_field4.getText().toString().trim();String b=text_field5.getText().toString().trim();if(a.equals(“周三 :”)&&b.equals(“cfc”)||b.equals(“CFC”)||b.equals(“ccx”)||b.equals(“CCX”)){ } else if(a.equals(“周日 ”)&&b.equals(“cda”)||b.equals(“CDA”)||b.equals(“mcm”)||b.equals(“MCM”)){ frame_tpsx.setLocation(this.getX()+100,this.getY()+100);frame_tpsx.setLocation(this.getX()+100,this.getY()+100);frame_tpsx.setVisible(true);frame_tpsx.setVisible(true);} else if(a.equals(“周五”)&&b.equals(“cac”)||b.equals(“CAC”)){ frame_tpsx.setLocation(this.getX()+100,this.getY()+100);frame_tpsx.setVisible(true);} else { dialog_tpts.setLocation(this.getX()+100,this.getY()+100);dialog_tpts.setVisible(true);} frame_tp.setVisible(false); } if(e.getActionCommand()==“成功”){ int i=0;int j=0;String c=text_fieldtp_hbh.getText().toString().trim();int Numb=Integer.parseInt(text_fieldtp_number.getText().toString().trim());frame_tpsx.setVisible(false);if(c.equals(“cac”)||c.equals(“CAC”)){ Count[0]+=Numb; if(Wait_i>0){ for(i=0;i if(Wait_hbh[i].equals(“cac”)||Wait_hbh[i].equals(“CAC”)&&Wait_count[i]<=Count[0]) { j=i+1; label=new JLabel(j+“號客戶: ”+Wait_name[i]+“ 滿足訂票要求,聯系方式是:”+Wait_lxfs[i]);d.add(label);d.setLocation(this.getX()+100,this.getY()+100);d.setVisible(true);} } } } else if(c.equals(“cfc”)||c.equals(“CFC”)){ Count[1]+=Numb;if(Wait_i>0){ for(i=0;i if(Wait_hbh[i].equals(“cfc”)||Wait_hbh[i].equals(“CFC”)&&Wait_count[i]<=Count[0]) { j=i+1; label=new JLabel(j+“號客戶: ”+Wait_name[i]+“ 滿足訂票要求,聯系方式是:”+Wait_lxfs[i]);d.add(label);d.setLocation(this.getX()+100,this.getY()+100);d.setVisible(true);} } } } else if(c.equals(“cda”)||c.equals(“CDA”)){ Count[2]+=Numb;if(Wait_i>0){ for(i=0;i if(Wait_hbh[i].equals(“cda”)||Wait_hbh[i].equals(“CDA”)&&Wait_count[i]<=Count[0]) { j=i+1; label=new JLabel(j+“號客戶: ”+Wait_name[i]+“ 滿足訂票要求,聯系方式是:”+Wait_lxfs[i]);d.add(label);d.setLocation(this.getX()+100,this.getY()+100);d.setVisible(true);} } } } else if(c.equals(“ccx”)||c.equals(“CCX”)){ Count[3]+=Numb;if(Wait_i>0){ for(i=0;i if(Wait_hbh[i].equals(“ccx”)||Wait_hbh[i].equals(“CCX”)&&Wait_count[i]<=Count[0]) { j=i+1; label=new JLabel(j+“號客戶: ”+Wait_name[i]+“ 滿足訂票要求,聯系方式是:”+Wait_lxfs[i]);d.add(label);d.setLocation(this.getX()+100,this.getY()+100);d.setVisible(true);} } } } else if(c.equals(“mcm”)||c.equals(“MCM”)){ Count[4]+=Numb;if(Wait_i>0){ for(i=0;i if(Wait_hbh[i].equals(“mcm”)||Wait_hbh[i].equals(“MCM”)&&Wait_count[i]<=Count[0]) { j=i+1; label=new JLabel(j+“號客戶: ”+Wait_name[i]+“ 滿足訂票要求,聯系方式是:”+Wait_lxfs[i]);d.add(label);d.setLocation(this.getX()+100,this.getY()+100);d.setVisible(true);} } } } } }第五篇:基于java航空售票系統(范文)