Пример #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!(Session[ByteCore.FerryBooking.Web.SessionVariable.Step1UserInput] is Step1UserInput))
            {
                Response.Redirect("Default.aspx");
            }
            Step1UserInput step1 = (Step1UserInput)Session[SessionVariable.Step1UserInput];
            if (!Page.IsPostBack)
            {
                RouteList routelist = new RouteList();
                Route r1 = new Route().GetById(step1.Route1Id,false);
                routelist.Add(r1);

                Hashtable htSchedulePreLoad = new Hashtable();
                htSchedulePreLoad.Add(r1.ID.ToString(),InitRouteSchedule(step1.Route1Id));

                if (step1.Route2Id>0)
                {
                    Route r2 = new Route().GetById(step1.Route2Id, false);
                    routelist.Add(r2);
                    htSchedulePreLoad.Add(r2.ID.ToString(), InitRouteSchedule(step1.Route2Id));
                }

                if (step1.Route3Id>0)
                {
                    Route r3 = new Route().GetById(step1.Route3Id, false);
                    routelist.Add(r3);
                    htSchedulePreLoad.Add(r3.ID.ToString(), InitRouteSchedule(step1.Route3Id));
                }

                if (step1.Route4Id > 0)
                {
                    Route r4 = new Route().GetById(step1.Route4Id, false);
                    routelist.Add(r4);
                    htSchedulePreLoad.Add(r4.ID.ToString(), InitRouteSchedule(step1.Route4Id));
                }

                Session[SessionVariable.RouteSchedules] = htSchedulePreLoad;

                this.lvSchedule.DataSource = routelist;
                lvSchedule.DataBind();
                RouteOrderPassengerDetailList passengerList = new RouteOrderPassengerDetailList();
                for (int i = 0; i < step1.PassengersCount; i++)
                {
                    passengerList.Add(new RouteOrderPassengerDetail());
                }

                lvPassenger.DataSource = passengerList;
                lvPassenger.DataBind();

                lvTravelMethod.DataSource = routelist;
                lvTravelMethod.DataBind();
            }
        }
        protected void Rpt_RouteList_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType != ListItemType.Item && e.Item.ItemType != ListItemType.AlternatingItem)
                return;
            RouteOrder ro = (RouteOrder)e.Item.DataItem;
            Label lblRouteTitle = (Label)e.Item.FindControl("lblRouteTitle");
            lblRouteTitle.Text = " Route " + e.Item.ItemIndex.ToString() + " (" + ro.Schedule.Fare.Routes.DeparturePort.PortName + " - " +
                    ro.Schedule.Fare.Routes.ArriavlPort.PortName + ")";

            Label lblRouteTotalAmount = (Label)e.Item.FindControl("lblRouteTotalAmount");
            lblRouteTotalAmount.Text = ro.RouteTotalAmount.ToString("C");
            //Bind Passengers;
            Repeater rptPassengers = (Repeater)e.Item.FindControl("Rpt_PassengerList");
            RouteOrderPassengerDetail p = new RouteOrderPassengerDetail();
            _pList = p.GetPassengerListByRoute(ro.ID);
            rptPassengers.DataSource = _pList;
            rptPassengers.DataBind();
            //Bind Vehicles
            Repeater rptVehicleList = (Repeater)e.Item.FindControl("Rpt_VehicleList");
            RouteOrderVehicleDetail v = new RouteOrderVehicleDetail();
            _vList = v.GetVehicleListByRoute(ro.ID);
            rptVehicleList.DataSource = _vList;
            rptVehicleList.DataBind();
            Label lblCabinInfo = (Label)e.Item.FindControl("lblCabinInfo");
            RouteOrderDetailList cabinList = ro.GetListByRoute(1);
            StringBuilder sb = new StringBuilder();
            foreach (RouteOrderDetail item in cabinList)
            {
                sb.Append(item.FareType.FullFareTypeName);
                sb.Append("<br />");
            }
            lblCabinInfo.Text = sb.ToString();
            Label lblAddonInfo = (Label)e.Item.FindControl("lblAddonInfo");
            RouteOrderDetailList addonList = ro.GetListByRoute(4);
            StringBuilder sb1 = new StringBuilder();
            foreach (RouteOrderDetail item in addonList)
            {
                sb1.Append(item.FareType.FullFareTypeName);
                sb1.Append("<br />");
            }
            lblAddonInfo.Text = sb1.ToString();
        }