Exemple #1
0
 /// <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);
 }
Exemple #2
0
        public string fdi2fdxx(string fd)
        {
            try
            {
                string ret = "";
                fd = fd.Trim();
                if (EagleAPI.substring(fd, 0, 2).ToLower() == "fd")
                {
                    string fd_sub = fd.Substring(2).Trim();
                    if (fd_sub[0] < '1' || fd_sub[0] > '8')
                    {
                        return(fd);
                    }
                    int      fd_i = int.Parse(fd_sub[0].ToString()) - 1;
                    AVResult ar   = new AVResult();
                    ar.avResult = avstring;

                    ar.SetVar();

                    ret = "fd" + ar.avFromTo + "/" + ar.avDate + "/" + ar.si[fd_i].fi[0].FI_FlightNo.Substring(0, 2);
                    return(ret);
                }
            }
            catch
            {
            }
            return(fd);
        }
Exemple #3
0
 private void bt取身份证号_Click(object sender, EventArgs e)
 {
     try
     {
         if (GlobalVar.serverAddr == GlobalVar.ServerAddr.HangYiWang)
         {
             GlobalVar.formSendCmdType = GlobalVar.FormSendCommandType.detrF;
             EagleAPI.CLEARCMDLIST(3);
             string etnumber = rb3.Checked ? tbPnr.Text : EagleAPI.GetETNumber(retstring)[cb被保险人姓名.SelectedIndex].Replace(' ', '-');
             //EagleAPI.EagleSendCmd("detr:tn/" + etnumber + ",f");
             tb证件号.Text = "请稍等…………";
         }
         else if (GlobalVar.serverAddr == GlobalVar.ServerAddr.Eagle)
         {
             GlobalVar.formSendCmdType = GlobalVar.FormSendCommandType.detrF;
             EagleAPI.CLEARCMDLIST(3);
             Options.ibe.IbeRt ir       = new Options.ibe.IbeRt(rtXml);
             string            etnumber = ir.getpeopleinfo(2)[cb被保险人姓名.SelectedIndex];//这里不一样(IBE坏了怎么办?)
             EagleAPI.EagleSendCmd("detr:tn/" + etnumber + ",f");
             tb证件号.Text = "请稍等…………";
         }
     }
     catch (Exception ee)
     {
         MessageBox.Show(ee.Message + ",请先提取PNR或票号!");
     }
 }
