Пример #1
0
    protected string printJpjz(kabe_flight aft)
    {
        string cookieKey = aft.ft + "-" + this.fromcityCode + "-" + this.tocityCode + "-" + this.tripDate;
        string key       = aft.airline + aft.depport + aft.arrport + aft.adultprice + "-" + aft.ticketId;

        if (Request.Cookies[cookieKey] != null)
        {
            string name = Request.Cookies[cookieKey][key];
            if (name != null && name.Equals("jpjz"))
            {
                return("<img src='images/jwyouxian.gif' />");
            }
        }
        return("&nbsp;");
    }
Пример #2
0
    private void makeJpjz(ArrayList pageTickets, string tripTypeIntP, int start, int end)
    {
        string cookieKey = tripTypeIntP + "-" + this.fromcityCode + "-" + this.tocityCode + "-" + this.tripDate;

        if (Request.Cookies[cookieKey] == null)
        {
            HttpCookie cookie = new HttpCookie(cookieKey);

            //默认价格排序
            Random ra          = new Random();
            int    jpjzNum     = ra.Next(start, end);
            int    jpjzContent = 5;

            if (pageTickets.Count < 6)
            {
                jpjzContent = pageTickets.Count;
            }

            for (int i = 0, j = 0; i < jpjzNum; i++)
            {
                //生成随机数
                int         jpjzTicket = ra.Next(0, jpjzContent);
                kabe_flight cacheAFT   = (kabe_flight)pageTickets[jpjzTicket];
                string      ticketKey  = cacheAFT.airline + cacheAFT.depport + cacheAFT.arrport + cacheAFT.adultprice + "-" + cacheAFT.ticketId;

                if (cacheAFT.ft.Equals(tripTypeIntP))
                {
                    cookie.Values[ticketKey] = "jpjz";
                    j++;
                }

                if ((jpjzContent + 2) < pageTickets.Count && i == jpjzNum - 1 && j == 0)
                {
                    jpjzContent = jpjzContent + 2;
                    i           = 0;
                }
            }
            cookie.Expires = System.DateTime.Now.AddDays(1);//设置过期时间  1天
            Response.Cookies.Add(cookie);
        }
    }
