Beispiel #1
0
        /// <summary>
        /// Lấy báng giá tàu Hải Phong tại thời điểm
        /// </summary>
        /// <param name="date"></param>
        /// <param name="cruise"></param>
        protected CruiseExpenseTable GetCurrentCruiseTable(DateTime date, SailsTrip cruise)
        {
            #region -- cruise table --

            bool isNeedNewTable = false;
            if (_cruiseTable != null)
            {
                //if (_cruiseTable.ValidFrom > date || _cruiseTable.ValidTo < date || _cruiseTable.Cruise != cruise)
                //{
                //    isNeedNewTable = true;
                //}
            }
            else
            {
                isNeedNewTable = true;
            }

            if (isNeedNewTable)
            {
                _cruiseTable = Module.CruiseTableGetValid(date, cruise);
            }

            #endregion

            return(_cruiseTable);
        }
Beispiel #2
0
        protected void rptTripList_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            try
            {
                SailsTrip    item             = Module.TripGetById(Convert.ToInt32(e.CommandArgument));
                DropDownList ddlOption        = (DropDownList)e.Item.FindControl("ddlOption");
                TextBox      textBoxStartDate = (TextBox)e.Item.FindControl("textBoxStartDate");
                CultureInfo  cultureInfo      = new CultureInfo("vi-VN");
                switch (e.CommandName)
                {
                case "Book":
                    DateTime startDate;
                    try
                    {
                        startDate = DateTime.ParseExact(textBoxStartDate.Text, "dd/MM/yyyy",
                                                        cultureInfo.DateTimeFormat);
                    }
                    catch (Exception)
                    {
                        startDate = DateTime.Today.AddDays(1);
                    }

                    if (startDate < DateTime.Today.AddDays(1))
                    {
                        Label labelError = e.Item.FindControl("labelError") as Label;
                        if (labelError != null)
                        {
                            labelError.Text = "You can not book in the past!";
                            return;
                        }
                    }
                    Session.Add("StartDate", startDate.ToString("dd/MM/yyyy"));
                    Session.Add("TripId", item.Id);
                    Session.Add("TripOption", ddlOption.SelectedValue);
                    if (item.NumberOfOptions > 1)
                    {
                        PageEngine.PageRedirect(string.Format("{0}/{1}/{2}/{3}/{4}{5}",
                                                              UrlHelper.GetUrlFromSection(Module.Section),
                                                              SailsModule.ACTION_ORDER_PARAM, item.Id, ddlOption.SelectedValue,
                                                              item.Name, UrlHelper.EXTENSION));
                    }
                    else
                    {
                        PageEngine.PageRedirect(string.Format("{0}/{1}/{2}/{3}/{4}{5}",
                                                              UrlHelper.GetUrlFromSection(Module.Section),
                                                              SailsModule.ACTION_ORDER_PARAM, item.Id, 0, item.Name,
                                                              UrlHelper.EXTENSION));
                    }
                    break;

                default:
                    break;
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Error when rptTripList_ItemCommand in TripList control", ex);
                throw;
            }
        }
Beispiel #3
0
        protected void rptTripList_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            try
            {
                SailsTrip item = Module.TripGetById(Convert.ToInt32(e.CommandArgument));
                switch (e.CommandName)
                {
                case "Delete":
                    Module.Delete(item);
                    GetDataSource();
                    break;

                case "Price":
                    DropDownList ddlOption = (DropDownList)e.Item.FindControl("ddlOption");
                    PageRedirect(string.Format("SailsPriceConfig.aspx?NodeId={0}&SectionId={1}&TripId={2}&Option={3}", Node.Id, Section.Id, item.Id, ddlOption.SelectedValue));
                    break;

                default:
                    break;
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Error when rptTripList_ItemCommand in RoomList", ex);
                ShowError(ex.Message);
            }
        }