Exemple #4
0
 private void cb被保险人姓名_SelectedIndexChanged(object sender, EventArgs e)
 {
     try
     {
         if (cb被保险人姓名.SelectedItem != null)
         {
             if (GlobalVar.serverAddr == GlobalVar.ServerAddr.HangYiWang)
             {
                 tb证件号.Text = EagleAPI.GetIDCardNo(retstring)[cb被保险人姓名.SelectedIndex];
             }
             else if (GlobalVar.serverAddr == GlobalVar.ServerAddr.Eagle)
             {
                 Options.ibe.IbeRt ir = new Options.ibe.IbeRt(rtXml);
                 if (rtXml == "")
                 {
                     MessageBox.Show("请提取PNR"); return;
                 }
                 tb证件号.Text = ir.getpeopleinfo(1)[cb被保险人姓名.SelectedIndex];
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("选择姓名时:" + ex.Message);
     }
 }
Exemple #5
0
        public void exec()
        {
            GlobalVar.etProcessing = true;
            ////PrintReceipt pr = new PrintReceipt();
            ////pr.Text = "电子客票确认及信息提交";
            ////pr.textBox_订座号.Text = EagleAPI.etstatic.Pnr;
            ////pr.textBox_订座号.ReadOnly = true;
            ////pr.Window_CheckET();
            ////string txtAppend = "";
            ////if (pr.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            ////    txtAppend = ("电子客票数据处理完成!\r\n>");
            ////else
            ////    txtAppend = ("电子客票数据可能未提交,请点菜单->电子客票->电子客票核对!\r\n>");
            ////GlobalVar.stdRichTB.AppendText(txtAppend);
            //if (PrintReceipt.b0007) return;

            //PrintReceipt.b0007 = true;
            //PrintReceipt pr = new PrintReceipt();
            //pr.display过票();
            //pr.Window_ManageET();
            //pr.Text = "电子客票后台核查管理";
            ////pr.Visible = false;
            //pr.setToSubmitForm();
            //pr.Show();
            //pr.Hide();
            Thread et = new Thread(new ThreadStart(eTicket.etrun.runthread));

            et.Start();


            GlobalVar.etProcessing = false;
            EagleAPI.CLEARCMDLIST(3);
            //用于在黑屏上再次显示。。。
            //EagleAPI.EagleSendOneCmd("i~rT:" + EagleAPI.etstatic.Pnr,3);
        }
Exemple #6
0
        private void decfeeCheck()
        {
            EagleAPI.LogWrite("由于ETDZ未扣款,用IBE检查ETDZ是否成功");
            string pnr = EagleAPI.etstatic.Pnr.ToLower();

            Options.ibe.ibeInterface rt    = new Options.ibe.ibeInterface();
            Options.ibe.IbeRt        rtRes = new Options.ibe.IbeRt(rt.rt2(pnr));
            bool succ = false;

            string[] tktnos = rtRes.getpeopleinfo(2);
            if (tktnos[0] == "")//没有电子票号,出票失败,退出检测
            {
                EagleAPI.LogWrite("IBE检查完毕,当前PNR" + pnr + "出票失败");
                return;
            }
            //成功
            EagleAPI.LogWrite("IBE检查完毕,当前PNR" + pnr + "出票成功,开始进行扣款计算!");
            //人数
            int pCount = tktnos.Length;

            EagleAPI.LogWrite("人数:" + pCount.ToString());
            //航段数
            int fCount = rtRes.getflightsegsinfo().Length;

            EagleAPI.LogWrite("航段数:" + fCount.ToString());
        }
Exemple #7
0
        private void btGetPNR_Click(object sender, EventArgs e)
        {
            airCode             = "";
            textBox4.Text       = "请稍等……";
            tbAirCode.Text      = tbAirCode.Text.Trim().ToUpper();
            tbFlightNumber.Text = tbFlightNumber.Text.Trim().ToUpper();
            tbDate.Text         = tbDate.Text.Trim().ToUpper();
            if (!EagleAPI.IsRtCode(tbAirCode.Text))
            {
                MessageBox.Show("大编码错误"); return;
            }
            ;
            if (tbFlightNumber.Text == "")
            {
                MessageBox.Show("请输入航班号"); return;
            }
            ;
            if (tbDate.Text.Length != 5)
            {
                MessageBox.Show("请输入正确日期"); return;
            }
            ;
            EagleAPI.CLEARCMDLIST(3);
            string cmd = "RRT:V/" + tbAirCode.Text + "/" + tbFlightNumber.Text + "/" + tbDate.Text;

            EagleAPI.EagleSendCmd(cmd + "~rrt ok~" + cmd, 3);
        }
Exemple #8
0
 private void cbName_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (cbName.SelectedItem != null)
     {
         tbCardID.Text = EagleAPI.GetIDCardNo(retstring)[cbName.SelectedIndex];
     }
 }
Exemple #9
0
        static private void setcontrol(object sender, EventArgs e)
        {
            retstring = retstring.Replace('+', ' ');
            retstring = retstring.Replace('-', ' ');
            if (!EagleAPI.GetNoPnr(retstring))
            {
                return;
            }
            context.cbName.Items.Clear();
            List <string> names = new List <string>();

            names = EagleAPI.GetNames(retstring);
            for (int i = 0; i < names.Count; i++)
            {
                context.cbName.Items.Add(names[i]);
            }
            context.cbName.Text   = context.cbName.Items[0].ToString();
            context.tbCardID.Text = EagleAPI.GetIDCardNo(retstring)[0];
            string date = EagleAPI.GetDateStart(retstring);
            int    imm  = int.Parse(EagleAPI.GetMonthInt(date.Substring(date.Length - 3)));
            int    idd  = int.Parse(date.Substring(date.Length - 5).Substring(0, 2));
            int    iyy  = System.DateTime.Now.Year;

            //System.DateTime dt = new DateTime(iyy, imm, idd, 23, 59, 59);
            System.DateTime dt = new DateTime(iyy, imm, idd, 23, 59, 59);
            while (dt < System.DateTime.Now)
            {
                dt = dt.AddYears(1);
            }
            context.dtpBegin.Value = dt;
        }
Exemple #10
0
 /// <summary>
 /// 防止重复提交!而导致占用配置,在提交电子客票信息线程中使用!
 /// </summary>
 /// <param name="pnr"></param>
 /// <returns></returns>
 static public bool CheckSubmitedPnrInHashTable(string pnr)
 {
     try
     {
         if (GlobalVar2.gbHashTableOfTheSubmittingPnr.ContainsKey(pnr))
         {
             DateTime dt      = (DateTime)(GlobalVar2.gbHashTableOfTheSubmittingPnr[pnr]);
             TimeSpan ts      = DateTime.Now - dt;
             int      inteval = ts.Minutes;
             if (inteval > 10)
             {
                 GlobalVar2.gbHashTableOfTheSubmittingPnr.Remove(pnr);
                 GlobalVar2.gbHashTableOfTheSubmittingPnr.Add(pnr, DateTime.Now);
                 return(false);
             }
             EagleAPI.LogWrite("CATCH:    CheckSubmitedPnrInHashTable存在相同PNR在HASHTABLE中");
             return(true);
         }
         else
         {
             GlobalVar2.gbHashTableOfTheSubmittingPnr.Add(pnr, DateTime.Now);
             return(false);
         }
     }
     catch
     {
         EagleAPI.LogWrite("CATCH:    CheckSubmitedPnrInHashTable");
         return(false);
     }
 }
Exemple #11
0
 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;
 }