Пример #3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        string contrast_str = "";

        if (Request.Cookies["contrast_str"] == null)
        {
            Response.Cookies["contrast_str"].Value   = contrast_str;
            Response.Cookies["contrast_str"].Expires = DateTime.Now.AddDays(1);
        }
        else
        {
            contrast_str = Request.Cookies["contrast_str"].Value;
        }


        if (Request.QueryString["addId"] != null && Request.QueryString["addId"] != "")
        {
            string addId = Request.QueryString["addId"].ToString();
            if (contrast_str.IndexOf(addId + ",") == -1)
            {
                contrast_str = contrast_str + addId + ",";
                Response.Cookies["contrast_str"].Value   = contrast_str;
                Response.Cookies["contrast_str"].Expires = DateTime.Now.AddDays(1);
            }
        }

        if (Request.QueryString["delId"] != null && Request.QueryString["delId"] != "")
        {
            string delId = Request.QueryString["delId"].ToString();
            if (contrast_str.IndexOf(delId + ",") > -1)
            {
                contrast_str = contrast_str.Replace(delId + ",", "");
                Response.Cookies["contrast_str"].Value   = contrast_str;
                Response.Cookies["contrast_str"].Expires = DateTime.Now.AddDays(1);
            }
        }

        contrast_array = contrast_str.Split(",".ToCharArray());
        contrast_num   = contrast_array.Length - 1;
        DataRow        = new DataRow[contrast_num];
        for (int i = 0; i < contrast_num; i++)
        {
            string idString = contrast_array[i].ToString();
            if (idString.IndexOf("kabe") == -1)
            {
                int tid = Convert.ToInt32(contrast_array[i].ToString());
                DataRow[i] = GetTicketDetail(tid);
            }
            else
            {
                kabe_flight flight  = null;
                string[]    array   = idString.Split('_');
                ArrayList   tickets = (ArrayList)Session[string.Format("TicketsSessionKey_{0}_{1}_{2}_{3}_{4}", array[1], array[2], array[3], array[4], array[5])];
                if (tickets == null || tickets.Count == 0)
                {
                    Response.Redirect("/index.aspx");
                    return;
                }

                foreach (kabe_flight f in tickets)
                {
                    if (f.ticketId == array[6])
                    {
                        flight = f;
                    }
                }
                if (flight == null)
                {
                    Response.Redirect("/index.aspx");
                    return;
                }

                //查询机场信息
                string  logopic             = string.Empty;
                string  airchName           = string.Empty;
                string  planNum             = string.Empty;
                string  age                 = string.Empty;
                string  smallPic            = string.Empty;
                string  logoPic             = string.Empty;
                string  airId               = string.Empty;
                string  tairportdescription = string.Empty;
                string  airlineSql          = "select chName,planNum,age,aid,airlineCode,description,smallPic,logoPic from FY_Airline where airlineCode='" + flight.airline + "'";
                DataSet airlineDS           = SqlHelper.ExecuteDataset(SqlHelper.ConnString_select, CommandType.Text, airlineSql);
                if (airlineDS != null && airlineDS.Tables.Count > 0 && airlineDS.Tables[0].Rows.Count > 0)
                {
                    airchName           = airlineDS.Tables[0].Rows[0]["chName"].ToString();
                    airId               = airlineDS.Tables[0].Rows[0]["aid"].ToString();
                    smallPic            = airlineDS.Tables[0].Rows[0]["smallPic"].ToString();
                    logoPic             = airlineDS.Tables[0].Rows[0]["logoPic"].ToString();
                    tairportdescription = airlineDS.Tables[0].Rows[0]["description"].ToString();
                    planNum             = airlineDS.Tables[0].Rows[0]["planNum"].ToString();
                    age = airlineDS.Tables[0].Rows[0]["age"].ToString();
                }
                int    days = new Random().Next(-60, -5);
                string fromCityName = string.Empty, toCityName = string.Empty;

                //出发  到达  航司  查询转机信息
                DataTable dt = new DataTable();
                dt.Columns.Add("fromCity");
                dt.Columns.Add("toCity");
                dt.Columns.Add("fromCityname");
                dt.Columns.Add("fromCityCode");
                dt.Columns.Add("toCityname");
                dt.Columns.Add("toCityCode");
                dt.Columns.Add("addtime");
                dt.Columns.Add("untaxPrice");
                dt.Columns.Add("tripType");
                dt.Columns.Add("tId");
                dt.Columns.Add("fAirportCode");
                dt.Columns.Add("fromPort");
                dt.Columns.Add("tAirportName");
                dt.Columns.Add("logoPic");
                dt.Columns.Add("airname");
                dt.Columns.Add("planNum");
                dt.Columns.Add("age");
                dt.Columns.Add("smallPic");
                dt.Columns.Add("bagPrice");
                dt.Columns.Add("engerTicket");
                dt.Columns.Add("seatShip");
                dt.Columns.Add("shortstayDate");
                dt.Columns.Add("attPrice");
                dt.Columns.Add("longstayDate");
                dt.Columns.Add("childPrice");
                dt.Columns.Add("fromsaleDate");
                dt.Columns.Add("tosaleDate");
                dt.Columns.Add("fromtripDate");
                dt.Columns.Add("totripDate");
                dt.Columns.Add("returnMoney");
                dt.Columns.Add("updateProvision");
                dt.Columns.Add("limitProvision");
                dt.Columns.Add("fAirportName");
                dt.Columns.Add("tAirportCode");
                dt.Columns.Add("toPort");
                dt.Columns.Add("airId");
                dt.Columns.Add("score");
                dt.Columns.Add("zongping");
                dt.Columns.Add("xiai");
                dt.Columns.Add("xiaofei");
                dt.Columns.Add("manyi");
                dt.Columns.Add("fuwu");
                dt.Columns.Add("relayPort");
                dt.Columns.Add("returnTip");
                dt.Columns.Add("tairportdescription");
                dt.Columns.Add("startTime");
                dt.Columns.Add("arriveTime");
                dt.Rows.Add(getFromCityIdByCode(array[2], out fromCityName),
                            getToCityIdByCode(array[3], out toCityName),
                            fromCityName, array[2],
                            toCityName, array[3],
                            "2013-06-08",
                            flight.adultprice,
                            Convert.ToInt32(flight.ft) - 1,
                            "tId",
                            flight.depport,
                            ReadXmlHelper.GetAirPortNameByCode(flight.depport),
                            ReadXmlHelper.GetAirPortNameByCode(flight.arrport),
                            logoPic,
                            airchName,
                            planNum,
                            age,
                            smallPic,
                            string.Empty,                                                                                                                                                                                                                                                                             //bagPrice
                            "电子客票",                                                                                                                                                                                                                                                                                   //engerTicket
                            this.display_seat(flight.deproute.seat),
                            "30",                                                                                                                                                                                                                                                                                     //shortstayDate
                            string.Empty,                                                                                                                                                                                                                                                                             //attPrice
                            "180",                                                                                                                                                                                                                                                                                    //afti.longstayDate,
                            flight.childprice,
                            Convert.ToDateTime(flight.deproute.depdate).AddDays(days).ToString("yyyy-MM-dd"),                                                                                                                                                                                                         //convertDate(afti.fromsaleDate.Trim()),
                            flight.deproute.depdate,                                                                                                                                                                                                                                                                  //convertDate(afti.tosaleDate.Trim()),
                            flight.deproute.depdate,                                                                                                                                                                                                                                                                  //convertDate(afti.fromtripDate.Trim()),
                            flight.deproute.arrdate,                                                                                                                                                                                                                                                                  //convertDate(afti.totripDate.Trim()),
                            string.Empty,                                                                                                                                                                                                                                                                             //afti.returnMoney,
                            string.Empty,                                                                                                                                                                                                                                                                             //afti.updateProvision,
                            "<p>1.此票价为净价,不含任何费用<br />  2.票价如有更改,恕不另行通知<br />  3.不可签转,不可更改行程<br />  4.所有航段必须有确认的订座,不可开OPEN票. <br />  5.退票手续 :可退票,需缴纳手续费<br />  6.误机(NOSHOW) :需收取误机费<br />  7.更改订座 : 允许更改。乘客必须于出发日之前取消原订的航班,否则按照 '误机' 处理<br />  8.儿童票价 :成人票价的75% <br />  9.婴儿票价 :使用 IATA 公布成人票价的10%<br />  &nbsp;</p>", //afti.limitProvision,
                            ReadXmlHelper.GetAirPortNameByCode(flight.depport),                                                                                                                                                                                                                                       // afti.fromAirportName,
                            flight.arrport,                                                                                                                                                                                                                                                                           //afti.toAirportCode,
                            "toPort",
                            airId,
                            "100", //afti.score,
                            "3",   //afti.zongping,
                            "2",   //afti.xiai,
                            "4",   //afti.xiaofei,
                            "4",   //afti.manyi,
                            "4",   //afti.fuwu,
                            flight.deproute.route,
                            "returnTip",
                            tairportdescription,
                            flight.deproute.depdate + " " + flight.deproute.deptime.Insert(2, ":"),
                            flight.deproute.arrdate + " " + flight.deproute.arrtime.Insert(2, ":"));
                DataRow[i] = dt.Rows[0];
            }
        }
    }