Beispiel #4
0
        //public IList ExpenseServiceTotal(SailsTrip trip, DateTime? from, DateTime? to, Agency agency, int pageSize, int pageIndex, out int count, params CostType[] type)
        //{
        //ICriteria criteria = _session.OpenSession().CreateCriteria(typeof(ExpenseService));
        //criteria.CreateAlias("Expense", "expense");

        //SetCriteriaForExpenseGet(trip, @from, to, agency, type, criteria);
        //criteria.AddOrder(Order.Asc("expense.Date"));

        //criteria.SetProjection(Projections.Sum(""))

        //IList list = criteria.List();
        //return list[0];
        //}

        private static void SetCriteriaForExpenseGet(SailsTrip trip, DateTime? @from, DateTime?to, Agency agency,
                                                     CostType[] type, ICriteria criteria, string orgid, User user, bool hideZero, string paymentStatus)
        {
            if (from.HasValue && to.HasValue)
            {
                if (to > DateTime.Today)
                {
                    to = DateTime.Today;
                }
                criteria.Add(Expression.And(Expression.Ge("expense.Date", from), Expression.Le("expense.Date", to)));
            }
            else
            {
                to = DateTime.Today;
                criteria.Add(Expression.Le("expense.Date", to));
            }
            if (trip != null)
            {
                criteria.Add(Expression.Eq("expense.Trip", trip));
            }

            if (agency != null)
            {
                criteria.Add(Expression.Eq("Supplier", agency));
            }

            if (type != null && type.Length > 0 && type[0] != null)
            {
                criteria.Add(Expression.In("Type", type));
            }

            if (hideZero)
            {
                criteria.Add(Expression.Gt("Cost", 0d));
            }

            if (!string.IsNullOrEmpty(orgid))
            {
                criteria.Add(Expression.Eq("trip.Organization.Id", Convert.ToInt32(orgid)));
            }

            switch (paymentStatus)
            {
            case "all":
                criteria.Add(Expression.Ge("Paid", Convert.ToDouble(0)));
                break;

            case "notpaid":
                criteria.Add(Expression.Eq("Paid", Convert.ToDouble(0)));
                break;

            case "paid":
                criteria.Add(Expression.Gt("Paid", Convert.ToDouble(0)));
                break;

            default:
                criteria.Add(Expression.Eq("Paid", Convert.ToDouble(0)));
                break;
            }
        }
        protected CostingTable GetCurrentTable(DateTime date, SailsTrip trip, TripOption option)
        {
            #region -- costing table --

            if (_tableCache == null)
            {
                // Lấy về mảng costing table
                int       trips   = Module.TripMaxId() + 1;
                const int options = 3;
                _tableCache = new CostingTable[trips, options];
            }

            // Nếu bảng giá tại vị trí này là null hoặc hết hạn
            if (_tableCache[trip.Id, (int)option] == null || _tableCache[trip.Id, (int)option].ValidTo < date)
            {
                _tableCache[trip.Id, (int)option] = Module.CostingTableGetValid(date, trip, option);
            }

            _table = _tableCache[trip.Id, (int)option];

            #endregion

            if (_table == null)
            {
                throw new Exception(string.Format("No costing table for {0:dd/MM/yyyy}, {1} {2}", date, trip.Name,
                                                  option));
            }

            return(_table);
        }
Beispiel #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                // Lấy start date từ trong session
                _startDate = DateTime.ParseExact(Session["StartDate"].ToString(), "dd/MM/yyyy",
                                                 _cultureInfo.DateTimeFormat);
                _trip = Module.TripGetById(Convert.ToInt32(Session["TripId"]));
                if (!IsPostBack)
                {
                    // Lấy danh sách phòng
                    rptRoomClass.DataSource = Module.RoomClassGetAll();
                    rptRoomClass.DataBind();

                    // Lấy danh sách dịch vụ
                    rptExtraOption.DataSource = Module.ExtraOptionGetBooking();
                    rptExtraOption.DataBind();
                    LocalizeControls();
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Error when Page_Load in SelectRooms ", ex);
                throw;
            }
        }
Beispiel #7
0
        private void LoadInfo()
        {
            IList list = Module.TripGetAll(false, UserIdentity);
            var   trip = new SailsTrip();

            trip.Name = "All";
            list.Insert(0, trip);
            ddlOrgs.DataSource     = Module.OrganizationGetAllRoot();
            ddlOrgs.DataTextField  = "Name";
            ddlOrgs.DataValueField = "Id";
            ddlOrgs.DataBind();

            var list2 = Module.OrganizationGetByUser(UserIdentity);

            if (list2.Count == 1)
            {
                ddlOrgs.SelectedValue = ((UserOrganization)list2[0]).Organization.Id.ToString();
            }

            cddlTrips.DataSource      = Module.TripGetAll(false, UserIdentity);
            cddlTrips.DataTextField   = "Name";
            cddlTrips.DataValueField  = "Id";
            cddlTrips.DataParentField = "OrgId";
            cddlTrips.ParentClientID  = ddlOrgs.ClientID;
            cddlTrips.DataBind();

            if (!string.IsNullOrEmpty(Request.QueryString["TripId"]))
            {
                cddlTrips.SelectedValue = Request.QueryString["TripId"];
                var strip = Module.TripGetById(Convert.ToInt32(Request.QueryString["TripId"]));
                ddlOrgs.SelectedValue = strip.Organization.Id.ToString();
            }
            if (!string.IsNullOrEmpty(Request.QueryString["Status"]))
            {
                //ddlStatus.SelectedValue = Request.QueryString["Status"];
            }
            if (!string.IsNullOrEmpty(Request.QueryString["StartDate"]))
            {
                textBoxStartDate.Text = Request.QueryString["StartDate"];
            }

            if (!string.IsNullOrEmpty(Request.QueryString["Booking"]))
            {
                txtBookingId.Text = Request.QueryString["Booking"];
            }

            if (!string.IsNullOrEmpty(Request.QueryString["Customer"]))
            {
                txtCustomerName.Text = Request.QueryString["Customer"];
            }

            if (!string.IsNullOrEmpty(Request.QueryString["charter"]))
            {
                ddlBookingTypes.SelectedIndex = Convert.ToInt32(Request.QueryString["charter"]) + 1;
            }
        }
