示例#1
0
        public void Test_Deserializer1()
        {
            JetermEntity.Parser.GetPrice getPrice = new JetermEntity.Parser.GetPrice();

            JetermEntity.Request.GetPrice request = new JetermEntity.Request.GetPrice();
            request.PassengerType = JetermEntity.EtermCommand.PassengerType.Adult;
            request.FlightList    = new List <JetermEntity.Flight>();
            JetermEntity.Flight flight = new JetermEntity.Flight();
            flight.FlightNo = "CZ123";

            string cmd = getPrice.ParseCmd(request);

            getPrice.ParseCmdResult(cmd);
        }
示例#2
0
        /// <summary>
        /// 获得第1种返回结果中的航班信息
        /// </summary>
        /// <param name="detrInfo"></param>
        /// <returns></returns>
        private void MatchFlightInfo(string detrInfo)
        {
            Regex regex  = new Regex(@"FOID:\S+\s*(?'FlightNo'\S+)\s*/(?'Date'\S+)/(?'StartCity'[A-Z]{3})(?'EndCity'[A-Z]{3})");
            var   matchs = regex.Matches(detrInfo);
            List <JetermEntity.Flight> flightList = new List <JetermEntity.Flight>();

            JetermEntity.Flight flight;
            foreach (Match match in matchs)
            {
                string flightNo = match.Groups["FlightNo"].Captures[0].Value;
                string sCity    = match.Groups["StartCity"].Captures[0].Value;
                string eCity    = match.Groups["EndCity"].Captures[0].Value;

                if (!flightNo.Equals(FlightNo) || !sCity.Equals(SCity) || !eCity.Equals(ECity))
                {
                    continue;
                }

                flight          = new JetermEntity.Flight();
                flight.FlightNo = match.Groups["FlightNo"].Captures[0].Value;
                if (!string.IsNullOrWhiteSpace(flight.FlightNo) && flight.FlightNo.Length > 2)
                {
                    flight.Airline = flight.FlightNo.Substring(0, 2);
                }
                // 传入格式如:12DEC14
                flight.DepDate = ParserHelper.ConvertStringToDateTime(match.Groups["Date"].Captures[0].Value);
                flight.SCity   = match.Groups["StartCity"].Captures[0].Value;
                flight.ECity   = match.Groups["EndCity"].Captures[0].Value;
                flightList.Add(flight);

                _response.result.FlightList = flightList;
                return;
            }

            return;
        }