Пример #4
0
    protected void GetSearchTicket()
    {
        DataSet airlines = this.getAirLineDataSets();//获取航空公司

        System.Threading.AutoResetEvent resetEvent = new System.Threading.AutoResetEvent(false);
        getFei580TicektHandler          d1 = new getFei580TicektHandler(getFei580Ticekt);
        getKABETiceketHandler           d2 = new getKABETiceketHandler(getKABETiceket);
        IAsyncResult iar1 = null, iar2 = null;
        ArrayList    tickets1 = null, tickets2 = null;
        AsyncCallback back1 = delegate(IAsyncResult iar)
        {
            try
            {
                tickets1 = d1.EndInvoke(iar1);
                if (iar2 != null && iar2.IsCompleted)
                {
                    resetEvent.Set();
                }
            }
            catch
            {
                resetEvent.Set();
            }
        };

        AsyncCallback back2 = delegate(IAsyncResult iar)
        {
            try
            {
                tickets2 = d2.EndInvoke(iar2);
                if (iar1 != null && iar1.IsCompleted)
                {
                    resetEvent.Set();
                }
            }
            catch
            {
                resetEvent.Set();
            }
        };

        iar1 = d1.BeginInvoke(back1, null);
        iar2 = d2.BeginInvoke(getAirLineCode(airlines, this.airlineId), back2, null);
        if (resetEvent.WaitOne(8000, true))
        {
            resetEvent.Close();
        }

        //没数据 显示提示
        if ((tickets1 == null || tickets1.Count == 0) && (tickets2 == null || tickets2.Count == 0))
        {
            this.panHaveValue2.Visible = false;
            this.panNoValue.Visible    = true;
            return;
        }
        else
        {
            this.panHaveValue2.Visible = true;
            this.panNoValue.Visible    = false;
        }

        ArrayList tickets = new ArrayList();

        if (string.IsNullOrEmpty(this.orderStr))
        {
            //排序飞瀛机票
            foreach (kabe_flight ordertickets in tickets1)
            {
                if (tickets.Count == 0)
                {
                    tickets.Add(ordertickets);
                }
                else
                {
                    bool isEnd = false;
                    for (int i = 0; i < tickets.Count && !isEnd; i++)
                    {
                        kabe_flight aft = (kabe_flight)tickets[i];
                        if ((i + 1) == tickets.Count && ordertickets.adultprice > aft.adultprice)
                        {
                            tickets.Add(ordertickets);
                            isEnd = true;
                            break;
                        }
                        else if (ordertickets.adultprice <= aft.adultprice)
                        {
                            tickets.Insert(i, ordertickets);
                            isEnd = true;
                            break;
                        }
                    }
                }
            }

            //排序Kabe机票
            if (tickets2 != null)
            {
                foreach (kabe_flight ordertickets in tickets2)
                {
                    if (tickets.Count == 0)
                    {
                        tickets.Add(ordertickets);
                    }
                    else
                    {
                        bool isEnd = false;
                        for (int i = 0; i < tickets.Count && !isEnd; i++)
                        {
                            kabe_flight aft = (kabe_flight)tickets[i];
                            if ((i + 1) == tickets.Count && ordertickets.adultprice > aft.adultprice)
                            {
                                tickets.Add(ordertickets);
                                isEnd = true;
                                break;
                            }
                            else if (ordertickets.adultprice < aft.adultprice)
                            {
                                tickets.Insert(i, ordertickets);
                                isEnd = true;
                                break;
                            }
                            else if (ordertickets.adultprice == aft.adultprice && ordertickets.airline.Equals(aft.airline))
                            {
                                isEnd = true;
                                break;
                            }
                        }
                    }
                }
            }
        }
        else if (this.orderStr.Trim() == "airLine")
        {
            //航空公司排序
            tickets = tickets1;
            //排序kabe机票
            foreach (kabe_flight ordertickets in tickets2)
            {
                if (tickets.Count == 0)
                {
                    tickets.Add(ordertickets);
                }
                else
                {
                    bool isEnd = false;
                    for (int i = 0; i < tickets.Count && !isEnd; i++)
                    {
                        kabe_flight aft = (kabe_flight)tickets[i];
                        if ((i + 1) == tickets.Count && ordertickets.adultprice > aft.adultprice && ordertickets.airline.Equals(aft.airline))
                        {
                            tickets.Add(ordertickets);
                            isEnd = true;
                            break;
                        }
                        else if (ordertickets.adultprice < aft.adultprice && ordertickets.airline.Equals(aft.airline))
                        {
                            tickets.Insert(i, ordertickets);
                            isEnd = true;
                            break;
                        }
                        else if (ordertickets.adultprice == aft.adultprice && ordertickets.airline.Equals(aft.airline))
                        {
                            tickets.Insert(i, ordertickets);
                            isEnd = true;
                            break;
                        }
                    }
                    if (!isEnd)
                    {
                        tickets.Add(ordertickets);
                    }
                }
            }
        }
        //
        if (Session["TicketsSessionKey_Airlines"] == null)
        {
            ArrayList airlinesresult = new ArrayList();
            foreach (DataRow dr in airlines.Tables[0].Rows)
            {
                foreach (kabe_flight ordertickets in tickets)
                {
                    if (dr["airlinecode"].ToString().Trim().ToLower() == ordertickets.airline.Trim().ToLower())
                    {
                        kabe_Airline a = new kabe_Airline();
                        a.airlineId   = dr["aId"].ToString();
                        a.airlineCode = dr["airlinecode"].ToString();
                        a.airlineName = dr["chName"].ToString();
                        a.airlinePic  = dr["smallPic"].ToString();
                        airlinesresult.Add(a);
                        break;
                    }
                }
            }
            //写入Session 分页使用
            Session["TicketsSessionKey_Airlines"] = airlinesresult;
        }
        Session["TicketsSessionKey_KaBaTickets"] = tickets2;
        Session[string.Format("TicketsSessionKey_{0}_{1}_{2}_{3}_{4}", this.tripType, fromcityCode, this.tocityCode, Convert.ToDateTime(this.tripDate).ToString("yyyyMMdd"), Convert.ToDateTime(this.backDate).ToString("yyyyMMdd"))] = tickets;
        this.BindData(tickets);
    }