Beispiel #8
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (!IsPostBack)
                {
                    LocalizeControls();

                    _trip = Module.TripGetById(Module.TripId);
                    image_Trip.ImageUrl     = _trip.Image;
                    label_Name.Text         = _trip.Name;
                    label_NumberOfDays.Text = string.Format("{0}: {1}", Strings.labelNumberOfDays, _trip.NumberOfDay);

                    Description.InnerHtml = _trip.Description;
                    Activities.InnerHtml  = _trip.Itinerary;
                    Exclusions.InnerHtml  = _trip.Exclusions;
                    Inclusions.InnerHtml  = _trip.Inclusions;
                    WhatToTake.InnerHtml  = _trip.WhatToTake;
                    IList options = new ArrayList();
                    switch (_trip.NumberOfOptions)
                    {
                    case 2:
                        ddlOption.Items.Add(new ListItem(Enum.GetName(typeof(TripOption), TripOption.Option1), "1"));
                        ddlOption.Items.Add(new ListItem(Enum.GetName(typeof(TripOption), TripOption.Option2), "2"));
                        options.Add("Option 1");
                        options.Add("Option 2");
                        break;

                    case 3:
                        ddlOption.Items.Add(new ListItem(Enum.GetName(typeof(TripOption), TripOption.Option1), "1"));
                        ddlOption.Items.Add(new ListItem(Enum.GetName(typeof(TripOption), TripOption.Option2), "2"));
                        ddlOption.Items.Add(new ListItem(Enum.GetName(typeof(TripOption), TripOption.Option3), "3"));
                        options.Add("Option 1");
                        options.Add("Option 2");
                        options.Add("Option 3");
                        break;

                    default:
                        options.Add("");
                        ddlOption.Enabled = false;
                        ddlOption.Visible = false;
                        break;
                    }
                    ddlOption.DataBind();

                    rptTripOption.DataSource = options;
                    rptTripOption.DataBind();
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Error when Page_Load in TripDetail control", ex);
                throw;
            }
        }
Beispiel #9
0
        protected virtual void GetDataSource()
        {
            // Điều kiện bắt buộc: chưa xóa và đang pending
            //ICriterion criterion = Expression.Eq(Booking.DELETED, false);
            //criterion = Expression.And(criterion, Expression.Eq(Booking.STATUS, StatusType.Pending));
            var criterion = Expression.And(Expression.Eq("Status", StatusType.Pending),
                                           Expression.Ge("Deadline", DateTime.Now));

            criterion = Expression.And(criterion, Expression.Eq("Deleted", false));

            int count;

            // Điều kiện từ query string
            if (Request.QueryString["UserId"] != null)
            {
                User user = Module.UserGetById(Convert.ToInt32(Request.QueryString["UserId"]));
                criterion = Expression.And(criterion, Expression.Eq("CreatedBy", user));

                // và mình là sale in charge
                criterion = Expression.And(criterion, Expression.Eq("agency.Sale", UserIdentity));
            }
            else // nếu không có user thì lấy create by me OR sale in charge
            {
                if (Request.QueryString["mode"] != "all")
                {
                    criterion = Expression.And(criterion,
                                               Expression.Or(Expression.Eq("CreatedBy", UserIdentity),
                                                             Expression.Eq("agency.Sale", UserIdentity)));
                }
            }

            if (Request.QueryString["TripId"] != null)
            {
                SailsTrip trip = Module.TripGetById(Convert.ToInt32(Request.QueryString["TripId"]));
                criterion = Expression.And(criterion, Expression.Eq("Trip", trip));
            }

            if (Request.QueryString["Date"] != null)
            {
                DateTime date = DateTime.FromOADate(Convert.ToDouble(Request.QueryString["date"]));
                criterion = Expression.And(criterion, Expression.Eq("StartDate", date.Date));
            }

            Order order = RepeaterOrder.GetOrderFromQueryString(Request.QueryString);

            if (order == null)
            {
                order = Order.Asc("Deadline");
            }

            rptBookingList.DataSource = Module.BookingGetByCriterion(criterion, order, out count, pagerOrders.PageSize,
                                                                     pagerOrders.CurrentPageIndex);
            pagerOrders.VirtualItemCount = count;
        }
