コード例 #1
0
    public AirMaterial EditMaterialGroupMarkup(AirMaterial flightMaterial)
    {
        string groupCode = GlobalBaseUtility.GetGroupCode();

        if (groupCode == null)
        {
            return flightMaterial;
        }

        //
        GroupMarkup groupMarkup = WebSiteService.GetGroupMarkup(groupCode);
        if (groupMarkup == null || groupMarkup.GroupCode != groupCode)
        {
            return flightMaterial;
        }

        if (flightMaterial.Profile.GetParam("FARE_TYPE").ToString() == "COMM")
        {
            //airMaterial = EditGroupMarkupAfterSelect(airMaterial, groupMarkup);
            flightMaterial = EditMaterialGroupMarkupWhenComm(flightMaterial);
        }
        else
        {
            flightMaterial = EditGroupMarkup(flightMaterial, groupMarkup);
        }

        return flightMaterial;
    }
コード例 #2
0
    public void AddFlight(AirMaterial flight, MatrixStopType matrixStopType)
    {
        switch (matrixStopType)
        {
            case MatrixStopType.ZeroStop:
                _zeroStopFlightList.Add(flight);
                break;

            case MatrixStopType.OneStop:
                _oneStopFlightList.Add(flight);
                break;

            case MatrixStopType.MoreThanTwoStop:
                _moreThanTwoStopFlightList.Add(flight);
                break;

            case MatrixStopType.All:
                throw new Exception("You must choose the other type to Add a Flight.");
                break;
        }
    }
コード例 #3
0
 private bool IsPriceEqual(AirMaterial currentFlight, AirMaterial preFlight)
 {
     return currentFlight.AdultBaseFare + currentFlight.AdultMarkup + currentFlight.AdultTax
         == preFlight.AdultBaseFare + preFlight.AdultMarkup + preFlight.AdultTax;
 }
コード例 #4
0
ファイル: Step3_net.aspx.cs プロジェクト: foxvirtuous/MVB2C
    private void GetAirBookingCondition(ref IList<Passenger> passengers)
    {
        AirMaterial airMaterial = new AirMaterial(SelectedAirMerchandise.Profile);
        airMaterial.SetAdultBaseFare(SelectedAirMerchandise.AdultBaseFare);
        airMaterial.SetChildBaseFare(SelectedAirMerchandise.ChildBaseFare);

        //ADD PengZhaohui
        TERMS.Common.Markup markup = new TERMS.Common.Markup(TERMS.Common.PassengerType.Adult, new TERMS.Common.FareAmount(SelectedAirMerchandise.AdultMarkup));
        markup.SetAmount(TERMS.Common.PassengerType.Child, new TERMS.Common.FareAmount(SelectedAirMerchandise.ChildMarkup));

        airMaterial.Price.SetMarkup(markup);
        //airMaterial.Price.AddMarkup(new TERMS.Common.Markup(TERMS.Common.PassengerType.Child, new TERMS.Common.FareAmount(SelectedAirMerchandise.ChildMarkup)));
        //ADD END

        if (Request["rdDept"] != null)
        {
            //IList<Terms.Product.Domain.ComponentGroupItem> componentGroupItems = ((AirComponentGroup)((ComponentGroup)CurrentSession.SecondSearchResults[Index.ToString()]).Items[0].Component).Items;
            //airBooking.AdultNumber =((AirProfile) Group.Profile).AdultNumber;
            //airBooking.ChildNumber = ((AirProfile)Group.Profile).ChildNumber;

            //airBooking.IsMexico = CurrentSession.SearchCondition.IsMexico;
            //airBooking.FareType = ((AirProfile)Group.Profile).FareType.ToUpper().Equals("COMM") ? FlightFareType.COMM : FlightFareType.NET;
            //airBooking.AdultAirFare.SetConsolidatorBase(0, Group.AdultBaseFare, airBooking.FareType);
            //airBooking.AdultAirFare.SetConsolidatorMarkup(Group.AdultMarkup, airBooking.FareType == FlightFareType.COMM);
            //airBooking.ChildAirFare.SetConsolidatorBase(0, Group.ChildBaseFare, airBooking.FareType);
            //airBooking.ChildAirFare.SetConsolidatorMarkup(Group.ChildMarkup, airBooking.FareType == FlightFareType.COMM);
            //componentGroup.SetAdultConsolidatorBase(0, componentGroup.AdultBaseFare);
            //componentGroup.SetChildConsolidatorBase(0, componentGroup.ChildBaseFare);
            //componentGroup.SetConsolidatorAdultMarkup(componentGroup.AdultMarkup, componentGroup.FareType == FlightFareType.COMM);
            //componentGroup.SetConsolidatorChildMarkup(componentGroup.ChildMarkup, componentGroup.FareType == FlightFareType.COMM);
            //AirTrip airTrip = ((Terms.Product.Domain.AirMaterial)componentGroupItems[Convert.ToInt32(Request["rdDept"].ToString())].Component).AirTrip;
            //airBooking.Trips.Add(airTrip);

            //AirComponentGroup gourp = new AirComponentGroup((AirProfile)((ComponentGroup)CurrentSession.SecondSearchResults[Index.ToString()]).Profile);
            //gourp.Items.Add(componentGroupItems[Convert.ToInt32(Request["rdDept"].ToString())]);

            AirMaterial depAirMaterial =(AirMaterial) ((AirMerchandise)SelectedAirMerchandise.Items[0]).Items[Convert.ToInt32(Request["rdDept"].ToString())];

            airMaterial.AirTrip.SubTrips.Add(depAirMaterial.AirTrip.SubTrips[0]);

        }

        if (Request["rdRtn"] != null && !((AirSearchCondition)this.Transaction.CurrentSearchConditions).FlightType.ToUpper().Equals("ONEWAY"))
        {

            //IList<Terms.Product.Domain.ComponentGroupItem> componentGroupItems = ((AirComponentGroup)((ComponentGroup)CurrentSession.SecondSearchResults[Index.ToString()]).Items[1].Component).Items;
            //AirTrip airTrip = ((Terms.Product.Domain.AirMaterial)componentGroupItems[Convert.ToInt32(Request["rdRtn"].ToString())].Component).AirTrip;
            //airBooking.Trips.Add(airTrip);

            //AirComponentGroup gourp = new AirComponentGroup((AirProfile)((ComponentGroup)CurrentSession.SecondSearchResults[Index.ToString()]).Profile);
            //gourp.Items.Add(componentGroupItems[Convert.ToInt32(Request["rdRtn"].ToString())]);
            //componentGroup.Items.Add(new ComponentGroupItem(gourp));

            AirMaterial depAirMaterial = (AirMaterial)((AirMerchandise)SelectedAirMerchandise.Items[1]).Items[Convert.ToInt32(Request["rdRtn"].ToString())];

            airMaterial.AirTrip.SubTrips.Add(depAirMaterial.AirTrip.SubTrips[0]);
        }
        //ComponentGroupItem componentGroupItem = new ComponentGroupItem(componentGroup);

        //ComponentGroup newComponentGroup = new ComponentGroup(((ComponentGroup)PackageMerchandise.ComponentGroup.Items[0].Component).Profile);
        //newComponentGroup.Items.Add(componentGroupItem);
        //SaleMerchandise saleMerchandise = new SaleMerchandise();
        //saleMerchandise.ComponentGroup = newComponentGroup;
        //this.Transaction.CurrentTransactionObject.Items.Clear();
        //this.Transaction.CurrentTransactionObject.AddItem(saleMerchandise);
        AirOrderItem airOrderItem = new AirOrderItem(airMaterial);

        this.Transaction.CurrentTransactionObject.Items.Clear();
        this.Transaction.CurrentTransactionObject.AddItem(airOrderItem);

        for (int i = 0; i < Convert.ToInt32(airMaterial.Profile.GetParam("ADULT_NUMBER")); i++)
        {
            Passenger passenger = new Passenger(ProductConst.PASSFIRSTNAME, ProductConst.ADTPASSLASTNAME,ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Adult);
            passengers.Add(passenger);
        }
        for (int i = 0; i < Convert.ToInt32(airMaterial.Profile.GetParam("CHILD_NUMBER")); i++)
        {
            Passenger passenger = new Passenger(ProductConst.PASSFIRSTNAME, ProductConst.CHDPASSLASTNAME, ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Child);
            passengers.Add(passenger);
        }
    }