Exemple #12
0
 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;
 }
Exemple #13
0
        /// <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);
                }
            }
        }
Exemple #14
0
        /// <summary>
        /// 在姓名和航段之前少个换行符的情况:自动添加一个换行
        /// </summary>
        /// <param name="rtResult"></param>
        /// <returns></returns>
        static public string NewLineBetweenNameAndFlight(string rtResult)
        {
            string ret = rtResult;
            string pnr = EagleAPI.etstatic.Pnr;

            if (!EagleAPI.IsRtCode(pnr))
            {
                return(ret);
            }
            if (GlobalVar.b_rtCommand)
            {
                string limitStr = "15.SSR FOID                                                                    +";
                int    limitInt = limitStr.Length + 1;//可能要多个"\r"
                try
                {
                    string[] lines = rtResult.Split('\r');
                    for (int i = 0; i < lines.Length; i++)
                    {
                        string lineString = lines[i];
                        int    bytelenth  = System.Text.Encoding.Default.GetBytes(lineString).Length;
                        if (bytelenth > limitInt)
                        {
                            int posLine = lineString.IndexOf(pnr.ToUpper());
                            if (posLine > -1)
                            {
                                posLine += 5;
                                int pos = 0;
                                for (int j = 0; j < i; j++)
                                {
                                    pos += lines[j].Length + 1;
                                }
                                pos += posLine;
                                while (ret[pos + 1] == ' ')
                                {
                                    pos += 1;
                                }
                                bool addSpace = false;
                                if (ret.IndexOf('.', pos) - pos == 1)
                                {
                                    addSpace = true;
                                }
                                ;
                                int posr = ret.IndexOf('\r', pos);
                                int posn = ret.IndexOf('\n', pos);

                                //if ((posr >= 0 && posr - pos <= 5) || (posn >= 0 && posn - pos <= 5)) break;
                                ret = ret.Insert(pos, addSpace?" \r":"\r");
                                break;
                            }
                        }
                    }
                }
                catch
                {
                }
            }

            return(ret);
        }
Exemple #15
0
        /// <summary>
        /// 1、发指令取是否出票和人数
        /// </summary>
        private void SendRT()
        {
            string rtCommand = "";

            rtCommand      = "i~rt" + strPnr.Trim();
            GlobalVar.b_rt = true;
            EagleAPI.EagleSendOneCmd(rtCommand);
        }