Beispiel #10
0
        protected void buttonSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (IsValid)
                {
                    if (TripId > 0)
                    {
                        _trip = Module.TripGetById(TripId);
                    }
                    else
                    {
                        _trip           = new SailsTrip();
                        _trip.CreatedBy = UserIdentity;
                    }
                    _trip.ModifiedBy = UserIdentity;
                    _trip.Name       = textBoxName.Text;
                    int numOdays;
                    if (!string.IsNullOrEmpty(textBoxNumberOfDay.Text) &&
                        Int32.TryParse(textBoxNumberOfDay.Text, out numOdays))
                    {
                        _trip.NumberOfDay = numOdays;
                    }
                    else
                    {
                        _trip.NumberOfDay = 0;
                    }
                    _trip.NumberOfOptions = Convert.ToInt32(ddlNumberOfOptions.SelectedValue);
                    _trip.Image           = textBoxHiddenMap.Text;
                    _trip.Itinerary       = fckItinerary.Value;
                    _trip.Description     = fckDescription.Value;
                    _trip.Exclusions      = fckExclusions.Value;
                    _trip.Inclusions      = fckInclusions.Value;
                    _trip.WhatToTake      = fckWhatToTake.Value;
                    _trip.TripCode        = txtTripCode.Text;

                    _trip.Organization = Module.OrganizationGetById(Convert.ToInt32(ddlOrganizations.SelectedValue));
                    if (TripId > 0)
                    {
                        Module.Update(_trip);
                    }
                    else
                    {
                        Module.Save(_trip);
                    }
                    PageRedirect(string.Format("SailsTripList.aspx?NodeId={0}&SectionId={1}", Node.Id, Section.Id));
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Error when buttonSave_Click in SailsTripEdit", ex);
                ShowError(ex.Message);
            }
        }
Beispiel #11
0
        public SailsTrip GetTrip()
        {
            SailsTrip trip = null;

            try
            {
                trip = BookingViewBLL.TripGetById(Convert.ToInt32(ddlTrips.SelectedValue));
            }
            catch { }
            return(trip);
        }
Beispiel #12
0
        protected void rptCommission_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            SailsTrip        sailsTrip          = Module.TripGetById(_trip.Id);
            Label            agencyLevelIdLabel = e.Item.FindControl("AgencyLevelId") as Label;
            AgencyLevel      agencyLevel        = Module.AgencyLevelGetById(Convert.ToInt32(agencyLevelIdLabel.Text));
            AgencyCommission agencyCommission   = Module.GetAgencyCommissionByTripAndAgencyLevel(sailsTrip, agencyLevel, ValidFrom.Date);

            var txtAdultCommissionUSD = e.Item.FindControl("txtAdultCommissionUSD") as TextBox;
            var hidAdultCommissionUSD = e.Item.FindControl("hidAdultCommissionUSD") as HiddenField;

            txtAdultCommissionUSD.Attributes.Add("onblur", "assignValueToHiddenField('" + txtAdultCommissionUSD.ClientID + "','" + hidAdultCommissionUSD.ClientID + "')");
            txtAdultCommissionUSD.Text  = agencyCommission.CommissionAdultUSD.ToString("#,0.#");
            hidAdultCommissionUSD.Value = txtAdultCommissionUSD.Text;

            var txtAdultCommissionVND = e.Item.FindControl("txtAdultCommissionVND") as TextBox;
            var hidAdultCommissionVND = e.Item.FindControl("hidAdultCommissionVND") as HiddenField;

            txtAdultCommissionVND.Attributes.Add("onblur", "assignValueToHiddenField('" + txtAdultCommissionVND.ClientID + "','" + hidAdultCommissionVND.ClientID + "')");
            txtAdultCommissionVND.Text  = agencyCommission.CommissionAdultVND.ToString("#,0.#");
            hidAdultCommissionVND.Value = txtAdultCommissionVND.Text;

            var txtChildCommissionUSD = e.Item.FindControl("txtChildCommissionUSD") as TextBox;
            var hidChildCommissionUSD = e.Item.FindControl("hidChildCommissionUSD") as HiddenField;

            txtChildCommissionUSD.Attributes.Add("onblur", "assignValueToHiddenField('" + txtChildCommissionUSD.ClientID + "','" + hidChildCommissionUSD.ClientID + "')");
            txtChildCommissionUSD.Text  = agencyCommission.CommissionChildUSD.ToString("#,0.#");
            hidChildCommissionUSD.Value = txtChildCommissionUSD.Text;

            var txtChildCommissionVND = e.Item.FindControl("txtChildCommissionVND") as TextBox;
            var hidChildCommissionVND = e.Item.FindControl("hidChildCommissionVND") as HiddenField;

            txtChildCommissionVND.Attributes.Add("onblur", "assignValueToHiddenField('" + txtChildCommissionVND.ClientID + "','" + hidChildCommissionVND.ClientID + "')");
            txtChildCommissionVND.Text  = agencyCommission.CommissionChildVND.ToString("#,0.#");
            hidChildCommissionVND.Value = txtChildCommissionVND.Text;

            var txtBabyCommissionUSD = e.Item.FindControl("txtBabyCommissionUSD") as TextBox;
            var hidBabyCommissionUSD = e.Item.FindControl("hidBabyCommissionUSD") as HiddenField;

            txtBabyCommissionUSD.Attributes.Add("onblur", "assignValueToHiddenField('" + txtBabyCommissionUSD.ClientID + "','" + hidBabyCommissionUSD.ClientID + "')");
            txtBabyCommissionUSD.Text  = agencyCommission.CommissionBabyUSD.ToString("#,0.#");
            hidBabyCommissionUSD.Value = txtBabyCommissionUSD.Text;

            var txtBabyCommissionVND = e.Item.FindControl("txtBabyCommissionVND") as TextBox;
            var hidBabyCommissionVND = e.Item.FindControl("hidBabyCommissionVND") as HiddenField;

            txtBabyCommissionVND.Attributes.Add("onblur", "assignValueToHiddenField('" + txtBabyCommissionVND.ClientID + "','" + hidBabyCommissionVND.ClientID + "')");
            txtBabyCommissionVND.Text  = agencyCommission.CommissionBabyVND.ToString("#,0.#");
            hidBabyCommissionVND.Value = txtBabyCommissionVND.Text;

            var agencyCommissionIdLabel = e.Item.FindControl("AgencyCommissionId") as Label;

            agencyCommissionIdLabel.Text = agencyCommission.Id.ToString();
        }
 protected void rptTripRow_ItemDataBound(object sender, RepeaterItemEventArgs e)
 {
     if (e.Item.DataItem is SailsTrip)
     {
         SailsTrip     cruise = (SailsTrip)e.Item.DataItem;
         HtmlTableCell thTrip = e.Item.FindControl("thTrip") as HtmlTableCell;
         if (thTrip != null)
         {
             thTrip.InnerText = cruise.Name;
         }
     }
 }