コード例 #5
0
 private bool IsNeedCollapse(AirMaterial currentFlight, AirMaterial preFlight)
 {
     return IsAirlineEqual(currentFlight, preFlight) && IsPriceEqual(currentFlight, preFlight);
 }
コード例 #6
0
    private void GetAirBookingCondition(AirMaterial airMaterial, ref IList<Passenger> passengers)
    {
        for (int i = 0; i < Convert.ToInt32(airMaterial.Profile.GetParam("ADULT_NUMBER")); i++)
        {
            Passenger passenger = new Passenger(ProductConst.PASSFIRSTNAME, ProductConst.ADTPASSLASTNAME, ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Adult);

            passengers.Add(passenger);
        }
        for (int i = 0; i < Convert.ToInt32(airMaterial.Profile.GetParam("CHILD_NUMBER")); i++)
        {

            Passenger passenger = new Passenger(ProductConst.PASSFIRSTNAME, ProductConst.CHDPASSLASTNAME, ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Child);

            passengers.Add(passenger);
        }
    }
コード例 #7
0
        private string GetDuration(AirMaterial flight)
        {
            string duration = string.Empty;
            TimeSpan flightTime = TimeSpan.Zero;
            TimeSpan connectionTime = TimeSpan.Zero;

            AirLineMatricsManager airManager = new AirLineMatricsManager();

            flightTime = airManager.GetFlightTime(flight);
            connectionTime = airManager.GetDuration(flight);

            return String.Format("{0} ({1}", airManager.FormatTimeSpan(flightTime), airManager.FormatTimeSpan(connectionTime));
        }
コード例 #8
0
    private AirMaterial EditGroupMarkup(AirMaterial currentAirMaterial, GroupMarkup groupMarkup)
    {
        //����Ѿ��ӹ������ء�
        if (currentAirMaterial.Profile.GetParam(FLAG_REFERENCE_MARKUP_EDITED) != null && (bool)currentAirMaterial.Profile.GetParam(FLAG_REFERENCE_MARKUP_EDITED))
        {
            return currentAirMaterial;
        }

        //����Markup�Ѿ��ӹ�
        currentAirMaterial.Profile.SetParam(FLAG_REFERENCE_MARKUP_EDITED,true);

        TERMS.Common.Markup newMarkup = new TERMS.Common.Markup();
        //AdultMarkup
        //�������
        if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
        {
            newMarkup = new TERMS.Common.Markup(TERMS.Common.PassengerType.Adult, new TERMS.Common.FareAmount(groupMarkup.AdultMarkup.Markup));

        }

            //�ٷֱ�
        else if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
        {
            newMarkup = new TERMS.Common.Markup(TERMS.Common.PassengerType.Adult, new TERMS.Common.FareAmount(currentAirMaterial.AdultBaseFare * (groupMarkup.AdultMarkup.Markup)));

        }

        //ChildMarkup
        //�������
        if (((int)decimal.Parse(currentAirMaterial.ChildBaseFare.ToString())) != 0)
        {
            if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
            {
                newMarkup.SetAmount(TERMS.Common.PassengerType.Child,new TERMS.Common.FareAmount(groupMarkup.ChildMarkup.Markup));

            }

                //�ٷֱ�
            else if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
            {
                newMarkup.SetAmount(TERMS.Common.PassengerType.Child, new TERMS.Common.FareAmount(currentAirMaterial.ChildBaseFare * (groupMarkup.ChildMarkup.Markup)));

            }
        }
        currentAirMaterial.Price.AddMarkup(newMarkup);
        return currentAirMaterial;
    }
コード例 #9
0
    private AirMaterial EditMaterialGroupMarkupWhenComm(AirMaterial flightMaterial)
    {
        string groupCode = GlobalBaseUtility.GetGroupCode();

        if (groupCode == null)
        {
            return flightMaterial;
        }

        //
        GroupMarkup groupMarkup = WebSiteService.GetGroupMarkup(groupCode);
        if (groupMarkup == null || groupMarkup.GroupCode != groupCode)
        {
            return flightMaterial;
        }

        flightMaterial = EditGroupMarkupWhenComm(flightMaterial, groupMarkup);

        return flightMaterial;
    }