Пример #5
0
    /// <summary>
    /// 获取指定航空公司数据并返回给返回参数
    /// </summary>
    /// <param name="tickets"></param>
    /// <param name="xmlNode"></param>
    /// <param name="airlineCode"></param>
    private void getKABEObjects(ref ArrayList tickets, XmlNode xmlNode, string airlineCode)
    {
        if (xmlNode.SelectSingleNode("code").InnerText != "0")
        {
            return;
        }
        //单双程
        XmlElement para = xmlNode.SelectSingleNode("para") as XmlElement;
        string     ft   = para["ft"].InnerText;

        XmlElement flights = xmlNode.SelectSingleNode("flights") as XmlElement;

        foreach (XmlElement flight in flights.ChildNodes)
        {
            if (!string.IsNullOrEmpty(airlineCode))
            {
                if (flight["airline"].InnerText.ToLower().Trim() != airlineCode.ToLower().Trim())
                {
                    continue;
                }
            }

            kabe_flight item = new kabe_flight();
            item.source   = "kabe";
            item.ft       = ft;
            item.ticketId = System.Guid.NewGuid().ToString();
            item.depport  = flight["depport"].InnerText;
            item.arrport  = flight["arrport"].InnerText;
            item.airline  = flight["airline"].InnerText;
            decimal adultprice = decimal.Parse(flight["adultprice"].InnerText);
            decimal childprice = decimal.Parse(flight["childprice"].InnerText);
            item.adultprice = adultprice > 1000 ? adultprice - 200 : adultprice;
            item.childprice = childprice > 1000 ? childprice - 200 : childprice;
            item.tax        = flight["tax"].InnerText;
            item.currency   = flight["currency"].InnerText;
            item.open       = flight["open"].InnerText;

            kabe_deproute _deproute = new kabe_deproute();
            XmlElement    deproute  = flight["deproute"];
            _deproute.route    = deproute["route"].InnerText;
            _deproute.aircode  = deproute["aircode"].InnerText;
            _deproute.depdate  = deproute["depdate"].InnerText;
            _deproute.arrdate  = deproute["arrdate"].InnerText;
            _deproute.deptime  = deproute["deptime"].InnerText;
            _deproute.arrtime  = deproute["arrtime"].InnerText;
            _deproute.transfer = deproute["transfer"].InnerText;
            _deproute.seat     = deproute["seat"].InnerText;
            item.deproute      = _deproute;

            kabe_deproute _arrroute = new kabe_deproute();
            XmlElement    arrroute  = flight["arrroute"];
            _arrroute.route    = arrroute["route"].InnerText;
            _arrroute.aircode  = arrroute["aircode"].InnerText;
            _arrroute.depdate  = arrroute["depdate"].InnerText;
            _arrroute.arrdate  = arrroute["arrdate"].InnerText;
            _arrroute.deptime  = arrroute["deptime"].InnerText;
            _arrroute.arrtime  = arrroute["arrtime"].InnerText;
            _arrroute.transfer = arrroute["transfer"].InnerText;
            _arrroute.seat     = arrroute["seat"].InnerText;
            item.arrroute      = _arrroute;

            ArrayList  segment     = new ArrayList();
            XmlElement flightdatas = flight["flightdatas"];
            foreach (XmlElement s in flightdatas.ChildNodes)
            {
                kabe_segment _s = new kabe_segment();
                _s.dep        = s["dep"].InnerText;
                _s.arr        = s["arr"].InnerText;
                _s.air        = s["air"].InnerText;
                _s.flightno   = s["flightno"].InnerText;
                _s.depairport = s["depairport"].InnerText;
                _s.arrairport = s["arrairport"].InnerText;
                _s.depdate    = s["depdate"].InnerText;
                _s.arrdate    = s["arrdate"].InnerText;
                _s.deptime    = s["deptime"].InnerText;
                _s.arrtime    = s["arrtime"].InnerText;
                _s.flytime    = s["flytime"].InnerText;
                _s.plane      = s["plane"].InnerText;
                _s.seat       = s["seat"].InnerText;
                _s.stop       = s["stop"].InnerText;
                _s.datas      = s["datas"].InnerText;
                segment.Add(_s);
            }
            item.segment = segment;
            tickets.Add(item);
        }
    }