Beispiel #14
0
        public int CustomerCount(SailsTrip trip)
        {
            int result = 0;

            foreach (Booking booking in _bookings)
            {
                if (booking.Trip == trip)
                {
                    result += booking.Pax;
                }
            }
            return(result);
        }
 private void LoadInfo()
 {
     if (TripId > 0)
     {
         _trip                            = Module.TripGetById(TripId);
         textBoxName.Text                 = _trip.Name;
         textBoxNumberOfDay.Text          = _trip.NumberOfDay.ToString();
         txtDescription.Text              = _trip.Description;
         txtTripCode.Text                 = _trip.TripCode;
         ddlHalfDay.SelectedValue         = _trip.HalfDay.ToString();
         ddlNumberOfOptions.SelectedValue = _trip.NumberOfOptions.ToString();
     }
 }
 protected override void Page_Load(object sender, EventArgs e)
 {
     //if (!UserIdentity.HasPermission(AccessLevel.Administrator))
     //{
     //    ShowError("You don't have permission to view this info, please go away");
     //    return;
     //}
     if (AllCruises.Count == 1 && Request.QueryString["cruiseid"] == null)
     {
         SailsTrip cruise = (SailsTrip)AllCruises[0];
         PageRedirect(string.Format("BookingReportPeriod.aspx?NodeId={0}&SectionId={1}&tripid={2}", Node.Id, Section.Id, cruise.Id));
     }
     _util = new RoomUtil(Module);
     base.Page_Load(sender, e);
 }
 protected void rptTrips_ItemDataBound(object sender, RepeaterItemEventArgs e)
 {
     if (e.Item.DataItem is SailsTrip)
     {
         SailsTrip trip   = (SailsTrip)e.Item.DataItem;
         Literal   litPax = e.Item.FindControl("litPax") as Literal;
         if (litPax != null)
         {
             if (currentTripMap != null && currentTripMap.ContainsKey(trip.Id))
             {
                 litPax.Text = currentTripMap[trip.Id].ToString();
             }
         }
     }
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            Title = Resources.titleSailsPriceConfig;
            if (TripId <= 0)
            {
                panelContent.Visible = false;
                ShowError(Resources.stringAccessDenied);
                return;
            }
            _trip = Module.TripGetById(TripId);

            int option = 0;

            if (Request.QueryString["option"] != null)
            {
                option = Convert.ToInt32(Request.QueryString["option"]);
            }
            if (option == 0)
            {
                option = 1;
            }
            if (ActiveAgency != null)
            {
                titleSailsPriceConfig.Text = string.Format("Price config for {0}, option {1} on {2} of {3}", _trip.Name, option, ActiveCruise.Name, ActiveAgency.Name);
            }
            else
            {
                titleSailsPriceConfig.Text = string.Format("Price config for {0}, option {1} on {2}", _trip.Name, option, ActiveCruise.Name);
            }
            if (!IsPostBack)
            {
                if (ActiveCruise != null)
                {
                    ddlCruises.Visible = false;
                }
                else
                {
                    ddlCruises.DataSource     = Module.CruiseGetAll();
                    ddlCruises.DataTextField  = "Name";
                    ddlCruises.DataValueField = "Id";
                    ddlCruises.DataBind();
                    ddlCruises.Items.Insert(0, "-- Choose cruise --");
                }

                rptPriceTables.DataSource = Module.PriceTableGetAll(_trip, Option, ActiveCruise, ActiveAgency);
                rptPriceTables.DataBind();
            }
        }
 protected void rptTrips_ItemDataBound(object sender, RepeaterItemEventArgs e)
 {
     if (e.Item.DataItem is SailsTrip)
     {
         SailsTrip trip    = (SailsTrip)e.Item.DataItem;
         CheckBox  chkTrip = e.Item.FindControl("chkTrip") as CheckBox;
         if (chkTrip != null)
         {
             chkTrip.Text = trip.Name;
             if (_cruise.Trips.Contains(trip))
             {
                 chkTrip.Checked = true;
             }
         }
     }
 }
