public void SetControlsByDetrResult(EagleString.DetrResult dr) { CheckForIllegalCrossThreadCalls = false; LoadingEnd(); this.btnGetCardNo.Enabled = true; try { if (dr.SUCCEED) { lsName.Clear(); lsCard.Clear(); lsTktNo.Clear(); lsName.Add(dr.PASSENGER); lsTktNo.Add(dr.TKTN); cbName.Text = dr.PASSENGER; List <string> lsflightno = new List <string>(); for (int i = 0; i < dr.LS_SEG_DETR.Count; ++i) { lsflightno.Add(dr.LS_SEG_DETR[i].AIRLINE + dr.LS_SEG_DETR[i].NUMBER); } txtFlightNo.Text = string.Join(",", lsflightno.ToArray()); if (dr.LS_SEG_DETR.Count > 0) { string timeBoarding = dr.LS_SEG_DETR[0].TIME.ToString().PadLeft(4, '0'); timeBoarding = timeBoarding.Substring(0, 2) + ":" + timeBoarding.Substring(2, 2); dtpFlightDate.Text = dr.LS_SEG_DETR[0].DATE.ToString("yyyy-M-d") + " " + timeBoarding; txtDest.Text = EagleString.EagleFileIO.CityCnName(dr.TO); if (string.IsNullOrEmpty(txtDest.Text)) { txtDest.Text = "国内"; } } //if (this.Visible) //{ // //string cmd = m_cmdpool.HandleCommand("detr:tn/" + dr.TKTN + ",f"); // //m_socket.SendCommand(cmd, EagleProtocal.TypeOfCommand.Multi); // this.progressBarCustomerID.Visible = true;//这个滚动条就是不显示,愿意未明! // //简化指令 by king 2009.12.07 // string cmd = "detr:tn/" + dr.TKTN + ",f"; // m_cmdpool.SetCommandType(cmd); // m_socket.SendCommand(cmd, EagleProtocal.TypeOfCommand.Multi); //} } } catch { } }
/// <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); } }