Пример #6
0
    /// <summary>
    /// 获取Fei580票价
    /// </summary>
    /// <returns></returns>
    protected ArrayList getFei580Ticekt()
    {
        StringBuilder str = new StringBuilder();

        str.Append("select top 100 percent");
        str.Append(" FY_Ticket.tid,FY_Ticket.untaxPrice,FY_Ticket.relayPort,FY_Ticket.tripType,");
        str.Append(" FY_FromCity.cityCode as fromCityCode,");
        str.Append(" FY_ToCity.cityCode as toCityCode,");
        str.Append(" FY_Tax.tax,");
        str.Append(" FY_FromCity.chName as fromCityname,FY_FromCity.fId,FY_Airline.aId,FY_ToCity.tId as toId,");
        str.Append(" FY_ToCity.chName as toCityname,FY_Airline.airlineCode as airlineCode,FY_Airline.chName as airname, FY_Airline.smallPic as smallPic from FY_Ticket ");
        str.Append(" left join FY_FromCity on FY_FromCity.fId=FY_Ticket.fromCity");
        str.Append(" left join FY_ToCity on FY_ToCity.tId=FY_Ticket.toCity");
        str.Append(" left join FY_Airline on FY_Airline.aId=FY_Ticket.airLine");
        str.Append(" left join FY_Tax on (FY_Ticket.tripType =FY_Tax.taxType and FY_Ticket.airLine = FY_Tax.airline and FY_Ticket.toCity = FY_Tax.toCity and FY_Ticket.fromCity = FY_Tax.fromCity)");
        str.Append(" where 1=1 ");
        if (this.tripType != 2)
        {
            str.Append(" and (FY_Ticket.tripType=" + this.tripType + ")");
        }
        if (this.fromcity != 0)
        {
            str.Append(" and (FY_FromCity.fId=" + this.fromcity + ")");
        }
        if (!string.IsNullOrEmpty(this.tocityName1))
        {
            str.Append(" and (FY_ToCity.chName like '%" + tocityName1 + "%')");
        }
        if (!string.IsNullOrEmpty(this.tripDate))
        {
            str.Append(" and (FY_Ticket.fromtripDate<='" + tripDate + "' and FY_Ticket.totripDate>='" + tripDate + "' )");
        }
        if (!string.IsNullOrEmpty(this.tripDate) && !string.IsNullOrEmpty(this.backDate) && this.tripType != 0)
        {
            int day = (Convert.ToDateTime(backDate) - Convert.ToDateTime(tripDate)).Days;
            str.Append(" and DateDiff(d,FY_Ticket.fromtripDate,FY_Ticket.totripDate) >= " + day);
        }
        str.Append(" and (FY_Ticket.tosaleDate>='" + DateTime.Now.ToString("yyyy-MM-dd") + "')");
        if (!string.IsNullOrEmpty(this.airlineId))
        {
            str.Append(" and (FY_Airline.aId=" + airlineId + ")");
        }
        if (string.IsNullOrEmpty(this.orderStr))
        {
            str.Append(" order by FY_Ticket.untaxPrice asc ,FY_Ticket.tId desc");
        }
        else
        {
            str.Append(" order by FY_Ticket." + this.orderStr + " asc ,FY_Ticket.tId desc");
        }
        DataSet   ds = SqlHelper.ExecuteDataset(SqlHelper.ConnString_select, CommandType.Text, str.ToString());
        DataTable dt = ds.Tables[0];

        ArrayList result = new ArrayList();

        foreach (DataRow dr in dt.Rows)
        {
            kabe_flight item = new kabe_flight();
            item.source     = "feiying";
            item.ft         = (Convert.ToInt32(dr["tripType"]) + 1).ToString();
            item.ticketId   = dr["tid"].ToString().Trim();
            item.depport    = dr["fromCityCode"].ToString();
            item.arrport    = dr["toCityCode"].ToString();
            item.airline    = dr["airlineCode"].ToString();
            item.adultprice = decimal.Parse(dr["untaxPrice"].ToString());
            item.childprice = 0.00M;
            item.relayPort  = dr["relayPort"].ToString();
            //item.tax = flight["tax"].InnerText;
            item.currency = "CNY";
            item.open     = "0";

            //kabe_deproute _deproute = new kabe_deproute();
            //XmlElement deproute = flight["deproute"];
            //_deproute.route = deproute["route"].InnerText;
            //_deproute.aircode = deproute["aircode"].InnerText;
            //_deproute.depdate = deproute["depdate"].InnerText;
            //_deproute.arrdate = deproute["arrdate"].InnerText;
            //_deproute.deptime = deproute["deptime"].InnerText;
            //_deproute.arrtime = deproute["arrtime"].InnerText;
            //_deproute.transfer = deproute["transfer"].InnerText;
            //_deproute.seat = deproute["seat"].InnerText;
            //item.deproute = _deproute;

            //kabe_deproute _arrroute = new kabe_deproute();
            //XmlElement arrroute = flight["arrroute"];
            //_arrroute.route = arrroute["route"].InnerText;
            //_arrroute.aircode = arrroute["aircode"].InnerText;
            //_arrroute.depdate = arrroute["depdate"].InnerText;
            //_arrroute.arrdate = arrroute["arrdate"].InnerText;
            //_arrroute.deptime = arrroute["deptime"].InnerText;
            //_arrroute.arrtime = arrroute["arrtime"].InnerText;
            //_arrroute.transfer = arrroute["transfer"].InnerText;
            //_arrroute.seat = arrroute["seat"].InnerText;
            //item.arrroute = _arrroute;
            result.Add(item);
        }
        return(result);
    }