コード例 #10
0
    private void GetAirBookingCondition(ref IList<TERMS.Business.Centers.SalesCenter.Passenger> passengers, AirMaterial airMaterial)
    {
        //AirMaterial newAirMaterial = new AirMaterial(airMaterial.Profile);
        //newAirMaterial.SetAdultBaseFare(airMaterial.AdultBaseFare);
        //newAirMaterial.SetChildBaseFare(airMaterial.ChildBaseFare);

        //TERMS.Common.Markup newMarkup = new TERMS.Common.Markup();

        //newMarkup = new TERMS.Common.Markup(TERMS.Common.PassengerType.Adult, new TERMS.Common.FareAmount(airMaterial.AdultMarkup));
        //newMarkup.SetAmount(TERMS.Common.PassengerType.Child, new TERMS.Common.FareAmount(airMaterial.ChildMarkup));
        //newAirMaterial.Price.AddMarkup(newMarkup);

        //ADD PengZhaohui
        //newAirMaterial.SetAdultMarkup(airMaterial.AdultMarkup);
        //newAirMaterial.SetChildMarkup(airMaterial.ChildMarkup);
        //ADD END

        //int tourIndex = Convert.ToInt32(Request["selectedTour"].ToString());

        //AirMaterial airMaterial = (AirMaterial)airMaterial.Items[tourIndex];
        //newAirMaterial.AirTrip = airMaterial.AirTrip;

        AirOrderItem airOrderItem = new AirOrderItem(airMaterial);

        this.Transaction.CurrentTransactionObject.Items.Clear();
        this.Transaction.CurrentTransactionObject.AddItem(airOrderItem);

        SetPreBookingPassengers(airMaterial, ref passengers);
        //for (int i = 0; i < Convert.ToInt32(newAirMaterial.Profile.GetParam("ADULT_NUMBER")); i++)
        //{
        //    TERMS.Business.Centers.SalesCenter.Passenger passenger = new TERMS.Business.Centers.SalesCenter.Passenger(ProductConst.PASSFIRSTNAME, ProductConst.ADTPASSLASTNAME, ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Adult);
        //    passengers.Add(passenger);
        //}
        //for (int i = 0; i < Convert.ToInt32(newAirMaterial.Profile.GetParam("CHILD_NUMBER")); i++)
        //{
        //    TERMS.Business.Centers.SalesCenter.Passenger passenger = new TERMS.Business.Centers.SalesCenter.Passenger(ProductConst.PASSFIRSTNAME, ProductConst.CHDPASSLASTNAME, ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Child);
        //    passengers.Add(passenger);
        //}
    }
コード例 #11
0
    private List<Component> GetFlightDetailList(List<Component> flightList)
    {
        SubAirTrip subAirTrip = new SubAirTrip();

        List<Component> flightDetailList = new List<Component>();

        List<Component> selectContactFlightList = new List<Component>();
        List<Component> availableFlightList = new List<Component>();

        //����flightList,�����еĺ�����Ϣ��ӳ�һ��list
        for (int flightIndex = 0; flightIndex < flightList.Count; flightIndex++)
        {
            AirMerchandise flight = (AirMerchandise)flightList[flightIndex];

            //for(int flightItemindex=0; index < flight.Items.Count; index++)
            //{
            //    AirMaterial tempairMaterial = (AirMaterial)flight.Items[flightItemindex];
            //    AirMaterial airMaterial = (AirMaterial)flight.Items[flightItemindex];

            //    for(int subairtripIndex = 0; subairtripIndex<(airMaterial.AirTrip.SubTrips.Count; subairtripIndex++)
            //    {
            //        SubAirTrip subAirTrip = ((AirMaterial)flight.Items[flightItemindex]).AirTrip.SubTrips[subairtripIndex];
            //        tempairMaterial = airMaterial.
            //    }
            //}

            if (flight.Items != null)
            {
                for (int mIndex = 0; mIndex < flight.Items.Count; mIndex++)
                {
                    ((AirMaterial)flight.Items[mIndex]).Profile = flight.Profile;
                    ((AirMaterial)flight.Items[mIndex]).Profile.SetParam(Key_FlightMerchandisIndex, flightIndex);
                }

                flightDetailList.AddRange(flight.Items);

                availableFlightList.AddRange(flight.Items);
            }

            else
            {
                AirMaterial airMaterial = new AirMaterial((AirProfile)flight.Profile);
                CopyMarkup(flight, airMaterial);

                airMaterial.Profile.SetParam(Key_FlightMerchandisIndex, flightIndex);

                flight.Add(airMaterial);
                flightDetailList.AddRange(flight.Items);

                selectContactFlightList.AddRange(flight.Items);
            }
        }

        //����AvailableFlightList
        AvailableFlightList = availableFlightList;

        //����SelectContactFlightList
        SelectContactFlightList = selectContactFlightList;

        return flightDetailList;
    }
