public void Test_BusinessDispose() { #warning 几点未测到:1、当返回结果中DEP这行,包含有OPEN的,测是否能分别解析到正确的航司和舱位信息;2、当返回结果中DEP这行,不含有OPEN,且仓位位于第7个位置,而不是第6个位置。测当遇到此种情况时,是否能解析到正确的仓位 JetermEntity.Request.TicketInfoByS request = new JetermEntity.Request.TicketInfoByS(); request.TicketNo = "784-2158602564"; //request.TicketNo = "7842133192747"; //request.TicketNo = "7842130024027"; EtermProxy.BLL.TicketInfoByS getTickInfo = new EtermProxy.BLL.TicketInfoByS(IntPtr.Zero, IntPtr.Zero, string.Empty, string.Empty); CommandResult <JetermEntity.Response.TicketInfoByS> result = getTickInfo.BusinessDispose(request); if (result != null && result.state) { // 运行结果,如: // {"TicketNo":"7842158602564","PassengerName":"张细志","Airline":"CZ","Price":{"FacePrice":640.00,"TotalPrice":750.00,"Tax":50.00,"Fuel":60.00},"SCity":"CSX","ECity":"CTU","Cabin":"U"} Console.WriteLine("运行结果:" + Newtonsoft.Json.JsonConvert.SerializeObject(result.result)); return; } if (result.error != null) { Console.WriteLine("运行错误,错误信息:" + result.error.ErrorMessage); } }
/// <summary> /// 主方法:【DETR:TN/{票号},S】指令返回结果解析 /// </summary> /// <param name="request">请求对象</param> /// <returns>解析结果</returns> public override CommandResult <JetermEntity.Response.TicketInfoByS> BusinessDispose(JetermEntity.Request.TicketInfoByS request) { JetermEntity.Parser.TicketInfoByS ticketInfoByS = new JetermEntity.Parser.TicketInfoByS(this.config, this.OfficeNo); this.Cmd = ticketInfoByS.ParseCmd(request); if (string.IsNullOrEmpty(this.Cmd)) { return(ticketInfoByS.Response); } ExcuteCmd(); return(ticketInfoByS.ParseCmdResult(this.CmdResult)); }