Example #1
0
    protected void ibtnSubmit_Click(object sender, EventArgs e)
    {
        if (this.IsValid)
        {
            bool flag;
            Utility.Transaction.CurrentTransactionObject.Remark = this.txtRemark.Value;
            flag = OrderPassengerInfoControl1.PaddingPassengerInfo();
            if (!flag)
            {
                return;
            }
            flag = ContactInfoControl1.PaddingPassengerInfo();
            if (!flag)
            {
                return;
            }
            if (chkInsurance.Checked)
            {
                Terms.Sales.Business.InsuranceSearchCondition Condition = new Terms.Sales.Business.InsuranceSearchCondition();

                Condition.InsuranceType = TERMS.Common.InsuranceType.AirOnly;

                List<DateTime> listDateBegin = new List<DateTime>();
                List<DateTime> listDateEnd = new List<DateTime>();

                ///当有Air的时候 直接记录各个Air的CheckIn和CheckOut日期

                for (int i = 0; i < Utility.Transaction.CurrentTransactionObject.Items.Count; i++)
                {
                    if (Utility.Transaction.CurrentTransactionObject.Items[i] is AirOrderItem)
                    {
                        for (int j = 0; j < ((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips.Count; j++)
                        {
                            for (int x = 0; x < ((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips[j].Flights.Count; x++)
                            {
                                listDateBegin.Add(((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips[j].Flights[x].DepartureTime);
                                listDateEnd.Add(((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips[j].Flights[x].ArriveTime);
                            }
                        }
                    }
                }
                //对时间进行排序
                listDateBegin.Sort();
                listDateEnd.Sort();

                Condition.DepartureDate = listDateBegin[0];
                Condition.ReturnDate = listDateEnd[listDateEnd.Count - 1];

                Condition.TotalTripCost = GetTotalPice();

                Condition.TravelerCount = ((Terms.Sales.Business.AirSearchCondition)Utility.Transaction.CurrentSearchConditions).GetPassengerNumber(TERMS.Common.PassengerType.Adult) + ((Terms.Sales.Business.AirSearchCondition)Utility.Transaction.CurrentSearchConditions).GetPassengerNumber(TERMS.Common.PassengerType.Child);

                InsuranceMaterial insuranceMaterial = this.OnSearchInsurance(Condition);

                InsuranceOrderItem insuranceOrderItem = new InsuranceOrderItem(null);

                insuranceOrderItem.InsuranceOrderName = insuranceMaterial.InsuranceName;
                insuranceOrderItem.TotalPremiumAmount = Convert.ToDecimal(insuranceMaterial.PolicyQuote.PolicyInformation.Premium.TotalPremiumAmount);

                Utility.Transaction.CurrentTransactionObject.AddItem(insuranceOrderItem);

                //记录输入顾客事件
                OperaterAdvice.DoAdvice(Terms.Configuration.Utility.ConfigurationConst.OperateType.EnterTravels, this);

                this.Response.Redirect("~/Page/Hotel/HotelTravelerInsuranceForm.aspx?ConditionID=" + Request.Params["ConditionID"]);
            }
            else
            {
                //记录输入顾客事件
                OperaterAdvice.DoAdvice(Terms.Configuration.Utility.ConfigurationConst.OperateType.EnterTravels, this);

                this.Response.Redirect(SecureUrlSuffix + "Page/Common/CreditCardInfoForm.aspx?ConditionID=" + Request.Params["ConditionID"]);
            }
        }
    }
    protected void btnPricing_Click(object sender, EventArgs e)
    {
        lblError.Visible = false;

        if (CheckValidator())
        {
            lblError.Text = _ErrorText;
            lblError.Visible = true;
            btnPruchase.Enabled = false;

            lblGTTReference.Text = string.Empty;
            lblSellingPrice.Text = string.Empty;

            return;
        }

        Terms.Sales.Business.InsuranceSearchCondition Condition = new Terms.Sales.Business.InsuranceSearchCondition();

        Condition.InsuranceType = GetCheckInsuranceType();

        Condition.DepartureDate = Convert.ToDateTime(txtTravelFrom.Text);

        Condition.ReturnDate = Convert.ToDateTime(txtTravelTo.Text);

        Condition.TotalTripCost = Convert.ToDecimal(txtTotalTripCost.Text);

        if (txtChilds.Text.Trim().Length == 0)
        {
            Condition.TravelerCount = Convert.ToInt32(txtAdult.Text);

            Condition.Adults = Convert.ToInt32(txtAdult.Text);

            Condition.Childs = 0;
        }
        else
        {
            Condition.TravelerCount = Convert.ToInt32(txtAdult.Text) + Convert.ToInt32(txtChilds.Text);

            Condition.Adults = Convert.ToInt32(txtAdult.Text);

            Condition.Childs = Convert.ToInt32(txtChilds.Text);
        }

        Session["InsuranceSearchCondition"] = Condition;

        InsuranceMaterial insuranceMaterial = this.OnSearchInsuranceByB2B(Condition);

        //SetSubPrice(insuranceMaterial);

        if (insuranceMaterial != null && insuranceMaterial.PolicyQuote.Status.IsSuccess)
        {
            if (cbtEmergency.Checked)
            {
                insuranceMaterial.PolicyQuote.PolicyInformation.Product.IncludeEmt = true;
            }

            InsuranceOrderItem insuranceOrderItem = new InsuranceOrderItem(insuranceMaterial, null);
            insuranceOrderItem.InsuranceType = Condition.InsuranceType;

            if (!string.IsNullOrEmpty(txtCaseNumber.Text.Trim()))
            {
                insuranceOrderItem.RelationCaseNumber = txtCaseNumber.Text.Trim();
            }

            if (!string.IsNullOrEmpty(txtTicketNumber.Text.Trim()))
            {
                insuranceOrderItem.TicketNumber = txtTicketNumber.Text.Trim();
            }

            insuranceOrderItem.TotalTripCost = Convert.ToDecimal(txtTotalTripCost.Text);

            DateTime TicketingDate = Convert.ToDateTime(txtTicketingDate.Text);
            insuranceOrderItem.TicketDate = TicketingDate;

            Utility.Transaction.IntKey = Condition.GetHashCode();
            InsuranceIntKey = Condition.GetHashCode();
            Utility.Transaction.CurrentSearchConditions = Condition;
            Utility.Transaction.CurrentTransactionObject = new TransactionObject();
            Utility.Transaction.CurrentTransactionObject.AddItem(insuranceOrderItem);

            Session["InsuranceMaterial"] = insuranceMaterial;

            SetPriceShow((decimal)insuranceMaterial.PolicyQuote.PolicyInformation.Premium.TotalPremiumAmount, (decimal)insuranceMaterial.PolicyQuote.PolicyInformation.Premium.Markup, insuranceMaterial);

            btnPruchase.Enabled = true;
        }
        else
        {
            if (insuranceMaterial != null && !insuranceMaterial.PolicyQuote.Status.IsSuccess)
            {
                lblError.Text = insuranceMaterial.PolicyQuote.Status.ErrorDescription;
                lblError.Visible = true;
            }
            else
            {
                lblError.Text = "Unknown Error";
                lblError.Visible = true;
            }
        }
    }
Example #3
0
    private void SetInsurance()
    {
        Terms.Sales.Business.InsuranceSearchCondition Condition = new Terms.Sales.Business.InsuranceSearchCondition();

        Condition.InsuranceType = TERMS.Common.InsuranceType.AirOnly;
        List<DateTime> listDateBegin = new List<DateTime>();
        List<DateTime> listDateEnd = new List<DateTime>();

        ///当有Air的时候 直接记录各个Air的CheckIn和CheckOut日期
        for (int i = 0; i < Utility.Transaction.CurrentTransactionObject.Items.Count; i++)
        {
            if (Utility.Transaction.CurrentTransactionObject.Items[i] is AirOrderItem)
            {
                for (int j = 0; j < ((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips.Count; j++)
                {
                    for (int x = 0; x < ((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips[j].Flights.Count; x++)
                    {
                        listDateBegin.Add(((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips[j].Flights[x].DepartureTime);
                        listDateEnd.Add(((AirOrderItem)Utility.Transaction.CurrentTransactionObject.Items[i]).Merchandise.AirTrip.SubTrips[j].Flights[x].ArriveTime);
                    }
                }
            }
        }
        //对时间进行排序
        listDateBegin.Sort();
        listDateEnd.Sort();

        //记录最早日期与最晚日期

        Condition.DepartureDate = listDateBegin[0];
        Condition.ReturnDate = listDateEnd[listDateEnd.Count - 1];

        Condition.TotalTripCost = GetTotalPice();

        Condition.TravelerCount = ((Terms.Sales.Business.AirSearchCondition)Utility.Transaction.CurrentSearchConditions).GetPassengerNumber(TERMS.Common.PassengerType.Adult) + ((Terms.Sales.Business.AirSearchCondition)Utility.Transaction.CurrentSearchConditions).GetPassengerNumber(TERMS.Common.PassengerType.Child);

        try
        {

            InsuranceMaterial insuranceMaterial = this.OnSearchInsurance(Condition);

            lblInsuranceName.Text = "Insurance Name : " + insuranceMaterial.InsuranceName;

            lblInsuranceTotal.Text = "Insurance Total : $" + insuranceMaterial.PolicyQuote.PolicyInformation.Premium.TotalPremiumAmount.ToString("N0");

            if (insuranceMaterial.InsuranceUrl.IndexOf(@"http://") > -1)
            {
                hlInsuranceDetails.NavigateUrl = insuranceMaterial.InsuranceUrl;
            }
            else
            {
                hlInsuranceDetails.NavigateUrl = @"http://" + insuranceMaterial.InsuranceUrl;
            }
        }
        catch
        {
            return;
        }
    }