コード例 #12
0
    private AirMaterial EditFare(AirMaterial airMaterial)
    {
        int adult = ((AirSearchCondition)Utility.Transaction.CurrentSearchConditions).GetPassengerNumber(TERMS.Common.PassengerType.Adult); //������
        int child = ((AirSearchCondition)Utility.Transaction.CurrentSearchConditions).GetPassengerNumber(TERMS.Common.PassengerType.Child); //����
        decimal AirTotalPrice = 0.0m; //�ܼ�
        decimal adultTax = 0.0m; //���˵�˰
        decimal childTax = 0.0m; //С����˰
        decimal adultPrice = 0.0m; //���˺�˰����
        decimal childPrice = 0.0m; //С����˰����
        decimal adultMarkup = 0.0m;
        decimal childMarkup = 0.0m;

        decimal adultBasePrice = 0.0m; //���˲���˰����
        decimal childBasePrice = 0.0m; //С������˰����

        if (airMaterial.Profile.GetParam("FARE_TYPE").ToString() == "COMM" || airMaterial.Profile.GetParam("FARE_TYPE").ToString() == "COMMNEW" || airMaterial.Profile.GetParam("FARE_TYPE").ToString() == "NET")
        {
            adultTax = airMaterial.Profile.GetParam("ADULT_TAX") == null ? adultTax : Convert.ToDecimal(airMaterial.Profile.GetParam("ADULT_TAX"));
            childTax = airMaterial.Profile.GetParam("CHILD_TAX") == null ? childTax : Convert.ToDecimal(airMaterial.Profile.GetParam("CHILD_TAX"));
            airMaterial.SetAdultTax(adultTax);
            airMaterial.SetChildTax(childTax);

            adultBasePrice = airMaterial.Profile.GetParam("PUBLISHED_ADULT_FARE") == null ? adultBasePrice : Convert.ToDecimal(airMaterial.Profile.GetParam("PUBLISHED_ADULT_FARE"));
            childBasePrice = airMaterial.Profile.GetParam("PUBLISHED_CHILD_FARE") == null ? childBasePrice : Convert.ToDecimal(airMaterial.Profile.GetParam("PUBLISHED_CHILD_FARE"));
            int commision = airMaterial.Profile.GetParam("COMMISION") == null ? 0 : Convert.ToInt32(airMaterial.Profile.GetParam("COMMISION"));

            if (airMaterial.Profile.GetParam("FARE_TYPE").ToString() == "NET") commision = 0;
            if (child > 0)
            {
                if (airMaterial.Profile.GetParam("FARE_TYPE").ToString() == "NET")
                {
                    childPrice = airMaterial.ChildBaseFare + airMaterial.ChildMarkup + childTax;
                }
                else
                {
                    if (Convert.ToBoolean(airMaterial.Profile.GetParam("ISWEBFARE")))
                    {
                        childPrice = childBasePrice + airMaterial.ChildMarkup + childTax;
                        airMaterial.SetChildBaseFare(childBasePrice);
                        airMaterial.GetPrice().SetServiceFee(TERMS.Common.PassengerType.Child, new FareAmount(airMaterial.ChildMarkup, new Currency(), new Currency()));
                    }
                    else
                    {
                        decimal childFinalBasePrice = decimal.Ceiling(childBasePrice * (100 - commision) / 100);
                        airMaterial.SetChildBaseFare(childFinalBasePrice);
                        childPrice = childFinalBasePrice + airMaterial.ChildMarkup + childTax;

                    }
                }
            }

            if (adult > 0)
            {
                if (airMaterial.Profile.GetParam("FARE_TYPE").ToString() == "NET")
                {
                    adultPrice = airMaterial.AdultBaseFare + airMaterial.AdultMarkup + adultTax;
                }
                else
                {
                    if (Convert.ToBoolean(airMaterial.Profile.GetParam("ISWEBFARE")))
                    {
                        adultPrice = adultBasePrice + airMaterial.AdultMarkup + adultTax;
                        airMaterial.SetAdultBaseFare(adultBasePrice);
                        airMaterial.GetPrice().SetServiceFee(TERMS.Common.PassengerType.Adult, new FareAmount(airMaterial.AdultMarkup, new Currency(), new Currency()));
                    }
                    else
                    {
                        decimal adultFinalBasePrice = decimal.Ceiling(adultBasePrice * (100 - commision) / 100);
                        airMaterial.SetAdultBaseFare(adultFinalBasePrice);
                        adultPrice = adultFinalBasePrice + airMaterial.AdultMarkup + adultTax;

                    }
                }
            }

        }

        return airMaterial;
    }
コード例 #13
0
    private void EditTaxTotalStyle(DataListItem dataListItem, AirMaterial flight)
    {
        //TaxTotal
        Label lblAdultTaxTotal = (Label)dataListItem.FindControl("lblAdultTaxTotal");
        Label lblChildTaxTotal = (Label)dataListItem.FindControl("lblChildTaxTotal");

        if (flight.AdultTax == 0)
        {
            lblAdultTaxTotal.Visible = false;
            lblChildTaxTotal.Visible = false;
        }
    }
コード例 #14
0
    private void DoAvailableProcess(int flightdetailIndex, AirMaterial tGoup)
    {
        OperaterAdvice.DoAdvice(Terms.Configuration.Utility.ConfigurationConst.OperateType.ClickAvalibale, this);

        CurrentSession.OriginalIndex = flightdetailIndex;
        FlightMerchandiseManager flightMerchandiseManager = new FlightMerchandiseManager();
        AirMaterial airMaterial = tGoup;
        decimal originalPrice = GetTotalPrice(airMaterial);
        decimal newPrice = 0;

        bool bclError = false;

        //if (tGoup.Profile.GetParam("FARE_TYPE").Equals(FlightFareType.SR.ToString()) || tGoup.Profile.GetParam("FARE_TYPE").Equals("COMMNEW") || tGoup.Profile.GetParam("FARE_TYPE").Equals(FlightFareType.PUB.ToString()))
        //{
        //    //AirMaterial airMaterial = tGoup;

        //    AirOrderItem airOrderItem = new AirOrderItem(airMaterial);

        //    this.Transaction.CurrentTransactionObject.Items.Clear();
        //    this.Transaction.CurrentTransactionObject.AddItem(airOrderItem);

        //    IList<TERMS.Business.Centers.SalesCenter.Passenger> passengers = new List<TERMS.Business.Centers.SalesCenter.Passenger>();
        //    SetPreBookingPassengers(airMaterial, ref passengers);

        //    try
        //    {
        //        AirService.PreBookAirline2(ref airMaterial, passengers);
        //    }
        //    catch (Exception ex)
        //    {
        //        DoErrorProcess(ex);
        //        log.Error(ex.Message, ex);
        //        bclError = true;
        //    }

        //    if (bclError)
        //        this.Err("", "Booking failed", "NewStep2.aspx");

        //    FlightMerchandiseManager flightMerchandiseManager = new FlightMerchandiseManager();

        //    airMaterial = flightMerchandiseManager.EditMaterialGroupMarkup(airMaterial);

        //}
        //else
        //{
        //    IList<TERMS.Business.Centers.SalesCenter.Passenger> passengers = new List<TERMS.Business.Centers.SalesCenter.Passenger>();
        //    try
        //    {

        //        GetAirBookingCondition(ref passengers, tGoup);
        //    }
        //    catch (Exception E)
        //    {
        //        log.Error(E.Message, E);
        //    }
        //    //AirMaterial airMaterial = tGoup;

        //    bool bclError = false;

        //    try
        //    {
        //        string[] requestXML = new string[3];
        //        //ws.PreBookAirline(ref group, SearchArray, requestXML);
        //        AirService.PreBookAirline2(ref airMaterial, passengers);

        //        FlightMerchandiseManager flightMerchandiseManager = new FlightMerchandiseManager();

        //        airMaterial = flightMerchandiseManager.EditMaterialGroupMarkup(airMaterial);
        //    }
        //    catch (Exception ex)
        //    {
        //        DoErrorProcess(ex);
        //        log.Error(ex.Message, ex);
        //        bclError = true;
        //    }

        //    if (bclError)
        //        this.Err("", "Booking failed", "NewStep2.aspx");

        //}

        try
        {
            IList<TERMS.Business.Centers.SalesCenter.Passenger> passengers = new List<TERMS.Business.Centers.SalesCenter.Passenger>();

            if (tGoup.Profile.GetParam("FARE_TYPE").Equals(FlightFareType.SR.ToString()) || tGoup.Profile.GetParam("FARE_TYPE").Equals("COMMNEW") || tGoup.Profile.GetParam("FARE_TYPE").Equals(FlightFareType.PUB.ToString()))
            {
                AirOrderItem airOrderItem = new AirOrderItem(airMaterial);

                this.Transaction.CurrentTransactionObject.Items.Clear();
                this.Transaction.CurrentTransactionObject.AddItem(airOrderItem);

                SetPreBookingPassengers(airMaterial, ref passengers);

            }
            else
            {
                try
                {

                    GetAirBookingCondition(ref passengers, tGoup);
                }
                catch (Exception E)
                {
                    log.Error(E.Message, E);
                }

            }

            AirService.PreBookAirline2(ref airMaterial, passengers);

            airMaterial = flightMerchandiseManager.EditMaterialGroupMarkup(airMaterial);

        }
        catch (Exception ex)
        {
            DoErrorProcess(ex);
            log.Error(ex.Message, ex);
            bclError = true;

            DisplayCannotbook();
            return;
        }

        if (bclError)
        {
            DisplayCannotbook();
            return;
        }

        if (Convert.ToBoolean(tGoup.Profile.GetParam("ISWEBFARE")))
        {
            tGoup.FareType = AirFareType.Published;
            Price price = new Price();
            price.SetAmount(TERMS.Common.PassengerType.Adult,new FareAmount(Convert.ToDecimal(tGoup.Profile.GetParam("PUBLISHED_ADULT_FARE"))));
            price.SetAmount(TERMS.Common.PassengerType.Child,new FareAmount(Convert.ToDecimal(tGoup.Profile.GetParam("PUBLISHED_CHILD_FARE"))));
            Markup mk = FlightMerchandise.AirProduct.GetMarkup(tGoup);
            price.AddMarkup(mk);
            tGoup.SetPrice(price);

        }
        //
        //if (IsPriceChanged())

        airMaterial = EditFare(airMaterial);

        newPrice = GetTotalPrice(airMaterial);

        SelectAirMaterial = tGoup;

        //���õ�ǰҳ��
        SetCurrentPageNumber();

        SetCurrentTabFlag();

        if (isClickAvailable == true && IsChangeNotLess(newPrice, originalPrice))
        {
            OperaterAdvice.DoAdvice(Terms.Configuration.Utility.ConfigurationConst.OperateType.IBE_AvailableFareChanged, this);

            ScriptManager.RegisterStartupScript(upSelect, upSelect.GetType(), "alt", "<script>$('ctl00_MainContent_pnlSelectProcessing').style.display ='none';</script>", false);

            Label lblCurrentMsg = null;
            Panel pnlCurrentComfirm = null;

            if (isClickAvailable == false)
            {
                lblCurrentMsg = lblSoldOutMsg_Select;
                pnlCurrentComfirm = pnlComfirm_Select;
            }
            else
            {
                lblCurrentMsg = lblSoldOutMsg;
                pnlCurrentComfirm = pnlComfirm;
            }

            if (IsLittleChanged(originalPrice, newPrice))
            {
                lblCurrentMsg.Text = string.Format(LittleChangedSoldoutMsg, ((decimal)(newPrice - originalPrice)).ToString("#,###.##"));
            }
            else
            {
                lblCurrentMsg.Text = string.Format(LargeChangedSoldoutMsg, ((decimal)(newPrice - originalPrice)).ToString("#,###.##"));
            }

            pnlCurrentComfirm.Attributes.Add("style", "display:block;");

        }
        else
        {
            ScriptManager.RegisterStartupScript(upSelect, upSelect.GetType(), "alt", "<script>$('ctl00_MainContent_pnlSelectProcessing').style.display ='none';document.getElementById('maskDIV').style.display = 'none';</script>", false);
            Response.Redirect("Step3_confirm.aspx?ConditionID=" + Request.Params["ConditionID"]);
        }

        //Response.Redirect("Step3_bulk.aspx");
    }