Exemple #16
0
        public Sunshine()
        {
            InitializeComponent();
            this.xmlname = "SunShine";
            if (!checkxmlfile())
            {
                Dispose();
            }
            this.insuranceType         = "B07";//B07 阳光
            this.insuranceNumberLength = 10;
            this.paperHeight           = 400;
            this.paperWidth            = 932;
            this.bhyx = false;

            //保存enumberHead
            FileStream   fs   = new FileStream(GlobalVar.s_configfile, FileMode.Open, FileAccess.ReadWrite);
            StreamReader sr   = new StreamReader(fs, Encoding.Default);
            string       temp = sr.ReadToEnd();

            sr.Close();
            fs.Close();
            XmlDocument xd = new XmlDocument();

            xd.LoadXml(temp);
            XmlNode xn = xd.SelectSingleNode("eg").SelectSingleNode(xmlname).SelectSingleNode("ENumberHead");

            xn.InnerText = "0130705";
            xd.Save(GlobalVar.s_configfile);
            //


            this.Text = "阳光财险打印";
            cfg_insurance cc = new cfg_insurance();

            cc.GetConfig(this.xmlname);
            //013070508
            this.eNumberHead = cc.ENumberHead + EagleAPI.GetRandom01(DateTime.Now.Minute) + EagleAPI.GetRandom01(DateTime.Now.Second) + EagleAPI.GetRandom01(DateTime.Now.Millisecond);
            //this.eNumberHead = "013070508" + EagleAPI.GetRandom01();

            this.tb经办人.Text           = cc.Signature;
            this.numericUpDown1.Value = cc.OffsetX;
            this.numericUpDown2.Value = cc.OffsetY;
            this.tb保单序号.Text          = cc.SaveNo;
            this.tb报案电话.Text          = cc.Phone;
            this.tb填开单位.Text          = cc.CompanyAddr;

            tb填开日期.Text      = System.DateTime.Now.ToString();
            this.cb险种条款.Text = "阳光交通工具乘客意外伤害保险条款";
            timer1.Start();



            retstring = "";
            b_opened  = true;
            connect_4_Command.PrintWindowOpen = true;
            context            = this;
            this.ActiveControl = this.tbPnr;
        }
Exemple #17
0
        private void btSubmit_Click(object sender, EventArgs e)
        {
            if (tbInsuranceNo.Text.Trim().Length != 7)
            {
                MessageBox.Show("左上角保单号有误,应为七位数字");
                return;
            }
            try
            {
                long.Parse(tbInsuranceNo.Text.Trim());
            }
            catch
            {
                MessageBox.Show("左上角保单号有误,应为七位数字");
                return;
            }
            if (cbName.Text.Trim() == "")
            {
                MessageBox.Show("姓名不能为空");
                return;
            }
            if (tbCardID.Text.Trim() == "")
            {
                MessageBox.Show("证件号码不能为空");
                return;
            }

            this.tbENumber.Text = eNumberHead + EagleAPI.GetRandom62(10000L);//这里不一样
            if (!GlobalVar.b_OffLine)
            {
                if (cbName.Text != GlobalVar.HYXTESTPRINT)
                {
                    HyxStructs hs = new HyxStructs();
                    hs.UserID      = GlobalVar.loginName;
                    hs.eNumber     = tbENumber.Text;
                    hs.IssueNumber = tbInsuranceNo.Text;
                    hs.NameIssued  = cbName.Text;
                    hs.CardType    = "";
                    hs.CardNumber  = tbCardID.Text;
                    hs.Remark      = "009";//4新华出行关爱009
                    hs.IssuePeriod = "10天";
                    hs.IssueBegin  = this.dtpBegin.Value.ToShortDateString() + " 00:00:00";
                    hs.IssueEnd    = this.dtpEnd.Value.ToShortDateString() + " 23:59:59";

                    hs.NameBeneficiary = this.tbBeneficiary.Text;
                    hs.Signature       = this.tbSignature.Text;
                    hs.SignDate        = this.dtpSignDate.Value.ToString();
                    hs.Pnr             = this.tbPnr.Text;
                    if (!hs.SubmitInfo())
                    {
                        MessageBox.Show("数据提交失败!请检查保单号及是否分配或网络是否正常!");
                        return;
                    }
                }
            }
            MessageBox.Show("上传成功");
            this.bt_Print.Enabled = true;
        }
Exemple #18
0
 private void btStart_Click(object sender, EventArgs e)
 {
     if (CurrentTerminal.Length != 6)
     {
         tbQuene.Text = "请先检查信箱状态";
         return;
     }
     EagleAPI.EagleSendOneCmd("i~@~qde~qs" + cbQueneType.Text);
 }
Exemple #19
0
 static public void run(string tprcmd)
 {
     if (Tpr.running)
     {
         return;
     }
     Tpr.running   = true;
     Tpr.tprResult = "";
     EagleAPI.EagleSendOneCmd("i~" + tprcmd);
 }
Exemple #20
0
        private void AirCode_Load(object sender, EventArgs e)
        {
            dtpDate.Value = System.DateTime.Now;
            tbDate.Text   = dtpDate.Value.Day.ToString("d2") + EagleAPI.GetMonthCode(dtpDate.Value.Month);


            retstring = "";
            b_opened  = true;
            connect_4_Command.PrintWindowOpen = true;
            context = this;
        }
