/// <summary> /// 初始化机舱信息 /// </summary> void initPage() { ///PAT-XML StringBuilder querypolicyXML = new StringBuilder(); //接收航班查询的结果信息 string questXML = Utils.GetFormValue("HBbox"); int questInt = Utils.GetInt(Utils.GetFormValue("JCbox")); queryJpModel = (HBModel)Newtonsoft.Json.JsonConvert.DeserializeObject(questXML, typeof(HBModel)); if (queryJpModel != null) { Session["HBModel"] = queryJpModel; } if (queryJpModel != null && queryJpModel.Class != null && queryJpModel.Class.Count > 0) { for (int i = 0; i < queryJpModel.Class.Count; i++) { if (queryJpModel.Class[i].Identity == questInt) { #region PAT价格信息 querypolicyXML.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); querypolicyXML.Append("<QueryPolicy_2_0>"); querypolicyXML.Append("<Flights>"); querypolicyXML.Append("<Flight>"); querypolicyXML.AppendFormat("<BoardPoint>{0}</BoardPoint>", queryJpModel.BoardPoint); querypolicyXML.AppendFormat("<OffPoint>{0}</OffPoint>", queryJpModel.OffPoint); querypolicyXML.AppendFormat("<Carrier>{0}</Carrier>", queryJpModel.Carrier); querypolicyXML.AppendFormat("<FlightNo>{0}</FlightNo>", queryJpModel.FlightNo); querypolicyXML.AppendFormat("<ShareCarrier>{0}</ShareCarrier>", queryJpModel.ShareCarrier);; querypolicyXML.AppendFormat("<ShareFlight>{0}</ShareFlight>", queryJpModel.ShareFlight); querypolicyXML.AppendFormat("<DepartureDate>{0}</DepartureDate>", queryJpModel.DepartureDate); querypolicyXML.AppendFormat("<DepartureTime>{0}</DepartureTime>", queryJpModel.DepartureTime.ToString("HH:mm")); querypolicyXML.AppendFormat("<ClassCode>{0}</ClassCode>", queryJpModel.Class[i].Code); querypolicyXML.Append("</Flight>"); querypolicyXML.Append("</Flights>"); querypolicyXML.Append("<Price>"); querypolicyXML.AppendFormat("<Fare>{0}</Fare>", queryJpModel.Class[i].F); querypolicyXML.AppendFormat("<Tax>{0}</Tax>", queryJpModel.AirportTax + queryJpModel.FuelSurTax); querypolicyXML.AppendFormat("<FuelSurTax>{0}</FuelSurTax>", queryJpModel.FuelSurTax); querypolicyXML.AppendFormat("<AirportTax>{0}</AirportTax>", queryJpModel.AirportTax); querypolicyXML.AppendFormat("<Rebate>{0}</Rebate>", queryJpModel.Class[i].R); querypolicyXML.AppendFormat("<Pat>{0}</Pat>", true); querypolicyXML.Append("</Price>"); querypolicyXML.Append("</QueryPolicy_2_0>"); string policyXML = new com._8222666.fxb2b.Service().XmlSubmit(getIdentityXMLString(), querypolicyXML.ToString(), ""); #endregion #region 获取PAT后的价格信息 XmlDocument dom = new XmlDocument(); dom.LoadXml(policyXML); if (dom.SelectSingleNode("ErrorInfo_1_0") != null && !string.IsNullOrEmpty(dom.SelectSingleNode("ErrorInfo_1_0").InnerText)) { mainbox.InnerHtml = "<center><a href=\"javascript:window.history.go(-1);\" >未校验到最新价格,请返回选择其他舱位</a></center>"; return; } XmlNodeList nodes = dom.SelectSingleNode("QueryPolicy_2_0").SelectSingleNode("PriceDetails").SelectNodes("PriceDetail"); for (int j = 0; j < nodes.Count; j++) { var model = new Eyousoft_yhq.Model.Policy(); model.PriceID = nodes[j].SelectSingleNode("PriceID").InnerText; model.PricePolicyNo = nodes[j].SelectSingleNode("PricePolicyNo").InnerText; model.PriceDetailID = nodes[j].SelectSingleNode("PriceDetailID").InnerText; model.ProviderCode = nodes[j].SelectSingleNode("ProviderCode").InnerText; model.PNR = nodes[j].SelectSingleNode("PNR").InnerText; model.CrsPnr = nodes[j].SelectSingleNode("CrsPnr").InnerText; model.Carrier = nodes[j].SelectSingleNode("Carrier").InnerText; model.PsgType = nodes[j].SelectSingleNode("PsgType").InnerText; model.DepartureDate = Utils.GetDateTime(nodes[j].SelectSingleNode("DepartureDate").InnerText); model.Airline = nodes[j].SelectSingleNode("Airline").InnerText; model.PsgCount = Utils.GetInt(nodes[j].SelectSingleNode("PsgCount").InnerText); model.BasePrice = Utils.GetDecimal(nodes[j].SelectSingleNode("BasePrice").InnerText); model.Fare = Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText); model.Fare2 = Utils.GetDecimal(nodes[j].SelectSingleNode("Fare2").InnerText); model.SalePrice = Utils.GetDecimal(nodes[j].SelectSingleNode("SalePrice").InnerText); model.CusSalePrice = Utils.GetDecimal(nodes[j].SelectSingleNode("CusSalePrice").InnerText); model.Rebate = Utils.GetDecimal(nodes[j].SelectSingleNode("Rebate").InnerText); model.TaxAmount = Utils.GetDecimal(nodes[j].SelectSingleNode("TaxAmount").InnerText); model.FuelSurTax = Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText); model.AirportTax = Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText); model.AffixFee = Utils.GetDecimal(nodes[j].SelectSingleNode("AffixFee").InnerText); model.Comm = Utils.GetDecimal(nodes[j].SelectSingleNode("Comm").InnerText); model.ZComm = Utils.GetDecimal(nodes[j].SelectSingleNode("ZComm").InnerText); model.Money = Utils.GetDecimal(nodes[j].SelectSingleNode("Money").InnerText); model.AgentComm = nodes[j].SelectSingleNode("AgentComm").InnerText; model.AgentCommEx = nodes[j].SelectSingleNode("AgentCommEx").InnerText; model.AgentMoney = Utils.GetDecimal(nodes[j].SelectSingleNode("AgentMoney").InnerText); model.SAgentComm = nodes[j].SelectSingleNode("SAgentComm").InnerText; model.EI = nodes[j].SelectSingleNode("EI").InnerText; model.TC = nodes[j].SelectSingleNode("TC").InnerText; model.TicketOffice = nodes[j].SelectSingleNode("TicketOffice").InnerText; model.Remark = nodes[j].SelectSingleNode("Remark").InnerText; model.AllowTkt = nodes[j].SelectSingleNode("AllowTkt").InnerText; model.CalcTkt = nodes[j].SelectSingleNode("CalcTkt").InnerText; model.UseRange = nodes[j].SelectSingleNode("UseRange").InnerText; model.TktType = nodes[j].SelectSingleNode("TktType").InnerText; model.UseType = nodes[j].SelectSingleNode("UseType").InnerText; model.DzType = nodes[j].SelectSingleNode("DzType").InnerText; model.FareBase = nodes[j].SelectSingleNode("FareBase").InnerText; model.ShareOffice = nodes[j].SelectSingleNode("ShareOffice").InnerText; model.BaseType = nodes[j].SelectSingleNode("BaseType").InnerText; model.Pat = nodes[j].SelectSingleNode("Pat").InnerText; model.Rmk = nodes[j].SelectSingleNode("Rmk").InnerText; model.Fp = nodes[j].SelectSingleNode("Fp").InnerText; model.Ext1 = nodes[j].SelectSingleNode("Ext1").InnerText; model.TktCustomerGain = Utils.GetDecimal(nodes[j].SelectSingleNode("TktCustomerGain").InnerText); model.TktCustomerGain2 = Utils.GetDecimal(nodes[j].SelectSingleNode("TktCustomerGain2").InnerText); model.TktNetPrice = Utils.GetDecimal(nodes[j].SelectSingleNode("TktNetPrice").InnerText); model.TktBalanceMoney = Utils.GetDecimal(nodes[j].SelectSingleNode("TktBalanceMoney").InnerText); model.TktBusinessFee = Utils.GetDecimal(nodes[j].SelectSingleNode("TktBusinessFee").InnerText); model.TktAgentGain = Utils.GetDecimal(nodes[j].SelectSingleNode("TktAgentGain").InnerText); model.TktAgentGain2 = Utils.GetDecimal(nodes[j].SelectSingleNode("TktAgentGain2").InnerText); model.TktPaymentFee = Utils.GetDecimal(nodes[j].SelectSingleNode("TktPaymentFee").InnerText); model.FltDateStr = nodes[j].SelectSingleNode("FltDateStr").InnerText; model.ClassCodeStr = nodes[j].SelectSingleNode("ClassCodeStr").InnerText; model.TktFlightNoStr = nodes[j].SelectSingleNode("TktFlightNoStr").InnerText; datalist_Policy.Add(model); hats.Add(model.PsgType, model.Fare); if (nodes[j].SelectSingleNode("PsgType").InnerText == "ADT") { this.ADT.Value = (Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText)).ToString(); } else if (nodes[j].SelectSingleNode("PsgType").InnerText == "CHD") { this.CHD.Value = (Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText)).ToString(); } else { this.INF.Value = (Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText)).ToString(); } } hats.Add("FuelSurTax", Utils.GetDecimal(nodes[0].SelectSingleNode("FuelSurTax").InnerText)); hats.Add("AirportTax", Utils.GetDecimal(nodes[0].SelectSingleNode("AirportTax").InnerText)); hats.Add("TaxAmount", Utils.GetDecimal(nodes[0].SelectSingleNode("TaxAmount").InnerText)); hats.Add("SalePrice", Utils.GetDecimal(nodes[0].SelectSingleNode("SalePrice").InnerText)); ViewState["hats"] = hats; #endregion lbleDate.Text = string.Format("{0}{1}", queryJpModel.DepartureDate.ToString("MM-dd") , Utils.ConvertWeekDayToChinese(queryJpModel.DepartureDate)); lbleTime.Text = queryJpModel.DepartureTime.ToString("HH:mm"); lblsDate.Text = string.Format("{0}{1}", queryJpModel.ArrivalDate.ToString("MM-dd") , Utils.ConvertWeekDayToChinese(queryJpModel.ArrivalDate)); lblsTime.Text = queryJpModel.ArrivalTime.ToString("HH:mm"); lblHkNameCode.Text = string.Format("{0}{1}", queryJpModel.CarrierName, queryJpModel.FlightNo); lblMoneyInfo.Text = string.Format(" {0}:<span id=\"sprice\" class=\"price\"><dfn>¥</dfn>{1}</span>机/油:<span id=\"jprice\" class=\"price\"><dfn>¥</dfn>{2}</span>总计:<span id=\"tprice\" class=\"price\"><dfn>¥</dfn>{3}</span> ", getCM(queryJpModel.Carrier, datalist_Policy[0].ClassCodeStr) , datalist_Policy[0].Fare.ToString("F0") , (datalist_Policy[0].AirportTax + datalist_Policy[0].FuelSurTax).ToString("F0") , (datalist_Policy[0].Fare + datalist_Policy[0].AirportTax + datalist_Policy[0].FuelSurTax).ToString("F0")); this.ClassCode = queryJpModel.Class[i].Code; break; } } } }
/// <summary> /// 初始化机舱信息 /// </summary> void initPage() { ///PAT-XML StringBuilder querypolicyXML = new StringBuilder(); //接收航班查询的结果信息 string questXML = Utils.GetFormValue("HBbox"); int questInt = Utils.GetInt(Utils.GetFormValue("JCbox")); queryJpModel = (HBModel)Newtonsoft.Json.JsonConvert.DeserializeObject(questXML, typeof(HBModel)); if (queryJpModel != null) { Session["HBModel"] = queryJpModel; } if (queryJpModel != null && queryJpModel.Class != null && queryJpModel.Class.Count > 0) { for (int i = 0; i < queryJpModel.Class.Count; i++) { if (queryJpModel.Class[i].Identity == questInt) { #region PAT价格信息 querypolicyXML.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); querypolicyXML.Append("<QueryPolicy_2_0>"); querypolicyXML.Append("<Flights>"); querypolicyXML.Append("<Flight>"); querypolicyXML.AppendFormat("<BoardPoint>{0}</BoardPoint>", queryJpModel.BoardPoint); querypolicyXML.AppendFormat("<OffPoint>{0}</OffPoint>", queryJpModel.OffPoint); querypolicyXML.AppendFormat("<Carrier>{0}</Carrier>", queryJpModel.Carrier); querypolicyXML.AppendFormat("<FlightNo>{0}</FlightNo>", queryJpModel.FlightNo); querypolicyXML.AppendFormat("<ShareCarrier>{0}</ShareCarrier>", queryJpModel.ShareCarrier); ; querypolicyXML.AppendFormat("<ShareFlight>{0}</ShareFlight>", queryJpModel.ShareFlight); querypolicyXML.AppendFormat("<DepartureDate>{0}</DepartureDate>", queryJpModel.DepartureDate); querypolicyXML.AppendFormat("<DepartureTime>{0}</DepartureTime>", queryJpModel.DepartureTime.ToString("HH:mm")); querypolicyXML.AppendFormat("<ClassCode>{0}</ClassCode>", queryJpModel.Class[i].Code); querypolicyXML.Append("</Flight>"); querypolicyXML.Append("</Flights>"); querypolicyXML.Append("<Price>"); querypolicyXML.AppendFormat("<Fare>{0}</Fare>", queryJpModel.Class[i].F); querypolicyXML.AppendFormat("<Tax>{0}</Tax>", queryJpModel.AirportTax + queryJpModel.FuelSurTax); querypolicyXML.AppendFormat("<FuelSurTax>{0}</FuelSurTax>", queryJpModel.FuelSurTax); querypolicyXML.AppendFormat("<AirportTax>{0}</AirportTax>", queryJpModel.AirportTax); querypolicyXML.AppendFormat("<Rebate>{0}</Rebate>", queryJpModel.Class[i].R); querypolicyXML.AppendFormat("<Pat>{0}</Pat>", true); querypolicyXML.Append("</Price>"); querypolicyXML.Append("</QueryPolicy_2_0>"); string policyXML = new com._8222666.fxb2b.Service().XmlSubmit(getIdentityXMLString(), querypolicyXML.ToString(), ""); #endregion #region 获取PAT后的价格信息 XmlDocument dom = new XmlDocument(); dom.LoadXml(policyXML); if (dom.SelectSingleNode("ErrorInfo_1_0") != null && !string.IsNullOrEmpty(dom.SelectSingleNode("ErrorInfo_1_0").InnerText)) { mainbox.InnerHtml = "<center><a href=\"javascript:window.history.go(-1);\" >未校验到最新价格,请返回选择其他舱位</a></center>"; return; } XmlNodeList nodes = dom.SelectSingleNode("QueryPolicy_2_0").SelectSingleNode("PriceDetails").SelectNodes("PriceDetail"); for (int j = 0; j < nodes.Count; j++) { var model = new Eyousoft_yhq.Model.Policy(); model.PriceID = nodes[j].SelectSingleNode("PriceID").InnerText; model.PricePolicyNo = nodes[j].SelectSingleNode("PricePolicyNo").InnerText; model.PriceDetailID = nodes[j].SelectSingleNode("PriceDetailID").InnerText; model.ProviderCode = nodes[j].SelectSingleNode("ProviderCode").InnerText; model.PNR = nodes[j].SelectSingleNode("PNR").InnerText; model.CrsPnr = nodes[j].SelectSingleNode("CrsPnr").InnerText; model.Carrier = nodes[j].SelectSingleNode("Carrier").InnerText; model.PsgType = nodes[j].SelectSingleNode("PsgType").InnerText; model.DepartureDate = Utils.GetDateTime(nodes[j].SelectSingleNode("DepartureDate").InnerText); model.Airline = nodes[j].SelectSingleNode("Airline").InnerText; model.PsgCount = Utils.GetInt(nodes[j].SelectSingleNode("PsgCount").InnerText); model.BasePrice = Utils.GetDecimal(nodes[j].SelectSingleNode("BasePrice").InnerText); model.Fare = Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText); model.Fare2 = Utils.GetDecimal(nodes[j].SelectSingleNode("Fare2").InnerText); model.SalePrice = Utils.GetDecimal(nodes[j].SelectSingleNode("SalePrice").InnerText); model.CusSalePrice = Utils.GetDecimal(nodes[j].SelectSingleNode("CusSalePrice").InnerText); model.Rebate = Utils.GetDecimal(nodes[j].SelectSingleNode("Rebate").InnerText); model.TaxAmount = Utils.GetDecimal(nodes[j].SelectSingleNode("TaxAmount").InnerText); model.FuelSurTax = Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText); model.AirportTax = Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText); model.AffixFee = Utils.GetDecimal(nodes[j].SelectSingleNode("AffixFee").InnerText); model.Comm = Utils.GetDecimal(nodes[j].SelectSingleNode("Comm").InnerText); model.ZComm = Utils.GetDecimal(nodes[j].SelectSingleNode("ZComm").InnerText); model.Money = Utils.GetDecimal(nodes[j].SelectSingleNode("Money").InnerText); model.AgentComm = nodes[j].SelectSingleNode("AgentComm").InnerText; model.AgentCommEx = nodes[j].SelectSingleNode("AgentCommEx").InnerText; model.AgentMoney = Utils.GetDecimal(nodes[j].SelectSingleNode("AgentMoney").InnerText); model.SAgentComm = nodes[j].SelectSingleNode("SAgentComm").InnerText; model.EI = nodes[j].SelectSingleNode("EI").InnerText; model.TC = nodes[j].SelectSingleNode("TC").InnerText; model.TicketOffice = nodes[j].SelectSingleNode("TicketOffice").InnerText; model.Remark = nodes[j].SelectSingleNode("Remark").InnerText; model.AllowTkt = nodes[j].SelectSingleNode("AllowTkt").InnerText; model.CalcTkt = nodes[j].SelectSingleNode("CalcTkt").InnerText; model.UseRange = nodes[j].SelectSingleNode("UseRange").InnerText; model.TktType = nodes[j].SelectSingleNode("TktType").InnerText; model.UseType = nodes[j].SelectSingleNode("UseType").InnerText; model.DzType = nodes[j].SelectSingleNode("DzType").InnerText; model.FareBase = nodes[j].SelectSingleNode("FareBase").InnerText; model.ShareOffice = nodes[j].SelectSingleNode("ShareOffice").InnerText; model.BaseType = nodes[j].SelectSingleNode("BaseType").InnerText; model.Pat = nodes[j].SelectSingleNode("Pat").InnerText; model.Rmk = nodes[j].SelectSingleNode("Rmk").InnerText; model.Fp = nodes[j].SelectSingleNode("Fp").InnerText; model.Ext1 = nodes[j].SelectSingleNode("Ext1").InnerText; model.TktCustomerGain = Utils.GetDecimal(nodes[j].SelectSingleNode("TktCustomerGain").InnerText); model.TktCustomerGain2 = Utils.GetDecimal(nodes[j].SelectSingleNode("TktCustomerGain2").InnerText); model.TktNetPrice = Utils.GetDecimal(nodes[j].SelectSingleNode("TktNetPrice").InnerText); model.TktBalanceMoney = Utils.GetDecimal(nodes[j].SelectSingleNode("TktBalanceMoney").InnerText); model.TktBusinessFee = Utils.GetDecimal(nodes[j].SelectSingleNode("TktBusinessFee").InnerText); model.TktAgentGain = Utils.GetDecimal(nodes[j].SelectSingleNode("TktAgentGain").InnerText); model.TktAgentGain2 = Utils.GetDecimal(nodes[j].SelectSingleNode("TktAgentGain2").InnerText); model.TktPaymentFee = Utils.GetDecimal(nodes[j].SelectSingleNode("TktPaymentFee").InnerText); model.FltDateStr = nodes[j].SelectSingleNode("FltDateStr").InnerText; model.ClassCodeStr = nodes[j].SelectSingleNode("ClassCodeStr").InnerText; model.TktFlightNoStr = nodes[j].SelectSingleNode("TktFlightNoStr").InnerText; datalist_Policy.Add(model); hats.Add(model.PsgType, model.Fare); if (nodes[j].SelectSingleNode("PsgType").InnerText == "ADT") { this.ADT.Value = (Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText)).ToString(); } else if (nodes[j].SelectSingleNode("PsgType").InnerText == "CHD") { this.CHD.Value = (Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText)).ToString(); } else { this.INF.Value = (Utils.GetDecimal(nodes[j].SelectSingleNode("Fare").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("FuelSurTax").InnerText) + Utils.GetDecimal(nodes[j].SelectSingleNode("AirportTax").InnerText)).ToString(); } } hats.Add("FuelSurTax", Utils.GetDecimal(nodes[0].SelectSingleNode("FuelSurTax").InnerText)); hats.Add("AirportTax", Utils.GetDecimal(nodes[0].SelectSingleNode("AirportTax").InnerText)); hats.Add("TaxAmount", Utils.GetDecimal(nodes[0].SelectSingleNode("TaxAmount").InnerText)); hats.Add("SalePrice", Utils.GetDecimal(nodes[0].SelectSingleNode("SalePrice").InnerText)); ViewState["hats"] = hats; #endregion lbleDate.Text = string.Format("{0}{1}", queryJpModel.DepartureDate.ToString("MM-dd") , Utils.ConvertWeekDayToChinese(queryJpModel.DepartureDate)); lbleTime.Text = queryJpModel.DepartureTime.ToString("HH:mm"); lblsDate.Text = string.Format("{0}{1}", queryJpModel.ArrivalDate.ToString("MM-dd") , Utils.ConvertWeekDayToChinese(queryJpModel.ArrivalDate)); lblsTime.Text = queryJpModel.ArrivalTime.ToString("HH:mm"); lblHkNameCode.Text = string.Format("{0}{1}", queryJpModel.CarrierName, queryJpModel.FlightNo); lblMoneyInfo.Text = string.Format(" {0}:<span id=\"sprice\" class=\"price\"><dfn>¥</dfn>{1}</span>机/油:<span id=\"jprice\" class=\"price\"><dfn>¥</dfn>{2}</span>总计:<span id=\"tprice\" class=\"price\"><dfn>¥</dfn>{3}</span> ", getCM(queryJpModel.Carrier, datalist_Policy[0].ClassCodeStr) , datalist_Policy[0].Fare.ToString("F0") , (datalist_Policy[0].AirportTax + datalist_Policy[0].FuelSurTax).ToString("F0") , (datalist_Policy[0].Fare + datalist_Policy[0].AirportTax + datalist_Policy[0].FuelSurTax).ToString("F0")); this.ClassCode = queryJpModel.Class[i].Code; break; } } } }