コード例 #15
0
    private void CreateFlightDetailList()
    {
        AirMerchandise componentGroup = FlightMerchandise;

        List<Component> flightList = GteReBindContactAgentList(componentGroup.Items);

        SubAirTrip subAirTrip = new SubAirTrip();

        List<Component> flightDetailList = new List<Component>();

        List<Component> selectContactFlightList = new List<Component>();
        List<Component> availableFlightList = new List<Component>();

        //����flightList,�����еĺ�����Ϣ��ӳ�һ��list
        for (int flightIndex = 0; flightIndex < flightList.Count; flightIndex++)
        {
            AirMerchandise flight = (AirMerchandise)flightList[flightIndex];

            //for(int flightItemindex=0; index < flight.Items.Count; index++)
            //{
            //    AirMaterial tempairMaterial = (AirMaterial)flight.Items[flightItemindex];
            //    AirMaterial airMaterial = (AirMaterial)flight.Items[flightItemindex];

            //    for(int subairtripIndex = 0; subairtripIndex<(airMaterial.AirTrip.SubTrips.Count; subairtripIndex++)
            //    {
            //        SubAirTrip subAirTrip = ((AirMaterial)flight.Items[flightItemindex]).AirTrip.SubTrips[subairtripIndex];
            //        tempairMaterial = airMaterial.
            //    }
            //}

            if (flight.Items != null)
            {

                for (int mIndex = 0; mIndex < flight.Items.Count; mIndex++)
                {
                    AirMaterial currentFlight = ((AirMaterial)flight.Items[mIndex]);

                    currentFlight.Profile = flight.Profile;
                    currentFlight.Profile.SetParam(Key_FlightMerchandisIndex, flightIndex);

                    if (IsFlightAvailable(currentFlight))
                    {
                        availableFlightList.Add(currentFlight);
                    }
                    else
                    {
                        selectContactFlightList.Add(currentFlight);
                    }

                    flightDetailList.Add(currentFlight);
                }

                //flightDetailList.AddRange(flight.Items);

                //availableFlightList.AddRange(flight.Items);
            }

            else
            {
                AirMaterial airMaterial = new AirMaterial((AirProfile)flight.Profile);
                CopyMarkup(flight, airMaterial);

                airMaterial.Profile.SetParam(Key_FlightMerchandisIndex, flightIndex);

                //flight.Add(airMaterial);
                flightDetailList.Add(airMaterial);

                selectContactFlightList.Add(airMaterial);
            }
        }

        //����AvailableFlightList
        availableFlightList = new AirLineMatricsManager().GetSortedByPriceFlightList(availableFlightList);
        TotalAvailableFlightList = availableFlightList;
        AvailableFlightList = availableFlightList;

        //����SelectContactFlightList
        TotalSelectContactFlightList = selectContactFlightList;
        SelectContactFlightList = selectContactFlightList;

        TotalFlightList = flightDetailList;
    }