Beispiel #20
0
        public int BookingCount(SailsTrip trip)
        {
            int result = 0;

            if (_bookings != null)
            {
                foreach (Booking booking in _bookings)
                {
                    if (booking.Trip == trip)
                    {
                        result++;
                    }
                }
            }
            return(result);
        }
Beispiel #21
0
        public IList ExpenseServiceGet(SailsTrip trip, DateTime?from, DateTime?to, Agency agency, int pageSize, int pageIndex, out int count, string orgid, User user, bool hideZero, string paymentStatus, int tripType, string tripcode, params CostType[] type)
        {
            ICriteria criteria = _session.OpenSession().CreateCriteria(typeof(ExpenseService));

            criteria.CreateAlias("Expense", "expense");
            criteria.CreateAlias("expense.Trip", "trip");
            if (tripType == 1)
            {
                criteria.Add(Expression.Not(Expression.Eq("trip.TripCode", "HUESF")));
            }
            if (tripType == 2)
            {
                criteria.Add(Expression.Eq("trip.TripCode", "HUESF"));
            }

            if (tripcode != "")
            {
                criteria.Add(Expression.Like("trip.TripCode", tripcode, MatchMode.Anywhere));
            }

            SetCriteriaForExpenseGet(trip, @from, to, agency, type, criteria, orgid, user, hideZero, paymentStatus);
            criteria.AddOrder(Order.Asc("expense.Date"));

            if (pageIndex < 0)
            {
                pageIndex = 0;
            }

            if (pageSize > 0)
            {
                criteria.SetMaxResults(pageSize);
                criteria.SetFirstResult(pageSize * pageIndex);
            }
            IList list = criteria.List();

            criteria = _session.OpenSession().CreateCriteria(typeof(ExpenseService));
            criteria.CreateAlias("Expense", "expense");
            criteria.CreateAlias("expense.Trip", "trip");

            SetCriteriaForExpenseGet(trip, @from, to, agency, type, criteria, orgid, user, hideZero, paymentStatus);

            criteria.SetProjection(Projections.RowCount());
            IList cl = criteria.List();

            count = (int)cl[0];
            return(list);
        }
 protected void rptTripCustomer_ItemDataBound(object sender, RepeaterItemEventArgs e)
 {
     if (e.Item.DataItem is SailsTrip)
     {
         SailsTrip trip     = (SailsTrip)e.Item.DataItem;
         Literal   litGroup = e.Item.FindControl("litGroup") as Literal;
         if (litGroup != null)
         {
             litGroup.Text = _util.BookingCount(trip).ToString();
         }
         Literal litCustomer = e.Item.FindControl("litCustomer") as Literal;
         if (litCustomer != null)
         {
             litCustomer.Text = _util.CustomerCount(trip).ToString();
         }
     }
 }