Exemple #21
0
        public void decfee()
        {
            string cny = "";

            if (cnystring.Trim().Length >= 30)
            {
                return;
            }
            try
            {
                cny = cnystring.Substring(cnystring.IndexOf("CNY") + 3, cnystring.IndexOf(".00") - (cnystring.IndexOf("CNY") + 3)).Trim();
                float  c   = float.Parse(cny);
                string pnr = mystring.trim(cnystring);
                pnr = mystring.right(pnr, 5);
                if (EagleAPI.etstatic.Pnr.ToLower() != pnr.ToLower())//当返回结果中PNR与操作的PNR不同时
                {
                    throw new Exception("返回结果有误");
                    //EagleAPI.etstatic.Pnr = pnr;//分离式出票,可能产生不同PNR?
                }
            }
            catch (Exception e1)
            {
                cny = "0";
                EagleString.EagleFileIO.LogWrite("扣款解析票价出错!");
                EagleString.EagleFileIO.LogWrite(e1.Message);
                return;
            }
            EagleAPI.LogWrite("\r\n*****开始扣款!");
            eTicket.etDecFee df = new ePlus.eTicket.etDecFee();
            df.Pnr                 = EagleAPI.etstatic.Pnr.ToUpper();
            df.TotalFC             = cny;
            GlobalVar.GlobalString = "扣款前余额为" + GlobalVar.f_CurMoney + ",当前扣款金额为" + cny + "\n>";

            EagleAPI.LogWrite(GlobalVar.GlobalString);
            for (int i = 0; i < 1; i++)
            {
                //if (!df.submitinfo())
                //{
                //    GlobalVar.GlobalString += "扣款失败,系统将会补扣!\r>";
                //    break;
                //}
                try
                {
                    df.submitinfo();
                    break;
                }
                catch (Exception ee)
                {
                    GlobalVar.GlobalString += "扣款失败,系统将会补扣!\r>";
                    GlobalVar.GlobalString += ee.Message + "\r>";
                }
            }
            EagleAPI.LogWrite("\r\n*****结束扣款!");
        }
Exemple #22
0
        /// <summary>
        /// 执行扣款
        /// </summary>
        /// <returns></returns>
        private void DoDecFee()
        {
            string strRet = "";

            if (CalcFee())
            {
                if (foOriginallyBalance < foMuPaFee)
                {
                    throw new Exception("\r\n该用户余额不足,不能出票!\r\n>");
                }
                strRet = InvokeWS();
                //strRet = "<eg><cm>RetDecFee</cm><DecStat>DecSucc</DecStat><NewUserYe>300</NewUserYe></eg>";
            }
            else
            {
                //throw new Exception("\r\n计算多人总票价出错!\r\n>");
                EagleAPI.LogWrite("\r\n计算多人总票价出错!\r\n");
                DoEtdz();
            }
            if (strRet == null || strRet == "")
            {
                throw new Exception("\r\n调用 WebService 返回不正常!xml:" + strRet + "\r\n>");
            }
            NewPara np1     = new NewPara(strRet);
            string  cm      = np1.FindTextByPath("//eg/cm");
            string  decstat = np1.FindTextByPath("//eg/DecStat");
            string  money   = np1.FindTextByPath("//eg/NewUserYe");
            string  err     = np1.FindTextByPath("//eg/err");

            if (cm == "RetDecFee" && decstat == "DecSucc")
            {
                GlobalVar.f_CurMoney = money;
                foCurrentBalance     = float.Parse(money);
                string agrs = "\r\n调用扣款服务" + "<eg66>" + strPnr;
                strProResult  = "\r\n系统开始减款,用户原始余额:" + foOriginallyBalance.ToString("G") + "扣款:" + foMuPaFee.ToString("G");
                strProResult += "\r\n" + "用户当前余额:" + foCurrentBalance.ToString("G") + "\r\n";

                EagleAPI.LogWrite(agrs + strProResult);
                GlobalVar.b_NotDoDec = true;//先扣款成功
                DoEtdz();
            }
            else
            {
                //if (cm == "RetDecFee" && decstat == "Deced")
                //{
                //}
                //else
                //{
                EagleAPI.LogWrite("cm:" + cm + " err:" + err + "\r\n>");
                DoEtdz();
                //}
            }
        }