コード例 #16
0
    private void CopyMarkup(AirMerchandise copyFrom, AirMaterial copyTo)
    {
        //TERMS.Common.Markup newMarkup = new TERMS.Common.Markup();

        //newMarkup = new TERMS.Common.Markup(TERMS.Common.PassengerType.Adult, new TERMS.Common.FareAmount(copyFrom.AdultMarkup));
        //newMarkup.SetAmount(TERMS.Common.PassengerType.Child, new TERMS.Common.FareAmount(copyFrom.ChildMarkup));
        //copyTo.Price.AddMarkup(newMarkup);

        //copyTo.SetAdultBaseFare(copyFrom.AdultBaseFare);
        //copyTo.SetAdultTax(copyFrom.AdultTax);
        //copyTo.SetChildBaseFare(copyFrom.ChildBaseFare);
        //copyTo.SetChildTax(copyFrom.ChildTax);
        if (copyFrom != null && copyFrom.Price != null && copyTo != null )
        {
            copyTo.Price = (Price)copyFrom.Price.Clone();
        }
    }
コード例 #17
0
 private void SetImageToolTip(System.Web.UI.WebControls.Image image, AirMaterial flight)
 {
     //if (IsDemo())
     //{
     //    image.ToolTip = ((AirProfile)flight.Profile).Airlines[0].Code + " " + flight.Profile.GetParam("FARE_TYPE").ToString();
     //}
     //else
     //{
         image.ToolTip = string.Empty;
     //}
 }
コード例 #18
0
    private int GetFlightInfoListCount(AirMaterial currentFlight)
    {
        int flightInfoListCount = 0;
        for (int subTripIndex = 0; subTripIndex < currentFlight.AirTrip.SubTrips.Count; subTripIndex++)
        {
            flightInfoListCount += currentFlight.AirTrip.SubTrips[subTripIndex].Flights.Count;
        }

        return flightInfoListCount;
    }
コード例 #19
0
    private void SetPreBookingPassengers(AirMaterial airMaterial, ref IList<TERMS.Business.Centers.SalesCenter.Passenger> passengers)
    {
        for (int i = 0; i < Convert.ToInt32(airMaterial.Profile.GetParam("ADULT_NUMBER")); i++)
        {
            TERMS.Business.Centers.SalesCenter.Passenger passenger = new TERMS.Business.Centers.SalesCenter.Passenger(ProductConst.PASSFIRSTNAME, ProductConst.ADTPASSLASTNAME, ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Adult);

            passengers.Add(passenger);
        }
        for (int i = 0; i < Convert.ToInt32(airMaterial.Profile.GetParam("CHILD_NUMBER")); i++)
        {

            TERMS.Business.Centers.SalesCenter.Passenger passenger = new TERMS.Business.Centers.SalesCenter.Passenger(ProductConst.PASSFIRSTNAME, ProductConst.CHDPASSLASTNAME, ProductConst.PASSMIDDLENAME, TERMS.Common.PassengerType.Child);

            passengers.Add(passenger);
        }
    }
コード例 #20
0
    private void SetTotalDurationAndDistance(AirMaterial flight)
    {
        lblTotalDistance.Text = GetDistance(flight);
        lblTotalDuration.Text = GetDuration(flight);

        if (lblTotalDistance.Text.Trim() == string.Empty)
        {
            lblTotalDistanceMsg.Visible = false;
        }
    }
コード例 #21
0
    private AirMaterial EditGroupMarkupWhenComm(AirMaterial currentAirMaterial, GroupMarkup groupMarkup)
    {
        //����Ѿ��ӹ������ء�
        if (currentAirMaterial.Profile.GetParam(FLAG_REFERENCE_MARKUP_EDITED) != null && (bool)currentAirMaterial.Profile.GetParam(FLAG_REFERENCE_MARKUP_EDITED))
        {
            return currentAirMaterial;
        }

        //����Markup�Ѿ��ӹ�
        currentAirMaterial.Profile.SetParam(FLAG_REFERENCE_MARKUP_EDITED, true);

        decimal adultBasePrice = 0.0m; //���˲���˰����
        decimal childBasePrice = 0.0m; //С������˰����
        adultBasePrice = currentAirMaterial.Profile.GetParam("PUBLISHED_ADULT_FARE") == null ? adultBasePrice : Convert.ToDecimal(currentAirMaterial.Profile.GetParam("PUBLISHED_ADULT_FARE"));
        childBasePrice = currentAirMaterial.Profile.GetParam("PUBLISHED_CHILD_FARE") == null ? childBasePrice : Convert.ToDecimal(currentAirMaterial.Profile.GetParam("PUBLISHED_CHILD_FARE"));
        int commision = currentAirMaterial.Profile.GetParam("COMMISION") == null ? 0 : Convert.ToInt32(currentAirMaterial.Profile.GetParam("COMMISION"));

        if (Convert.ToBoolean(currentAirMaterial.Profile.GetParam("ISWEBFARE")))
        {
            //if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
            //{
            //    currentAirMaterial.Profile.SetParam("PUBLISHED_ADULT_FARE", adultBasePrice + groupMarkup.AdultMarkup.Markup);
            //}

            //    //�ٷֱ�
            //else if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
            //{
            //    currentAirMaterial.Profile.SetParam("PUBLISHED_ADULT_FARE", adultBasePrice * (1 + groupMarkup.AdultMarkup.Markup));
            //}

            ////ChildMarkup
            ////�������
            //if (((int)decimal.Parse(currentAirMaterial.ChildBaseFare.ToString())) != 0)
            //{
            //    if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
            //    {
            //        currentAirMaterial.Profile.SetParam("PUBLISHED_CHILD_FARE", childBasePrice + groupMarkup.ChildMarkup.Markup);
            //    }

            //        //�ٷֱ�
            //    else if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
            //    {
            //        currentAirMaterial.Profile.SetParam("PUBLISHED_CHILD_FARE", childBasePrice * (1 + groupMarkup.ChildMarkup.Markup));
            //    }
            //}

        }
        else
        {

            ////AdultMarkup
            ////�������
            //if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
            //{

            //    currentAirMaterial.SetAdultMarkup(currentAirMaterial.AdultMarkup + groupMarkup.AdultMarkup.Markup);
            //}

            //    //�ٷֱ�
            //else if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
            //{
            //    currentAirMaterial.Profile.SetParam("COMMISION", commision + 100 * groupMarkup.AdultMarkup.Markup);
            //}

            ////ChildMarkup
            ////�������
            //if (((int)decimal.Parse(currentAirMaterial.ChildBaseFare.ToString())) != 0)
            //{
            //    if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
            //    {
            //        currentAirMaterial.SetChildMarkup(currentAirMaterial.ChildMarkup + groupMarkup.ChildMarkup.Markup);
            //    }

            //        //�ٷֱ�
            //    else if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
            //    {
            //        currentAirMaterial.Profile.SetParam("COMMISION", commision + 100 * groupMarkup.AdultMarkup.Markup);
            //    }
            //}

            //AdultMarkup
            //�������
            TERMS.Common.Markup newMarkup = new TERMS.Common.Markup();
            if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
            {
                newMarkup = new TERMS.Common.Markup(TERMS.Common.PassengerType.Adult, new TERMS.Common.FareAmount(groupMarkup.AdultMarkup.Markup));

            }

                //�ٷֱ�
            else if (groupMarkup.AdultMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
            {
                newMarkup = new TERMS.Common.Markup(TERMS.Common.PassengerType.Adult, new TERMS.Common.FareAmount(currentAirMaterial.AdultBaseFare * (groupMarkup.AdultMarkup.Markup)));

            }

            //ChildMarkup
            //�������
            if (((int)decimal.Parse(currentAirMaterial.ChildBaseFare.ToString())) != 0)
            {
                if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Money)
                {
                    newMarkup.SetAmount(TERMS.Common.PassengerType.Child, new TERMS.Common.FareAmount(groupMarkup.ChildMarkup.Markup));

                }

                    //�ٷֱ�
                else if (groupMarkup.ChildMarkup.MarkupType == ConfigurationConst.GroupMarkType.Percent)
                {
                    newMarkup.SetAmount(TERMS.Common.PassengerType.Child, new TERMS.Common.FareAmount(currentAirMaterial.ChildBaseFare * (groupMarkup.ChildMarkup.Markup)));

                }
            }
            currentAirMaterial.Price.AddMarkup(newMarkup);
        }

        return currentAirMaterial;
    }