Пример #7
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Request.QueryString["tId"] != null)
        {
            string tId = Request.QueryString["tId"];
            if (tId.IndexOf("kabe") == -1)
            {
                id        = Convert.ToInt32(Request.QueryString["tId"].ToString());
                ticketOne = GetTicketDetail(id);
            }
            else
            {
                string[]  array   = tId.Split('_');
                ArrayList tickets = (ArrayList)Session[string.Format("TicketsSessionKey_{0}_{1}_{2}_{3}_{4}", array[1], array[2], array[3], array[4], array[5])];
                if (tickets == null || tickets.Count == 0)
                {
                    //scripthelp.AlertAndRedirect("记录超时,请重新查询票价信息!", "/index.aspx", this);
                    Response.Redirect("/index.aspx");
                    return;
                }


                foreach (kabe_flight f in tickets)
                {
                    if (f.ticketId == array[6])
                    {
                        flight = f;
                    }
                }
                if (flight == null)
                {
                    //scripthelp.AlertAndRedirect("获取票价信息时报,请重新查询票价信息!", "/index.aspx", this);
                    Response.Redirect("/index.aspx");
                    return;
                }

                //出发  到达  航司  查询转机信息
                DataTable dt = new DataTable();
                dt.Columns.Add("fromCity");
                dt.Columns.Add("toCity");
                dt.Columns.Add("fromCityname");
                dt.Columns.Add("fromCityCode");
                dt.Columns.Add("toCityname");
                dt.Columns.Add("toCityCode");
                dt.Columns.Add("addtime");
                dt.Columns.Add("untaxPrice");
                dt.Columns.Add("tripType");
                dt.Columns.Add("tId");
                dt.Columns.Add("fAirportCode");
                dt.Columns.Add("fromPort");
                dt.Columns.Add("tAirportName");
                dt.Columns.Add("logoPic");
                dt.Columns.Add("airname");
                dt.Columns.Add("planNum");
                dt.Columns.Add("age");
                dt.Columns.Add("smallPic");
                dt.Columns.Add("bagPrice");
                dt.Columns.Add("engerTicket");
                dt.Columns.Add("seatShip");
                dt.Columns.Add("shortstayDate");
                dt.Columns.Add("attPrice");
                dt.Columns.Add("longstayDate");
                dt.Columns.Add("childPrice");
                dt.Columns.Add("fromsaleDate");
                dt.Columns.Add("tosaleDate");
                dt.Columns.Add("fromtripDate");
                dt.Columns.Add("totripDate");
                dt.Columns.Add("returnMoney");
                dt.Columns.Add("updateProvision");
                dt.Columns.Add("limitProvision");
                dt.Columns.Add("fAirportName");
                dt.Columns.Add("tAirportCode");
                dt.Columns.Add("toPort");
                dt.Columns.Add("airId");
                dt.Columns.Add("score");
                dt.Columns.Add("zongping");
                dt.Columns.Add("xiai");
                dt.Columns.Add("xiaofei");
                dt.Columns.Add("manyi");
                dt.Columns.Add("fuwu");
                dt.Columns.Add("relayPort");
                dt.Columns.Add("returnTip");
                dt.Columns.Add("tairportdescription");
                dt.Columns.Add("startTime");
                dt.Columns.Add("arriveTime");
                this.pan_aifeitime.Visible = true;

                //查询机场信息
                string  logopic             = string.Empty;
                string  airchName           = string.Empty;
                string  planNum             = string.Empty;
                string  age                 = string.Empty;
                string  smallPic            = string.Empty;
                string  logoPic             = string.Empty;
                string  airId               = string.Empty;
                string  tairportdescription = string.Empty;
                string  airlineSql          = "select chName,planNum,age,aid,airlineCode,description,smallPic,logoPic from FY_Airline where airlineCode='" + flight.airline + "'";
                DataSet airlineDS           = SqlHelper.ExecuteDataset(SqlHelper.ConnString_select, CommandType.Text, airlineSql);
                if (airlineDS != null && airlineDS.Tables.Count > 0 && airlineDS.Tables[0].Rows.Count > 0)
                {
                    airchName           = airlineDS.Tables[0].Rows[0]["chName"].ToString();
                    airId               = airlineDS.Tables[0].Rows[0]["aid"].ToString();
                    smallPic            = airlineDS.Tables[0].Rows[0]["smallPic"].ToString();
                    logoPic             = airlineDS.Tables[0].Rows[0]["logoPic"].ToString();
                    tairportdescription = airlineDS.Tables[0].Rows[0]["description"].ToString();
                    planNum             = airlineDS.Tables[0].Rows[0]["planNum"].ToString();
                    age = airlineDS.Tables[0].Rows[0]["age"].ToString();
                }
                int days = new Random().Next(-60, -5);
                this.flight_fplan = this.display_plan(flight.segment, flight.deproute.route);
                if (flight.ft == "2")
                {
                    this.flight_tplan = this.display_plan(flight.segment, flight.arrroute.route);
                }

                dt.Rows.Add(getFromCityIdByCode(array[2]),
                            getToCityIdByCode(array[3]),
                            this.fromCityName, array[2],
                            this.toCityName, array[3],
                            "2013-06-08",
                            flight.adultprice,
                            Convert.ToInt32(flight.ft) - 1,
                            tId,
                            flight.depport,
                            ReadXmlHelper.GetAirPortIDByCode(flight.depport),
                            ReadXmlHelper.GetAirPortNameByCode(flight.arrport),
                            logoPic,
                            airchName,
                            planNum,
                            age,
                            smallPic,
                            string.Empty,                                                                                                                                                                                                                                                                             //bagPrice
                            "电子客票",                                                                                                                                                                                                                                                                                   //engerTicket
                            this.display_seat(flight.deproute.seat),
                            "30",                                                                                                                                                                                                                                                                                     //shortstayDate
                            string.Empty,                                                                                                                                                                                                                                                                             //attPrice
                            "180",                                                                                                                                                                                                                                                                                    //afti.longstayDate,
                            flight.childprice,
                            Convert.ToDateTime(flight.deproute.depdate).AddDays(days).ToString("yyyy-MM-dd"),                                                                                                                                                                                                         //convertDate(afti.fromsaleDate.Trim()),
                            flight.deproute.depdate,                                                                                                                                                                                                                                                                  //convertDate(afti.tosaleDate.Trim()),
                            flight.deproute.depdate,                                                                                                                                                                                                                                                                  //convertDate(afti.fromtripDate.Trim()),
                            flight.deproute.arrdate,                                                                                                                                                                                                                                                                  //convertDate(afti.totripDate.Trim()),
                            string.Empty,                                                                                                                                                                                                                                                                             //afti.returnMoney,
                            string.Empty,                                                                                                                                                                                                                                                                             //afti.updateProvision,
                            "<p>1.此票价为净价,不含任何费用<br />  2.票价如有更改,恕不另行通知<br />  3.不可签转,不可更改行程<br />  4.所有航段必须有确认的订座,不可开OPEN票. <br />  5.退票手续 :可退票,需缴纳手续费<br />  6.误机(NOSHOW) :需收取误机费<br />  7.更改订座 : 允许更改。乘客必须于出发日之前取消原订的航班,否则按照 '误机' 处理<br />  8.儿童票价 :成人票价的75% <br />  9.婴儿票价 :使用 IATA 公布成人票价的10%<br />  &nbsp;</p>", //afti.limitProvision,
                            ReadXmlHelper.GetAirPortNameByCode(flight.depport),                                                                                                                                                                                                                                       // afti.fromAirportName,
                            flight.arrport,                                                                                                                                                                                                                                                                           //afti.toAirportCode,
                            ReadXmlHelper.GetAirPortIDByCode(flight.arrport),
                            airId,
                            "100", //afti.score,
                            "3",   //afti.zongping,
                            "2",   //afti.xiai,
                            "4",   //afti.xiaofei,
                            "4",   //afti.manyi,
                            "4",   //afti.fuwu,
                            flight.deproute.route,
                            "returnTip",
                            tairportdescription,
                            flight.deproute.depdate + " " + flight.deproute.deptime.Insert(2, ":"),
                            flight.deproute.arrdate + " " + flight.deproute.arrtime.Insert(2, ":"));
                //fromCityname,toCityname,toCityCode,toCityname,addtime,
                //untaxPrice,tripType,tId,fAirportCode,fromCityCode,fromPort,
                //tAirportName,logoPic,airname,planNum,age
                //smallPic,bagPrice,engerTicket,seatShip,shortstayDate,attPrice
                //longstayDate,childPrice,fromsaleDate,tosaleDate,
                //fromtripDate,totripDate,returnMoney,updateProvision
                ticketOne = dt.Rows[0];
            }

            int fCityId = Convert.ToInt32(ticketOne["fromCity"].ToString());
            int tCityId = Convert.ToInt32(ticketOne["toCity"].ToString());
            ticket_7      = GetTicketDetailBydelay(7, fCityId, tCityId, 6);
            ticket_14     = GetTicketDetailBydelay(14, fCityId, tCityId, 6);
            ticket_30     = GetTicketDetailBydelay(30, fCityId, tCityId, 6);
            ticket_60     = GetTicketDetailBydelay(60, fCityId, tCityId, 6);
            ticket_90     = GetTicketDetailBydelay(90, fCityId, tCityId, 6);
            ticket_120    = GetTicketDetailBydelay(120, fCityId, tCityId, 6);
            ticket_180    = GetTicketDetailBydelay(180, fCityId, tCityId, 6);
            ticket_365    = GetTicketDetailBydelay(365, fCityId, tCityId, 6);
            ticket_all    = GetTicketDetailBydelay(0, fCityId, tCityId, 5);
            tmax          = tmax > ticket_7.Count ? tmax : ticket_7.Count;
            tmax          = tmax > ticket_14.Count ? tmax : ticket_14.Count;
            tmax          = tmax > ticket_30.Count ? tmax : ticket_30.Count;
            tmax          = tmax > ticket_60.Count ? tmax : ticket_60.Count;
            tmax          = tmax > ticket_90.Count ? tmax : ticket_90.Count;
            tmax          = tmax > ticket_120.Count ? tmax : ticket_120.Count;
            tmax          = tmax > ticket_180.Count ? tmax : ticket_180.Count;
            tmax          = tmax > ticket_365.Count ? tmax : ticket_365.Count;
            hotNews       = getNewsRandom(id);
            randowTicketF = GetRandowTicketF(14, fCityId, tCityId, 10);
            randowTicketT = GetRandowTicketT(14, fCityId, tCityId, 10);
            randowNews    = getQuanByType(ticketOne["toCityname"].ToString());
        }
        else
        {
            Response.Redirect("international.aspx");
        }
    }