Exemple #23
0
 /// <summary>
 /// 带一个参数的构造函数
 /// </summary>
 /// <param name="etcommand"></param>
 public NewDecFee2(string strcom)
 {
     foOriginallyBalance  = float.Parse(GlobalVar.f_CurMoney);
     strETCommand         = strcom;
     intAdultNum          = intChildNum = intBabynNum = intPasNum = 0;
     foAdultFee           = foBabyFee = foChildFee = 0;
     isChild              = false;
     bContainChild        = false;
     bContainBaby         = false;
     GlobalVar.b_NotDoDec = false;
     nGetFcFlag           = 1;
     try
     {
         if (!GlobalVar.bUsingConfigLonely)
         {
             int iRt = strETCommand.IndexOf("~rt");
             if (iRt > -1)
             {
                 try
                 {
                     iRt   += 3;
                     strPnr = strETCommand.Substring(iRt);
                     strPnr = strPnr.Substring(0, strPnr.IndexOf("~")).Trim();
                     if (strPnr == "" || strPnr == null || !EagleAPI.IsRtCode(strPnr))
                     {
                         throw new Exception("\r\n没有正确PNR\r\n>");
                     }
                 }
                 catch
                 {
                     throw new Exception("\r\n没有PNR\r\n>");
                 }
             }
             else
             {
                 throw new Exception("\r\n出票指令有误\r\n>");
             }
         }
         else
         {
             strPnr = EagleAPI.etstatic.Pnr;
             if (strPnr == "" || strPnr == null)
             {
                 throw new Exception("\r\n独占配置出票出错!\r\n>");
             }
         }
     }
     catch
     {
         DoEtdz();
     }
     SendRT();
 }
Exemple #24
0
        private void button1_Click(object sender, EventArgs e)
        {
            string head = "detr:tn/";

            string[] middle = { "999", "784", "883", "781", "479", "774", "880", "324", "731", "876", "859", "987", "822", "811" };
            EagleAPI.EagleSendCmd(head + middle[count] + "-" + textBox1.Text.Trim().Substring(textBox1.Text.Trim().Length - 10));

            count++;
            if (count == middle.Length)
            {
                count = 0;
            }
        }
Exemple #25
0
        public void SetToListview(System.Windows.Forms.ListView lv, DateTime dt)
        {
            string tt = "";

            tt = EagleAPI.GetAirLineBunkSort(FI_FlightNo[0] == '*'?FI_FlightNo.Substring(1, 2):FI_FlightNo.Substring(0, 2), dt);
            char[] ch = tt.ToCharArray();
            sortbunk(ch);


            System.Windows.Forms.ListViewItem item = new ListViewItem();
            item.Text = FI_ID;
            item.SubItems.Add(FI_FlightNo);
            item.SubItems.Add(FI_Policy);
            item.SubItems.Add(FI_Path);
            item.SubItems.Add(FI_TakeOff);
            item.SubItems.Add(FI_Landing);
            item.SubItems.Add(FI_AirType);
            ////for (char c = 'A'; c <= 'Z'; c++)
            ////{
            ////    item.SubItems.Add(GetOneBunk(c));
            ////}
            //item.SubItems.Add(GetOneBunk('F'));
            //item.SubItems.Add(GetOneBunk('C'));
            //item.SubItems.Add(GetOneBunk('Y'));
            //if (FI_FlightNo.Substring(0, 2) != "MU" && FI_FlightNo.Substring(0, 2) != "CA" && FI_FlightNo.Substring(0, 2) != "SC")
            //{
            //    item.SubItems.Add("");
            //}
            //int y_start = 0;
            //for (int i = 0; i < FI_Bunk.Count; i++)
            //{
            //    if (FI_Bunk[i][0] == 'Y')
            //    {
            //        y_start = i+1;
            //        break;
            //    }
            //}
            //for (int i = y_start; i < FI_Bunk.Count; i++)
            for (int i = 0; i < FI_Bunk.Count; i++)
            {
                if (GlobalVar.b_ListNoSeatBunk)
                {
                    item.SubItems.Add(FI_Bunk[i]);
                }
                else
                {
                    item.SubItems.Add(FI_Bunk[i][1] > 'A' ? "" : FI_Bunk[i]);
                }
            }
            lv.Items.Add(item);
        }