コード例 #22
0
        private object GetAirLegList(AirMaterial flight)
        {
            IList<AirLeg> airLegList = new List<AirLeg>();

            foreach (SubAirTrip subAirTrip in flight.AirTrip.SubTrips)
            {
                foreach (AirLeg airLeg in subAirTrip.Flights)
                {
                    airLegList.Add(airLeg);
                }
            }

            return airLegList;
        }
コード例 #23
0
    private decimal GetTotalPrice(AirMaterial airMaterial)
    {
        decimal totalPrice = 0;

        if (isClickAvailable == false)
        {
            totalPrice = airMaterial.AdultBaseFare;
        }
        else
        {
            totalPrice = airMaterial.AdultBaseFare + airMaterial.AdultMarkup + airMaterial.AdultTax;
        }

        return totalPrice;
    }
コード例 #24
0
    protected bool GetFlights(string pnr)
    {
        string errMsg = string.Empty;
        DpwPNR dpwPNR = new DpwPNR();
        bool isMatchAirline = false;
        bool isMatchDeparture = false;
        bool isMatchBeginDate = false;
        bool isMatchEndDate = false;
        string originalAirline = ((TourOrderItem)Transaction.CurrentTransactionObject.Items[0]).AirLine;
        string originalDeparture = ((TourOrderItem)Transaction.CurrentTransactionObject.Items[0]).DepartureCity;
        //string originalDestination= ((TourOrderItem)Transaction.CurrentTransactionObject.Items[0]).;
        DateTime originalBeginDate = ((TourOrderItem)Transaction.CurrentTransactionObject.Items[0]).BeginDate;
        DateTime originalEndDate = ((TourOrderItem)Transaction.CurrentTransactionObject.Items[0]).EndDate;
        if (pnr.Equals(string.Empty))
        {
            errMsg = "Please Input PNR";

        }
        else if (pnr.Length != 6)
        {
            errMsg = "Please Input Correct PNR";

        }
        else
        {
            dpwPNR = m_airService.GetPnrData(pnr, out errMsg);

        }
        if (errMsg.Equals(string.Empty))
        {
            DpwFlightList flights = dpwPNR.Flights;

            AirMaterial airMaterial = new AirMaterial(new TERMS.Core.Profiles.Profile("air"));
            //int[] divideNumber =

            Hashtable timeSpan = new Hashtable();
            List<AirLeg> airLegList = m_AirLegList;
            bool isOneWay = false;

            if (flights.Count > 0)
            {
                if (!flights[0].DepartureAirport.Equals(flights[flights.Count - 1].ArrivalAirport))
                    isOneWay = true;
            }

            for (int i = 0; i < flights.Count; i++)
            {
                if (flights[i].Airline.Contains(originalAirline))
                    isMatchAirline = true;
                AirLeg air = new AirLeg();
                air.AirLine = new Airline(flights[i].Airline);
                air.ArriveTime = flights[i].ArrivalDateTime;
                air.BookingClass = flights[i].BookingClass;
                Airport deptAirport = new Airport();
                City deptCity = new City();

                Terms.Common.Domain.Airport airport = m_airService.CommAirportDao.FindByAirport(flights[i].DepartureAirport);
                deptCity.Code = airport.City.Code;
                deptCity.Name = airport.City.Name;
                deptAirport.City = deptCity;
                deptAirport.Name = airport.Name;
                deptAirport.Code = airport.Code;
                air.DepartureAirport = deptAirport;
                air.DepartureTime = flights[i].DepartureDateTime;

                if (i == 0)
                {
                    if (deptCity.Code.Contains(originalDeparture))
                        isMatchDeparture = true;
                    if (air.DepartureTime.ToString("MM/dd/yyyy").Equals(originalBeginDate.ToString("MM/dd/yyyy")))
                        isMatchBeginDate = true;
                }

                Airport destAirport = new Airport();
                City destCity = new City();

                Terms.Common.Domain.Airport airtport2 = m_airService.CommAirportDao.FindByAirport(flights[i].ArrivalAirport);
                destCity.Code = airtport2.City.Code;
                destCity.Name = airtport2.City.Name;
                destAirport.City = destCity;
                destAirport.Name = airtport2.Name;
                destAirport.Code = airtport2.Code;
                air.DestinationAirport = destAirport;
                air.FlightNumber = flights[i].FlightNumber;

                if (i > 0)
                {
                    timeSpan.Add(i.ToString() + "-" + (i + 1).ToString(), flights[i].DepartureDateTime.Subtract(flights[i - 1].ArrivalDateTime));

                }

                airLegList.Add(air);
                //SubAirTrip subAirTrip = new SubAirTrip();
                //subAirTrip.
            }

            if (isOneWay)
            {
                SubAirTrip deptSubAirTrip = new SubAirTrip();
                for (int j = 0; j < airLegList.Count; j++)
                {
                    deptSubAirTrip.AddLeg(airLegList[j]);
                }
                airMaterial.AddSubTrip(deptSubAirTrip);
            }
            else
            {
                TimeSpan bigSpan = new TimeSpan();
                string bigSpanKey = string.Empty;
                foreach (string key in timeSpan.Keys)
                {
                    if (bigSpan.CompareTo(timeSpan[key]) < 0)
                    {
                        bigSpan = (TimeSpan)timeSpan[key];
                        bigSpanKey = key;
                    }
                }

                string[] flightNumber = bigSpanKey.Split('-');

                if (flightNumber.Length == 2)
                {
                    SubAirTrip deptSubAirTrip = new SubAirTrip();
                    SubAirTrip retnSubAirTrip = new SubAirTrip();

                    for (int j = 0; j < airLegList.Count; j++)
                    {
                        if (j <= (Convert.ToInt32(flightNumber[0]) - 1))
                            deptSubAirTrip.AddLeg(airLegList[j]);
                        else
                            retnSubAirTrip.AddLeg(airLegList[j]);

                    }

                    airMaterial.AddSubTrip(deptSubAirTrip);
                    airMaterial.AddSubTrip(retnSubAirTrip);
                    if (retnSubAirTrip.Flights[0].DepartureTime.ToString("MM/dd/yyyy").Equals(originalEndDate.ToString("MM/dd/yyyy")))
                        isMatchEndDate = true;
                }
            }

            m_NewAirOrderItem = new AirOrderItem(airMaterial);

            //Fare
            int fareLength = dpwPNR.FareInfo.Fares.Count;
            for (int fareCount = 0; fareCount < fareLength; fareCount++)
            {
                DpwFare fare = dpwPNR.FareInfo.Fares[fareCount];

                switch (fare.PTC)
                {
                    case GTTWSpanClient.PassengerType.Adult:
                        m_NewAirOrderItem.Merchandise.SetAdultBaseFare(fare.BaseFare);
                        m_NewAirOrderItem.Merchandise.SetAdultTax(fare.Tax);
                        break;
                    case GTTWSpanClient.PassengerType.Child:
                        m_NewAirOrderItem.Merchandise.SetChildBaseFare(fare.BaseFare);
                        m_NewAirOrderItem.Merchandise.SetChildTax(fare.Tax);
                        break;
                    case GTTWSpanClient.PassengerType.Infant:
                        break;
                    default:
                        break;
                }
            }
            m_NewAirOrderItem.WSpanRecordLocator = dpwPNR.RecordLoactor;

            Transaction.CurrentTransactionObject.Items.Add(m_NewAirOrderItem);

            int adultNumber = GetPassengers(dpwPNR.Passengers)[0];
            int childNumber = GetPassengers(dpwPNR.Passengers)[1];

            //TourPriceInfoControl1.Tax = m_NewAirOrderItem.Merchandise.AdultTax * adultNumber + m_NewAirOrderItem.Merchandise.ChildTax * childNumber;
            //TourPriceInfoControl1.ShowTotalPrice = GetNetPrice();// +TourPriceInfoControl1.Tax;
            if (Transaction.CurrentTransactionObject.Items[0].AdultNumber != adultNumber || Transaction.CurrentTransactionObject.Items[0].ChildNumber != childNumber)
            {
                lblError.Text = "PNR��s passenger number is not equal order��s traveler number.";
                return false;
            }
            else
            {
                if (!isMatchAirline)
                {
                    lblError.Text = "Warning: Not default airlines price may be different.";

                    lblError.Style.Add("color", "blue");
                }
                else if (!isMatchDeparture)
                {
                    lblError.Text = "Warning: Not default departure city/destination. Be careful.";
                    lblError.Style.Add("color", "blue");
                }
                else if (!isMatchBeginDate || !isMatchEndDate)
                {
                    lblError.Text = "Warning: Not default departure/return date. Be careful.";
                    lblError.Style.Add("color", "blue");
                }
                else
                {
                    lblError.Style.Add("color", "red");
                }
                return true;
            }

        }
        else
        {
            lblError.Text = errMsg;
            return false;
        }
    }