Beispiel #23
0
        protected void rptCruises_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.DataItem is SailsTrip)
            {
                SailsTrip cruise = (SailsTrip)e.Item.DataItem;

                HtmlGenericControl liMenu = e.Item.FindControl("liMenu") as HtmlGenericControl;
                if (liMenu != null)
                {
                    if (cruise.Id.ToString() == Request.QueryString["cruiseid"])
                    {
                        liMenu.Attributes.Add("class", "selected");
                    }
                }

                HyperLink hplCruises = e.Item.FindControl("hplCruises") as HyperLink;
                if (hplCruises != null)
                {
                    DateTime from = DateTime.ParseExact(txtFrom.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    DateTime to   = DateTime.ParseExact(txtTo.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    hplCruises.Text        = cruise.Name;
                    hplCruises.NavigateUrl =
                        string.Format("ExpenseReport.aspx?NodeId={0}&SectionId={1}&from={2}&to={3}&cruiseid={4}", Node.Id, Section.Id, from.ToOADate(), to.ToOADate(), cruise.Id);
                }
            }
            else
            {
                HtmlGenericControl liMenu = e.Item.FindControl("liMenu") as HtmlGenericControl;
                if (liMenu != null)
                {
                    if (Request.QueryString["cruiseid"] == null)
                    {
                        liMenu.Attributes.Add("class", "selected");
                    }
                }
                HyperLink hplCruises = e.Item.FindControl("hplCruises") as HyperLink;
                if (hplCruises != null)
                {
                    DateTime from = DateTime.ParseExact(txtFrom.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    DateTime to   = DateTime.ParseExact(txtTo.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                    hplCruises.NavigateUrl =
                        string.Format("ExpenseReport.aspx?NodeId={0}&SectionId={1}&from={2}&to={3}", Node.Id,
                                      Section.Id, from.ToOADate(), to.ToOADate());
                }
            }
        }
Beispiel #24
0
        /// <summary>
        /// Lấy về price config theo trip, room type và room class
        /// </summary>
        /// <param name="trip"></param>
        /// <param name="type"></param>
        /// <param name="roomClass"></param>
        /// <param name="option"></param>
        /// <returns></returns>
        public SailsPriceConfig SailsPriceConfigGetBy_RoomType_RoomClass_Trip(SailsTrip trip, RoomTypex type, RoomClass roomClass, TripOption option)
        {
            ICriteria criteria = _session.OpenSession().CreateCriteria(typeof(SailsPriceConfig));

            criteria.Add(Expression.Eq(SailsPriceConfig.TRIP, trip))
            .Add(Expression.Eq(SailsPriceConfig.ROOMTYPE, type))
            .Add(Expression.Eq(SailsPriceConfig.ROOMCLASS, roomClass))
            .Add(Expression.Eq(SailsPriceConfig.TRIPOPTION, option));
            criteria.AddOrder(new Order("Id", false));
            IList result = criteria.List();

            if (result.Count > 0)
            {
                return(result[0] as SailsPriceConfig);
            }
            return(null);
        }
        protected void rptCruises_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.DataItem is SailsTrip)
            {
                SailsTrip          trip   = (SailsTrip)e.Item.DataItem;
                HtmlGenericControl liMenu = e.Item.FindControl("liMenu") as HtmlGenericControl;
                if (liMenu != null)
                {
                    if (trip.Id.ToString() == Request.QueryString["cruiseid"])
                    {
                        liMenu.Attributes.Add("class", "selected");
                    }
                }

                HyperLink hplCruises = e.Item.FindControl("hplCruises") as HyperLink;
                if (hplCruises != null)
                {
                    hplCruises.Text        = trip.Name;
                    hplCruises.NavigateUrl = string.Format(
                        "BalanceReport.aspx?NodeId={0}&SectionId={1}&cruiseid={2}&month={3}&year={4}", Node.Id,
                        Section.Id,
                        trip.Id, ddlMonths.SelectedIndex, txtYear.Text);
                }
            }
            else
            {
                HtmlGenericControl liMenu = e.Item.FindControl("liMenu") as HtmlGenericControl;
                if (liMenu != null)
                {
                    if (Request.QueryString["cruiseid"] == null)
                    {
                        liMenu.Attributes.Add("class", "selected");
                    }
                }

                HyperLink hplCruises = e.Item.FindControl("hplCruises") as HyperLink;
                if (hplCruises != null)
                {
                    hplCruises.NavigateUrl = string.Format(
                        "BalanceReport.aspx?NodeId={0}&SectionId={1}&month={2}&year={3}", Node.Id, Section.Id,
                        ddlMonths.SelectedIndex, txtYear.Text);
                }
            }
        }
Beispiel #26
0
        protected void imageButtonBook_Click(object sender, ImageClickEventArgs e)
        {
            if (PageEngine.IsValid)
            {
                DateTime startDate;
                try
                {
                    startDate = DateTime.ParseExact(textBoxStartDate.Text, "dd/MM/yyyy",
                                                    CultureInfo.InvariantCulture);
                }
                catch
                {
                    startDate = DateTime.Now.AddDays(1);
                }
                if (startDate < DateTime.Today.AddDays(1))
                {
                    labelError.Text = "You can not book in the past!";
                    return;
                }

                _trip = Module.TripGetById(Module.TripId);
                Session.Add("StartDate", textBoxStartDate.Text);
                Session.Add("TripId", _trip.Id);
                if (_trip.NumberOfOptions > 1)
                {
                    Session.Add("TripOption", ddlOption.SelectedValue);
                    PageEngine.PageRedirect(string.Format("{0}/{1}/{2}/{3}/{4}{5}",
                                                          UrlHelper.GetUrlFromSection(Module.Section),
                                                          SailsModule.ACTION_ORDER_PARAM, _trip.Id,
                                                          ddlOption.SelectedValue,
                                                          _trip.Name, UrlHelper.EXTENSION));
                }
                else
                {
                    Session.Add("TripOption", Enum.GetName(typeof(TripOption), TripOption.Option1));
                    PageEngine.PageRedirect(string.Format("{0}/{1}/{2}/{3}/{4}{5}",
                                                          UrlHelper.GetUrlFromSection(Module.Section),
                                                          SailsModule.ACTION_ORDER_PARAM, _trip.Id, 0,
                                                          _trip.Name,
                                                          UrlHelper.EXTENSION));
                }
            }
        }
Beispiel #27
0
        protected void BindTrips()
        {
            IList cruises = Module.TripGetAll(false, null);

            if (cruises.Count == 1)
            {
                if (ActiveTrip == null)
                {
                    SailsTrip cruise = (SailsTrip)cruises[0];
                    PageRedirect(string.Format("ExpenseReport.aspx?NodeId={0}&SectionId={1}&cruiseid={2}", Node.Id, Section.Id, cruise.Id));
                }
                else
                {
                    rptCruises.Visible = false;
                }
            }
            else
            {
                rptCruises.DataSource = cruises;
                rptCruises.DataBind();
            }
        }
        protected void buttonSave_Click(object sender, EventArgs e)
        {
            GetCruise();
            Module.SaveOrUpdate(_cruise, UserIdentity);

            foreach (RepeaterItem item in rptTrips.Items)
            {
                CheckBox    chkTrip  = (CheckBox)item.FindControl("chkTrip");
                HiddenField hiddenId = (HiddenField)item.FindControl("hiddenId");
                SailsTrip   trip     = Module.TripGetById(Convert.ToInt32(hiddenId.Value));
                CruiseTrip  cr       = Module.CruiseTripGet(_cruise, trip);
                if (chkTrip.Checked && cr.Id < 0)
                {
                    Module.SaveOrUpdate(cr);
                }
                if (!chkTrip.Checked && cr.Id > 0)
                {
                    Module.Delete(cr);
                }
            }
            PageRedirect(string.Format("CruisesList.aspx?NodeId={0}&SectionId={1}", Node.Id, Section.Id));
        }
Beispiel #29
0
        public void Initialize()
        {
            //Khởi tạo danh sách trip
            trips = Module.TripGetAll(false).Cast <SailsTrip>().ToList();
            //Khởi tạo trip
            var tripId = 0;

            try
            {
                tripId = Int32.Parse(Request.QueryString["tripid"]);
            }
            catch { }
            trip = Module.TripGetById(tripId);
            //Khởi tạo danh sách booking
            ICriterion criterion = Expression.Eq("Deleted", false);

            criterion = Expression.And(criterion, Expression.Eq("Status", StatusType.Approved));
            criterion = Module.AddDateExpression(criterion, Date);
            bookings  = Module.BookingGetByCriterion(criterion, null, 0, 0) != null
                ? Module.BookingGetByCriterion(criterion, null, 0, 0).Cast <Booking>().ToList() : new List <Booking>();

            //Khởi tạo dictionary số khách theo từng trip
            foreach (Booking booking in bookings)
            {
                if (!_customers.ContainsKey(booking.Trip.Id))
                {
                    _customers.Add(booking.Trip.Id, 0);
                }
                _customers[booking.Trip.Id] += booking.Pax;
            }
            //Khởi tạo danh sách booking nếu có trip được chọn
            if (Request.QueryString["tripid"] != null)
            {
                criterion = Expression.And(criterion, Expression.Eq("Trip", trip));
            }
            bookings = Module.BookingGetByCriterion(criterion, null, 0, 0) != null
                ? Module.BookingGetByCriterion(criterion, null, 0, 0).Cast <Booking>().ToList() : new List <Booking>();
        }
        private void LoadInfo()
        {
            if (TripId > 0)
            {
                _trip                   = Module.TripGetById(TripId);
                textBoxName.Text        = _trip.Name;
                textBoxNumberOfDay.Text = _trip.NumberOfDay.ToString();
                fckItinerary.Value      = _trip.Itinerary;
                fckDescription.Value    = _trip.Description;
                fckExclusions.Value     = _trip.Exclusions;
                fckWhatToTake.Value     = _trip.WhatToTake;
                fckInclusions.Value     = _trip.Inclusions;
                textBoxHiddenMap.Text   = _trip.Image;
                txtTripCode.Text        = _trip.TripCode;

                ddlHalfDay.SelectedValue = _trip.HalfDay.ToString();

                ddlNumberOfOptions.SelectedValue = _trip.NumberOfOptions.ToString();
                fileUploaderMap.addCustomJS(FileUploaderAJAX.customJSevent.preLoad,
                                            FileHelper.InsertImagePostloadJS("divMap", textBoxHiddenMap,
                                                                             _trip.Image));
            }
        }