Exemple #26
0
        private void tb_eNumber_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyValue == 13)//回车
            {
                this.tb_eNumber.Text = this.tb_eNumber.Text.ToUpper();
                retstring            = "";

                EagleAPI.CLEARCMDLIST(3);

                cb_name.Items.Clear();
                cb_name.Text = "请稍等……";
                EagleAPI.EagleSendCmd("rT:n/" + tb_eNumber.Text.Trim());
            }
        }
Exemple #27
0
        /// <summary>
        /// 清空原指令表,并将指定msgtype的列表复制给原指令表
        /// </summary>
        /// <param name="msgtype"></param>

        public static void UseTheCommandQueneListBegin(int msgtype)
        {
            while (cmdListOperating)
            {
                Thread.Sleep(100);
                EagleAPI.LogWrite("指令列表线程冲突,等待100耗秒");
            }
            cmdListOperating = true;
            EagleAPI.CLEARCMDLIST(0);
            switch (msgtype)
            {
            case 3:
                for (int i = 0; i < connect_4_Command.Qall0003.Count; i++)
                {
                    connect_4_Command.Qall.Add(connect_4_Command.Qall0003[i]);
                }
                for (int i = 0; i < connect_4_Command.Qorder0003.Count; i++)
                {
                    connect_4_Command.Qorder.Add(connect_4_Command.Qorder0003[i]);
                }
                for (int i = 0; i < connect_4_Command.Qquery0003.Count; i++)
                {
                    connect_4_Command.Qquery.Add(connect_4_Command.Qquery0003[i]);
                }
                for (int i = 0; i < connect_4_Command.Qsend0003.Count; i++)
                {
                    connect_4_Command.Qsend.Add(connect_4_Command.Qsend0003[i]);
                }
                break;

            case 7:
                for (int i = 0; i < connect_4_Command.Qall0007.Count; i++)
                {
                    connect_4_Command.Qall.Add(connect_4_Command.Qall0007[i]);
                }
                for (int i = 0; i < connect_4_Command.Qorder0007.Count; i++)
                {
                    connect_4_Command.Qorder.Add(connect_4_Command.Qorder0007[i]);
                }
                for (int i = 0; i < connect_4_Command.Qquery0007.Count; i++)
                {
                    connect_4_Command.Qquery.Add(connect_4_Command.Qquery0007[i]);
                }
                for (int i = 0; i < connect_4_Command.Qsend0007.Count; i++)
                {
                    connect_4_Command.Qsend.Add(connect_4_Command.Qsend0007[i]);
                }
                break;
            }
        }
Exemple #28
0
        /// <summary>
        /// 调用扣款Web服务
        /// </summary>
        private string InvokeWS()
        {
            EagleWebService.wsKernal ws = new EagleWebService.wsKernal(GlobalVar.WebServer);
            NewPara np = new NewPara();

            np.AddPara("cm", "DecFee");
            np.AddPara("Pnr", strPnr);
            np.AddPara("TicketPrice", foMuPaFee.ToString());
            string strReq = np.GetXML();
            string strRet = ws.getEgSoap(strReq);

            GlobalVar.f_Balance -= (decimal)(foMuPaFee);
            EagleAPI.LogWrite(strPnr + " DecFee 先扣款成功!\r\n");
            return(strRet);
        }
Exemple #29
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox2.Text.Trim() == "" || textBox2.Text.Trim() == "0")
            {
                MessageBox.Show("打印机序号错误!第一行第二格"); return;
            }
            if (DialogResult.OK != MessageBox.Show("确定要退票吗", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning))
            {
                return;
            }
            string combstring = combinestring();

            EagleAPI.EagleSendCmd(combstring);
            this.Close();
        }
Exemple #30
0
 private void btGetCardId_Click(object sender, EventArgs e)
 {
     try
     {
         GlobalVar.formSendCmdType = GlobalVar.FormSendCommandType.detrF;
         EagleAPI.CLEARCMDLIST(3);
         string etnumber = this.radioButton3.Checked?tbPnr.Text:EagleAPI.GetETNumber(retstring)[cbName.SelectedIndex].Replace(' ', '-');
         EagleAPI.EagleSendCmd("detr:tn/" + etnumber + ",f");
         this.tbCardID.Text = "请稍等…………";
     }
     catch (Exception ee)
     {
         MessageBox.Show(ee.Message + ",请先提取PNR或票号!");
     }
 }