コード例 #25
0
 public string GetDistance(AirMaterial flight)
 {
     return new AirLineMatricsManager().GetDistance(flight);
 }
コード例 #26
0
 private bool IsAirlineEqual(AirMaterial currentFlight, AirMaterial preFlight)
 {
     return new AirLineMatricsManager().CompareAirLine(preFlight, currentFlight) == 0;
 }
コード例 #27
0
        private string GetDistance(AirMaterial flight)
        {
            int miles = 0;

            foreach (SubAirTrip subAirTrip in flight.AirTrip.SubTrips)
            {
                miles += subAirTrip.Miles;
            }

            if (miles == 0)
            {
                return string.Empty;
            }

            return String.Format("{0} miles ({1} km)", miles.ToString("#,###"), ConvertMilesToKilometers(miles).ToString("#,####"));
        }
コード例 #28
0
    private bool IsContactAgentItem(AirMaterial item)
    {
        if (item.AirTrip.SubTrips.Count > 0 && item.AirTrip.SubTrips[0].Flights.Count > 0)
        {
            return false;
        }

        return ((bool)item.Profile.GetParam("SHOULD_CALL"));
    }
コード例 #29
0
        private void SetTotalDurationAndDistance(AirMaterial flight, DataListItem dataListItem)
        {
            System.Web.UI.WebControls.Label lblTotalDistance = (System.Web.UI.WebControls.Label)dataListItem.FindControl("lblTotalDistance");
            lblTotalDistance.Text = GetDistance(flight);

            System.Web.UI.WebControls.Label lblTotalDuration = (System.Web.UI.WebControls.Label)dataListItem.FindControl("lblTotalDuration");
            lblTotalDuration.Text = GetDuration(flight);

            System.Web.UI.WebControls.Label lblTotalDistanceMsg = (System.Web.UI.WebControls.Label)dataListItem.FindControl("lblTotalDistanceMsg");
            if (lblTotalDuration.Text.Trim() == string.Empty)
            {
                lblTotalDistanceMsg.Visible = false;
            }
        }
コード例 #30
0
 private bool IsFlightAvailable(AirMaterial currentFlight)
 {
     return GetFlightInfoListCount(currentFlight) > 0 && currentFlight.AdultTax != 0;
 }