Ejemplo n.º 1
0
 private void OuterHandleRtResult(EagleString.RtResult rt)
 {
     if (OuterCall && OuterDeleg4rtresult != null)
     {
         OuterDeleg4rtresult.Invoke(rt);
     }
 }
Ejemplo n.º 2
0
 private void passenger_to_listbox(EagleString.RtResult rr)
 {
     lbPassengers.Items.Clear();
     for (int i = 0; i < rr.PSGCOUNT; ++i)
     {
         lbPassengers.Items.Add(rr.Name_CARDS[i]);
     }
 }
Ejemplo n.º 3
0
 /// <summary>
 /// 将detr结果放到控件上
 /// </summary>
 /// <param name="dr"></param>
 public void SetControlsByDetrResult(EagleString.DetrResult dr)
 {
     try
     {
         if (!dr.SUCCEED)
         {
             return;
         }
         rtResult = null;
         lbPassengers.Items.Clear();
         flight_info_clear();
         txtName.Text        = dr.PASSENGER;
         cbEI.Text           = dr.EI;
         txtFare.Text        = cny + dr.FARE;
         txtBuild.Text       = "";
         txtFuel.Text        = cny + dr.TAX;
         txtTotal.Text       = cny + dr.TOTAL;
         txtContinueTkt.Text = dr.CONJ_TKT;
         txtPnr.Text         = dr.LS_SEG_DETR[0].PNR;
         for (int i = 0; i < 4; ++i)
         {
             TextBox[] tb    = new TextBox[14];
             int       start = i * 12 + 1;
             for (int j = start; j < start + 14; ++j)
             {
                 string key = "textBox" + j.ToString();
                 tb[j - start] = (TextBox)pnlFlight.Controls[key];
             }
             try
             {
                 dr.LS_SEG_DETR[i].ToTextBoxArrayLikeReceipt(tb);
             }
             catch (Exception ex)
             {
                 EagleString.EagleFileIO.LogWrite(ex.Message);
                 break;
             }
         }
         if (this.Visible == true)//打印窗口可见时,自动发送取证件号指令
         {
             string cmd = m_cmdpool.HandleCommand("detr:tn/" + dr.TKTN + ",f");
             m_socket.SendCommand(cmd, EagleProtocal.TypeOfCommand.Multi);
         }
         textBox8.Text = textBox20.Text = textBox32.Text = textBox44.Text = "";
     }
     catch (Exception ex2)
     {
         EagleString.EagleFileIO.LogWrite("Receipt.SetControlsByDetrResult : " + ex2.Message);
     }
 }
Ejemplo n.º 4
0
 private void txtEticketNo_KeyUp(object sender, KeyEventArgs e)
 {
     rtResult = null;
     if (e.KeyValue == 13)
     {
         m_eticketno = txtEticketNo.Text.Trim();
         string temp = "";
         if (!EagleString.BaseFunc.TicketNumberValidate(m_eticketno, ref temp))
         {
             MessageBox.Show("输入的电子客票号不正确!");
             return;
         }
         else
         {
             string cmd = m_cmdpool.HandleCommand("detr:tn/" + m_eticketno);
             m_socket.SendCommand(cmd, EagleProtocal.TypeOfCommand.Multi);
         }
     }
 }
