static private void setcontrol(object sender, EventArgs e) { retstring = retstring.Replace('+', ' '); retstring = retstring.Replace('-', ' '); context.tbQuene.Text = retstring; retstring = ""; if (context.b_qtCmd)//若是QT命令 { string temp = context.GetTerminalByQT(context.tbQuene.Text); context.WriteTerminal(temp); context.CurrentTerminal = temp; context.ReadTerminal(); } else//否则清Q指令 { string temp = context.tbQuene.Text; if (temp.IndexOf("Q EMPTY") > -1) { return; } else { //存入数据库 context.WriteQuene(context.CurrentTerminal, context.cbQueneType.Text, temp); //然后发送QD/QN EagleAPI.EagleSendOneCmd("QN"); } } context.b_qtCmd = false; }
/// <summary> /// 5、出票 /// </summary> public void DoEtdz() { GlobalVar.b_netdz = true; //EagleAPI.EagleSendOneCmd("^|_^i~rtN3BQC~etdz:9", 1);//测试用 EagleAPI.EagleSendOneCmd(strETCommand, 3); EagleAPI.LogWrite("\r\n" + DateTime.Now.ToShortTimeString() + "NewDecFee向航信发出指令:" + strETCommand); }
private void btPATA_Click(object sender, EventArgs e) { bRtBotton = false; EagleAPI.CLEARCMDLIST(3); EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~pat:A"); pt = pattype.pata; }
/// <summary> /// 发指令取总价格串 /// </summary> /// <returns></returns> private void SendPAT() { string patCommand = ""; if (!isChild) { patCommand = "I~RT" + strPnr + "~PAT:A"; GlobalVar.b_getfc = true; EagleAPI.EagleSendOneCmd(patCommand); } else { if (this.strPasNum == this.strChildNum) { patCommand = patCommand = "I~RT" + strPnr + "~PAT:*CH"; GlobalVar.b_getchildfc = true; EagleAPI.EagleSendOneCmd(patCommand); } else { patCommand = "I~RT" + strPnr + "~PAT:A"; GlobalVar.b_getfc = true; EagleAPI.EagleSendOneCmd(patCommand); patCommand = patCommand = "I~RT" + strPnr + "~PAT:*CH"; GlobalVar.b_getchildfc = true; EagleAPI.EagleSendOneCmd(patCommand); } } }
/// <summary> /// 1、发指令取是否出票和人数 /// </summary> private void SendRT() { string rtCommand = ""; rtCommand = "i~rt" + strPnr.Trim(); GlobalVar.b_rt = true; EagleAPI.EagleSendOneCmd(rtCommand); }
private void btStart_Click(object sender, EventArgs e) { if (CurrentTerminal.Length != 6) { tbQuene.Text = "请先检查信箱状态"; return; } EagleAPI.EagleSendOneCmd("i~@~qde~qs" + cbQueneType.Text); }
static public void run(string tprcmd) { if (Tpr.running) { return; } Tpr.running = true; Tpr.tprResult = ""; EagleAPI.EagleSendOneCmd("i~" + tprcmd); }
static public void run1(string tslcmd) { if (Tpr.running) { return; } Tpr.running = true; Tpr.tprResult = ""; TprCmd tc = new TprCmd(tslcmd); if (tc.ShowDialog() == DialogResult.OK) { EagleAPI.EagleSendOneCmd("i~" + tc.cmd); } }
/// <summary> /// 开始检查 /// </summary> public static void StartCheck() { nCheckFlag = 1;//置开始检查标志位 alCheckedEtn = new ArrayList(); alPrinted = new ArrayList(); for (int i = 0; i < alEtn.Count; i++) { try { strCurEtkNum = alEtn[i].ToString(); EagleAPI.EagleSendOneCmd("detr tn/" + CheckPrintObject.strCurEtkNum.Trim() + ",f"); intCurCount = i + 1; Thread.Sleep(intDlay); } catch (Exception ea) { continue; } } }
private void button2_Click(object sender, EventArgs e) { if (textBox1.Text.Trim().Length != 5 || !EagleAPI.IsRtCode(textBox1.Text.Trim())) { //this.textBox1.Text += "错误PNR!"; MessageBox.Show (textBox1.Text + ":错误PNR!PNR只能为五个字节,PNR中不可能有字母0,I,U", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } //EagleAPI.EagleSendOneCmd("i~rt:n/" + this.textBox1.Text); try { Options.ibe.ibeInterface ib = new Options.ibe.ibeInterface(); MessageBox.Show(ib.rt(textBox1.Text.Trim(), GlobalVar.serverAddr == GlobalVar.ServerAddr.HangYiWang)); } catch { EagleAPI.EagleSendOneCmd("i~rt:n/" + this.textBox1.Text); } }
private void btQueneState_Click(object sender, EventArgs e) { tbQuene.Text = ""; b_qtCmd = true; EagleAPI.EagleSendOneCmd("qt"); }
private void btOK_Click(object sender, EventArgs e) { if (float.Parse(GlobalVar.f_CurMoney) < 110.0F) { MessageBox.Show("余额不足!"); return; } if (DialogResult.Cancel == MessageBox.Show("确定要出票吗?您是否选择了正确的配置?", "警告", MessageBoxButtons.OKCancel)) { return; } if (tbPnr.Text.Trim().Length != 5) { MessageBox.Show("编码不正确!"); return; } //string temp = "rT" + tbPnr.Text.Trim() + "~pat:~" + GlobalVar.strPatItem; //temp = temp.Replace("\r\n", "\xd"); //temp = mystring.trim(temp);//去掉最后一个不可见字符 //temp += "~rt";// +tbPnr.Text.Trim(); //int nseg1 = int.Parse(nPeople.Value.ToString()) + 1; //int nseg2 = nseg1 + 1; //temp += "~" + nseg1.ToString() + "rr"; //if (nSegment.Value == 2) temp += "~rt~" + nseg2.ToString() + "rr"; //int ntktl = (int)nSegment.Value + (int)nPeople.Value + 3; //temp += "~rt~" + ntktl.ToString() + "at/" + tbLocalCity.Text.Trim(); //if (cbRestrictions.Text.Trim() != "") temp += "~ei:" + cbRestrictions.Text; //temp += "~etdz:" + nPrinter.Value.ToString(); EagleAPI.etstatic.Pnr = tbPnr.Text; string temp = ""; temp += "i~" + tbRTPNR.Text.Trim(); if (tbPAT.Text.Trim() != "") { switch (pt) { case pattype.pat: temp += "~pat:~" + tbPAT.Text.Trim(); break; case pattype.patch: temp += "~pat:*ch~" + tbPAT.Text.Trim(); break; case pattype.pata: temp += "~pat:a~" + tbPAT.Text.Trim(); break; } } if (tbRRA.Text.Trim() != "") { temp += "~" + tbRRA.Text.Trim();// +"~rt"; } if (tbRRB.Text.Trim() != "") { temp += "~" + tbRRB.Text.Trim();// +"~rt"; } if (tbRRC.Text.Trim() != "") { temp += "~" + tbRRC.Text.Trim();// +"~rt"; } if (tbRRD.Text.Trim() != "") { temp += "~" + tbRRD.Text.Trim();// +"~rt"; } if (tbATWUH.Text.Trim() != "") { temp += "~" + tbATWUH.Text.Trim() + "~rt"; } if (tbEI.Text.Trim() != "") { temp += "~" + tbEI.Text.Trim(); } if (tbETDZ.Text.Trim() != "") { temp += "~" + tbETDZ.Text.Trim(); } char ttt = (char)0x0d; EagleAPI.EagleSendOneCmd(temp.Replace("\r\n", ttt.ToString())); }
public void autoEtdz(string pnr, bool isPatOperation) { string prestring = "EEEEEEEEEE "; try { if (!isPatOperation) { EagleAPI.LogWrite(prestring + "开始进行自动出票:"); } Options.ibe.ibeInterface ib = new Options.ibe.ibeInterface(); string rtXml = ib.rt2(pnr); Options.ibe.IbeRt rtResult = new Options.ibe.IbeRt(rtXml); //注:自动出票不检查身份证项,请在出票前输好身份证 //0.检查PNR是否存在 if (!isPatOperation) { EagleAPI.LogWrite("检查PNR是否存在:"); } if (rtXml == "") { throw new Exception("终止出票,原因:PNR不存在!"); } //1.检查是否有票号 if (!isPatOperation) { EagleAPI.LogWrite("检查是否有票号:"); } if (rtResult.getpeopleinfo(2)[0] != "") { throw new Exception("终止出票,原因:已经存在票号"); } //2.根据出发城市,找到对应配置,此步骤以后增加。暂时使用当前配置 string startCity = rtResult.getflightsegsinfo()[0].Split('~')[2].Substring(0, 3); //todo: 找配置,并切换配置…… //3.检验配置是否切换成功,若成功,则应该在返回变量中,处理后面的步骤。 //todo:EagleAPI.EagleSendOneCmd("qt"); //4.根据PNR信息及配置定制指令串 if (!isPatOperation) { EagleAPI.LogWrite("开始生成指令串"); } List <string> cmdString = new List <string>(); cmdString.Add("rt" + pnr); // I.根据人数及航段,指定RR项 int pCount = rtResult.getpeopleinfo(0).Length; { this.nPeople.Value = pCount; Application.DoEvents(); } //置控件 int fCount = rtResult.getflightsegsinfo().Length; { this.nSegment.Value = fCount; Application.DoEvents(); } //置控件 for (int i = 0; i < fCount; i++) { cmdString.Add(string.Format("{0}RR", pCount + i + 1)); } // II.根据航空公司及配置,指定AT/WUH项 int no = pCount + fCount + 3; string atItem = no.ToString() + "aT/" + startCity + "YY"; cmdString.Add(atItem); { tbLocalCity.Text = startCity + "YY"; tbATWUH.Text = atItem; Application.DoEvents(); } //置控件 // III.检查舱位是否为特价舱。来决定PAT项 string[] fInfo = rtResult.getflightsegsinfo(); int normalBunkCount = 0; for (int i = 0; i < fInfo.Length; i++) { if (EagleAPI.isNormalBunk(fInfo[i].Split('~')[0].Substring(0, 2), fInfo[i].Split('~')[1])) { normalBunkCount++; } } bRtBotton = false; EagleAPI.CLEARCMDLIST(3); if (btAutoETDZ.Focused)//原一键出票 { if (cbAutoPat.Checked) { EagleAPI.LogWrite("发送相应的PAT指令"); if (normalBunkCount == fInfo.Length)//全部航段为正常舱位 { if (fCount == 1) { if (isPatOperation) { EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~pat:"); return; } cmdString.Add("pat:"); } else { switch (fInfo[0].Split('~')[0].Substring(0, 2)) { case "CZ": if (isPatOperation) { EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~pat:#yzzs"); return; } cmdString.Add("pat:#yzzs"); break; case "MU": if (isPatOperation) { EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~pat:#muytr"); return; } cmdString.Add("pat:#muytr"); break; case "3U": if (isPatOperation) { EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~pat:#3UZZ"); return; } cmdString.Add("pat:#3UZZ"); break; default: if (isPatOperation) { EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~pat:"); return; } cmdString.Add("pat:"); break; } } } else if (normalBunkCount == 0)//全部为特价舱 { if (isPatOperation) { EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~pat:a"); return; } cmdString.Add("pat:a"); } else//其中一部分为特价舱 { throw new Exception("终止出票,原因:包含正常舱位和特殊舱位!不知道如何PAT!"); } if (!isPatOperation) { cmdString.Add(GlobalVar.strPatItem); } DialogResult dr = MessageBox.Show("PAT指令: " + cmdString[cmdString.Count - 1] + "\r\n" + "票价组: " + cmdString[cmdString.Count - 1] + "\r\n\r\n是否继续出票?", "注意", MessageBoxButtons.YesNo); if (dr == DialogResult.No) { return; } } } else if (button1.Focused)//2008-7-21 一键出票 { if (!isPATed.Checked) { string patStr = ""; if (radioButton1.Checked) { patStr = "pat:"; } if (radioButton2.Checked) { patStr = "pat:A"; } if (radioButton3.Checked) { patStr = "pat:*ch"; } if (radioButton4.Checked) { patStr = "pat:#yzzs"; } if (radioButton5.Checked) { patStr = "pat:#muytr"; } if (radioButton6.Checked) { patStr = "pat:#3UZZ"; } if (!isPatOperation) { cmdString.Add(GlobalVar.strPatItem); } if (isPatOperation) { EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim() + "~" + patStr); return; } cmdString.Add(patStr); DialogResult dr = MessageBox.Show("PAT指令: " + cmdString[cmdString.Count - 1] + "\r\n" + "票价组: " + cmdString[cmdString.Count - 1] + "\r\n\r\n是否继续出票?", "注意", MessageBoxButtons.YesNo); if (dr == DialogResult.No) { return; } } } // IV. 签注EI项 int bunkindex = 0; for (int i = 0; i < fInfo.Length; i++) { int index = EagleAPI.IndexOfBunk(fInfo[i].Split('~')[0].Substring(0, 2), fInfo[i].Split('~')[1]); if (index > bunkindex) { bunkindex = index; } } if (bunkindex < 3) { cbRestrictions.Text = ""; } else if (bunkindex < 6) { cmdString.Add("EI:不得签转"); cbRestrictions.Text = cmdString[cmdString.Count - 1].Substring(3); //置控件 } else if (bunkindex < 16) { cmdString.Add("EI:不得签转更改"); cbRestrictions.Text = cmdString[cmdString.Count - 1].Substring(3); //置控件 } else { cmdString.Add("EI:不得签转更改退票"); cbRestrictions.Text = cmdString[cmdString.Count - 1].Substring(3); //置控件 } Application.DoEvents(); // V.出票ETDZ项 int pn = CreateETicket.GetPrinterNumber(GlobalVar.officeNumberCurrent); cmdString.Add("ETDZ:" + pn.ToString()); tbETDZ.Text = "ETDZ:" + pn.ToString(); //置控件 Application.DoEvents(); if (pn == 0) { throw new Exception("终止出票,原因:未选择配置!"); } string cmd = "i"; for (int i = 0; i < cmdString.Count; i++) { cmd += "~" + cmdString[i]; } EagleAPI.LogWrite(prestring + "得到指令并发送:" + cmd); EagleAPI.EagleSendOneCmd(cmd); } catch (Exception ex) { EagleAPI.LogWrite(prestring + ex.Message); //控件值。 this.tbPAT.Text = ex.Message; //置控件 } }
private void bt查看PNR_Click(object sender, EventArgs e) { bRtBotton = true; EagleAPI.CLEARCMDLIST(3); EagleAPI.EagleSendOneCmd("i~rT" + tbPnr.Text.Trim()); }
/// <summary> /// 5、出票 /// </summary> public void DoEtdz() { //EagleAPI.EagleSendOneCmd("^|_^i~rtN3BQC~etdz:9", 1);//测试用 EagleAPI.EagleSendOneCmd(strETCommand, 3); }