Ejemplo n.º 5
0
        public void SetControlsByRtResult(EagleString.RtResult dr)
        {
            try
            {
                rtResult = dr;
                passenger_to_listbox(rtResult);
                lbPassengers.SelectedIndex = 0;
                flight_info_clear();
                txtName.Text = rtResult.NAMES[0];

                if (rtResult.CARDID != null)
                {
                    txtCard.Text = rtResult.CARDID[0];
                }
                else
                {
                    txtCard.Text = "";
                }
                txtEticketNo.Text = rtResult.TKTNO[0];
                if (string.IsNullOrEmpty(rtResult.EI))
                {
                    cbEI.Text = EagleString.BaseFunc.EIstring(
                        rtResult.FLIGHTS[0], rtResult.BUNKS[0], EagleString.egString.LargeThan420(dr.SEGMENG[0].Date));
                }
                else
                {
                    cbEI.Text = rtResult.EI;
                }
                for (int i = 0; i < rtResult.SEGMENG.Length; ++i)
                {
                    TextBox[] tb    = new TextBox[14];
                    int       start = i * 12 + 1;
                    for (int j = start; j < start + 14; ++j)
                    {
                        string key = "textBox" + j.ToString();
                        tb[j - start] = (TextBox)pnlFlight.Controls[key];
                    }
                    try
                    {
                        rtResult.SEGMENG[i].ToTextBoxArrayLikeReceipt(tb);
                    }
                    catch (Exception ex)
                    {
                        EagleString.EagleFileIO.LogWrite(ex.Message);
                        break;
                    }
                }
                if (m_li.b2b.lr.AuthorityOfFunction("0FN"))
                {
                    txtFare.Text  = cny + rtResult.PRICE_CAL.FARE.ToString("f2");
                    txtFuel.Text  = cny + rtResult.PRICE_CAL.FUEL.ToString("f2");
                    txtBuild.Text = cny + rtResult.PRICE_CAL.BUILD.ToString("f2");
                    txtTotal.Text = cny + rtResult.PRICE_CAL.TOTAL.ToString("f2");
                }
                textBox8.Text = textBox20.Text = textBox32.Text = textBox44.Text = "";
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Ejemplo n.º 6
0
        public void SetControlsByRtResult(EagleString.RtResult rtres)
        {
            CheckForIllegalCrossThreadCalls = false;
            LoadingEnd();
            lsName.Clear();
            lsCard.Clear();
            lsTktNo.Clear();

            if (rtres.FLAG_OF_PNR == EagleString.PNR_FLAG.CANCELLED)
            {
                throw new Exception("PNR已取消");
            }

            if (rtres.NAMES != null)
            {
                foreach (string s in rtres.NAMES)
                {
                    lsName.Add(s);
                }

                if (rtres.CARDID == null)
                {
                    foreach (string s in rtres.NAMES)
                    {
                        lsCard.Add("");
                    }
                }
                else
                {
                    foreach (string s in rtres.CARDID)
                    {
                        lsCard.Add(s);
                    }
                }

                if (rtres.TKTNO != null)
                {
                    foreach (string s in rtres.TKTNO)
                    {
                        //if(!string.IsNullOrEmpty(s))
                        lsTktNo.Add(s);
                    }
                }

                cbName.Items.Clear();
                cbName.Items.AddRange(lsName.ToArray());

                cbName.Text      = lsName[0];
                txtCardNo.Text   = lsCard[0];
                txtFlightNo.Text = string.Join(",", rtres.FLIGHTS);
                txtDest.Text     = EagleString.EagleFileIO.CityCnName(rtres.CITYPAIRS[0].Substring(3, 3));
                if (string.IsNullOrEmpty(txtDest.Text))
                {
                    txtDest.Text = "国内";
                }

                if (lsTktNo.Count > 0)//根据电子客票号取身份证号
                {
                    btnGetCardNo.Enabled = true;
                }
                else
                {
                    btnGetCardNo.Enabled = false;
                }

                //给起飞日期加上时间
                if (rtres.SEGMENG.Length > 0)
                {
                    string timeBoarding = rtres.SEGMENG[0].Time.ToString().PadLeft(4, '0');
                    timeBoarding       = timeBoarding.Substring(0, 2) + ":" + timeBoarding.Substring(2, 2);
                    dtpFlightDate.Text = rtres.FLIGHTDATES[0].ToString("yyyy-M-d") + " " + timeBoarding;
                }
            }
        }
Ejemplo n.º 7
0
        private void SetListViewItemLastSubItem(ListViewItem lvi, string[] statedPnr, EagleString.RtResult rt)
        {
            for (int aa = 0; aa < statedPnr.Length; aa++)
            {
                string[] arr = statedPnr[aa].Split(';');
                int      bb  = 0;
                for (bb = 0; bb < arr.Length; bb++)
                {
                    if (arr[bb].ToUpper() == rt.PNR.ToUpper())
                    {
                        switch (aa)
                        {
                        case 0:
                            lvi.SubItems.Add("未处理");
                            break;

                        case 1:
                            lvi.SubItems.Add("通过");
                            break;

                        case 2:
                            lvi.SubItems.Add("未通过");
                            break;

                        case 3:
                            lvi.SubItems.Add("完结");
                            break;
                        }
                    }
                }
                if (bb == arr.Length)
                {
                    lvi.SubItems.Add("无服务器数据");                  //表示在服务器中找不到状态
                }
            }
        }