/// <summary>
        /// Maps the crew information.
        /// </summary>
        /// <param name="crews">The crews.</param>
        /// <param name="personsStatusHistory">The persons status history.</param>
        /// <param name="personStatusList">The person status list.</param>
        private static void MapCrewInformation(CrewmemberCollection crews, ListResult<PersonStatusHistory> personsStatusHistory, List<PersonStatus> personStatusList)
        {
            foreach (var crew in crews)
            {
                var item = personStatusList.FirstOrDefault(a => a.PersonId.ToString(CultureInfo.CurrentCulture).Equals(crew.CrewmemberId));
                var personStatusHistory = new PersonStatusHistory();
                personStatusHistory.PersonId = crew.CrewmemberId;
                personStatusHistory.FirstName = crew.PersonalDetail.FirstName;
                personStatusHistory.MiddleName = crew.PersonalDetail.MiddleName;
                personStatusHistory.LastName = crew.PersonalDetail.LastName;
                personStatusHistory.Gender = crew.PersonalDetail.Gender;
                personStatusHistory.Age = crew.PersonalDetail.Age ?? 0;
                personStatusHistory.LastEvent = item != null ? item.Status : crew.LastEvent;
                personStatusHistory.LastDateTime = item != null ? item.StatusChangedDate : crew.LastDateTime;
                personStatusHistory.PersonTypeId = CommonConstants.CrewmemberTypeId;
                personStatusHistory.Stateroom = crew.Stateroom;

                personsStatusHistory.Items.Add(personStatusHistory);
            }
        }
        /// <summary>
        /// Maps the guest information.
        /// </summary>
        /// <param name="guests">The guests.</param>
        /// <param name="personsStatusHistory">The persons status history.</param>
        /// <param name="personStatusList">The person status list.</param>
        private static void MapGuestInformation(GuestCollection guests, ListResult<PersonStatusHistory> personsStatusHistory, List<PersonStatus> personStatusList)
        {
            foreach (var guest in guests)
            {
                var item = personStatusList.FirstOrDefault(a => a.PersonId.ToString(CultureInfo.CurrentCulture).Equals(guest.GuestId));
                var personStatusHistory = new PersonStatusHistory();
                personStatusHistory.PersonId = guest.GuestId;
                personStatusHistory.FirstName = guest.PersonalDetail.FirstName;
                personStatusHistory.MiddleName = guest.PersonalDetail.MiddleName;
                personStatusHistory.LastName = guest.PersonalDetail.LastName;
                personStatusHistory.Gender = guest.PersonalDetail.Gender;
                personStatusHistory.Age = guest.PersonalDetail.Age ?? 0;
                personStatusHistory.LastEvent = item != null ? item.Status : guest.LastEvent;
                personStatusHistory.LastDateTime = item != null ? item.StatusChangedDate : guest.LastDateTime;
                personStatusHistory.PersonTypeId = CommonConstants.GuestTypeId;
                personStatusHistory.ReservationNumber = guest.CruiseDetail.ReservationNumber;
                personStatusHistory.Stateroom = guest.CruiseDetail.Stateroom;

                personsStatusHistory.Items.Add(personStatusHistory);
            }
        }
        /// <summary>
        /// Function to add the selected person to create new party.
        /// </summary>
        /// <param name="selectedHistory">The selected history.</param>
        private void LoadPartyDetail(PersonStatusHistory selectedHistory)
        {
            if (selectedHistory != null && !string.IsNullOrEmpty(selectedHistory.PersonTypeId))
            {
                Messenger.Instance.Notify(MessengerMessage.ShowSpinWheel, true);
                string searchText;
                SearchType searchType;
                if (selectedHistory.PersonTypeId.Equals(CommonConstants.GuestTypeId))
                {
                    searchText = selectedHistory.ReservationNumber;
                    searchType = SearchType.Reservation;
                }
                else if (!string.IsNullOrEmpty(selectedHistory.PersonTypeId) && selectedHistory.PersonTypeId.Equals(CommonConstants.CrewmemberTypeId))
                {
                    searchText = selectedHistory.PersonId;
                    searchType = SearchType.PersonId;
                }
                else
                {
                    searchText = selectedHistory.PersonId;
                    searchType = SearchType.PersonId;
                }

                var personType = GetPersonTypeByPersonTypeId(selectedHistory.PersonTypeId);

                ObservableManager.RunObservable(() => this.RetrieveSearchPerson(searchText, searchType, personType, selectedHistory.PersonId), null, () => { Messenger.Instance.Notify(MessengerMessage.ShowSpinWheel, false); });
            }
        }
        /// <summary>
        /// Maps the visitor information.
        /// </summary>
        /// <param name="visitors">The visitors.</param>
        /// <param name="personsStatusHistory">The persons status history.</param>
        /// <param name="personStatusList">The person status list.</param>
        private static void MapVisitorInformation(VisitorCollection visitors, ListResult<PersonStatusHistory> personsStatusHistory, List<PersonStatus> personStatusList)
        {
            foreach (var visitor in visitors)
            {
                var item = personStatusList.FirstOrDefault(a => a.PersonId.ToString(CultureInfo.CurrentCulture).Equals(visitor.VisitorId));
                var personStatusHistory = new PersonStatusHistory();
                personStatusHistory.PersonId = visitor.VisitorId;
                personStatusHistory.FirstName = visitor.PersonalDetail.FirstName;
                personStatusHistory.MiddleName = visitor.PersonalDetail.MiddleName;
                personStatusHistory.LastName = visitor.PersonalDetail.LastName;
                personStatusHistory.Gender = visitor.PersonalDetail.Gender;
                personStatusHistory.Age = visitor.PersonalDetail.Age ?? 0;
                personStatusHistory.LastEvent = item != null ? item.Status : visitor.LastEvent;
                ////personStatusHistory.LastDateTime = item != null ? item.StatusChangedDate : visitor.LastDateTime;
                personStatusHistory.PersonTypeId = CommonConstants.VisitorTypeId;

                personsStatusHistory.Items.Add(personStatusHistory);
            }
        }
Beispiel #5
0
 /// <summary>
 /// Maps the crew information.
 /// </summary>
 /// <param name="crews">The crews.</param>
 /// <param name="staterooms">The staterooms.</param>
 /// <param name="item">The item.</param>
 /// <param name="personStatusHistory">The person status history.</param>
 /// <param name="crewTypePerson">The crew type person.</param>
 private static void MapCrewInformation(ListResult<Crewmember> crews, ListResult<Entity.Stateroom> staterooms, DashboardStatistics item, PersonStatusHistory personStatusHistory, PersonTypeEntity crewTypePerson)
 {
     var value = crews.Items.FirstOrDefault(a => a.CrewmemberId.Equals(item.PersonId));
     if (value != null)
     {
         personStatusHistory.PersonId = value.CrewmemberId;
         personStatusHistory.FirstName = value.PersonalDetail.FirstName;
         personStatusHistory.MiddleName = value.PersonalDetail.MiddleName;
         personStatusHistory.LastName = value.PersonalDetail.LastName;
         personStatusHistory.Gender = value.PersonalDetail.Gender == "1" ? "M" : value.PersonalDetail.Gender == "2" ? "F" : value.PersonalDetail.Gender;
         personStatusHistory.Age = value.PersonalDetail.Age.HasValue ? value.PersonalDetail.Age.Value : 0;
         personStatusHistory.LastEvent = item.Status;
         personStatusHistory.LastDateTime = item.StatusChangedDate;
         personStatusHistory.PersonTypeId = crewTypePerson.PersonTypeId;
         var stateroom = value.StateroomId != null && staterooms.Items != null ? staterooms.Items.FirstOrDefault(a => a.StateroomId == value.StateroomId) : null;
         personStatusHistory.Stateroom = stateroom != null ? stateroom.StateroomNumber : null;
     }
 }
        /// <summary>
        /// Retrieves the last event.
        /// </summary>
        /// <param name="statusType">Type of the status.</param>
        /// <param name="personStatus">The person status.</param>
        /// <returns>
        /// Last Event Type.
        /// </returns>
        private static string RetrieveLastEvent(string statusType, PersonStatusHistory personStatus)
        {
            switch (statusType)
            {
                case Onboard:
                    return Onboard;

                case Ashore:
                    return Ashore;

                case CheckedIn:
                    return !string.IsNullOrEmpty(personStatus.PersonTypeId) && personStatus.PersonTypeId.Equals(CommonConstants.CrewmemberTypeId) ? personStatus.LastEvent : CheckedInText;

                case ExpectedToday:
                    return !string.IsNullOrEmpty(personStatus.PersonTypeId) && personStatus.PersonTypeId.Equals(CommonConstants.CrewmemberTypeId) ? personStatus.LastEvent : ExpectedTodayText;

                default:
                    return string.Empty;
            }
        }
Beispiel #7
0
        /// <summary>
        /// Maps the person information.
        /// </summary>
        /// <param name="personTypeList">The person type list.</param>
        /// <param name="crews">The crews.</param>
        /// <param name="staterooms">The staterooms.</param>
        /// <param name="item">The item.</param>
        /// <returns>
        /// Return instance of person status history
        /// </returns>
        private static PersonStatusHistory MapPersonInformation(ListResult<PersonTypeEntity> personTypeList, ListResult<Crewmember> crews, ListResult<Entity.Stateroom> staterooms, DashboardStatistics item)
        {
            var personStatusHistory = new PersonStatusHistory();
            var crewTypePerson = personTypeList.Items.FirstOrDefault(personType => personType.Name.Equals(CrewType, StringComparison.OrdinalIgnoreCase));

            if (crewTypePerson != null && crews != null)
            {
                MapCrewInformation(crews, staterooms, item, personStatusHistory, crewTypePerson);
            }

            return personStatusHistory;
        }
Beispiel #8
0
        /// <summary>
        /// Maps the person information.
        /// </summary>
        /// <param name="personTypeList">The person type list.</param>
        /// <param name="guests">The guests.</param>
        /// <param name="staterooms">The staterooms.</param>
        /// <param name="item">The item.</param>
        /// <returns>
        /// Return instance of person status history
        /// </returns>
        private static PersonStatusHistory MapPersonInformation(ListResult<PersonTypeEntity> personTypeList, ListResult<Guest> guests, ListResult<Entity.Stateroom> staterooms, DashboardStatistics item)
        {
            var personStatusHistory = new PersonStatusHistory();
            var guestTypePerson = personTypeList.Items.FirstOrDefault(personType => personType.Name.Equals(GuestType, StringComparison.OrdinalIgnoreCase));

            if (guestTypePerson != null && guests != null)
            {
                MapGuestInformation(guests, staterooms, item, personStatusHistory, guestTypePerson);
            }

            return personStatusHistory;
        }
        /// <summary>
        /// Maps the person information.
        /// </summary>
        /// <param name="personTypeList">The person type list.</param>
        /// <param name="guests">The guests.</param>
        /// <param name="crews">The crews.</param>
        /// <param name="visitors">The visitors.</param>
        /// <param name="staterooms">The staterooms.</param>
        /// <param name="item">The item.</param>
        /// <returns>
        /// Return instance of person status history
        /// </returns>
        internal static PersonStatusHistory MapPersonInformation(ListResult<PersonTypeEntity> personTypeList, ListResult<Guest> guests, ListResult<Crewmember> crews, ListResult<Visitor> visitors, ListResult<DataAccess.Entities.Stateroom> staterooms, DataAccess.Entities.DashboardStatistics item)
        {
            var personStatusHistory = new PersonStatusHistory();
            var guestTypePerson = personTypeList.Items.FirstOrDefault(personType => personType.Name.Equals(GuestType, StringComparison.OrdinalIgnoreCase));
            var crewTypePerson = personTypeList.Items.FirstOrDefault(personType => personType.Name.Equals(CrewType, StringComparison.OrdinalIgnoreCase));
            var visitorTypePerson = personTypeList.Items.FirstOrDefault(personType => personType.Name.Equals(VisitorType, StringComparison.OrdinalIgnoreCase));

            if (guestTypePerson != null && guests != null)
            {
                MapGuestInformation(guests, staterooms, item, personStatusHistory, guestTypePerson);
            }

            if (crewTypePerson != null && crews != null)
            {
                MapCrewInformation(crews, staterooms, item, personStatusHistory, crewTypePerson);
            }

            if (visitorTypePerson != null && visitors != null)
            {
                MapVisitorInformation(visitors, item, personStatusHistory, visitorTypePerson);
            }

            return personStatusHistory;
        }
 /// <summary>
 /// Maps the guest information.
 /// </summary>
 /// <param name="guests">The guests.</param>
 /// <param name="staterooms">The staterooms.</param>
 /// <param name="item">The item.</param>
 /// <param name="personStatusHistory">The person status history.</param>
 /// <param name="guestTypePerson">The guest type person.</param>
 private static void MapGuestInformation(ListResult<Guest> guests, ListResult<DataAccess.Entities.Stateroom> staterooms, DataAccess.Entities.DashboardStatistics item, PersonStatusHistory personStatusHistory, PersonTypeEntity guestTypePerson)
 {
     var value = guests.Items.FirstOrDefault(a => a.GuestId.Equals(item.PersonId));
     if (value != null)
     {
         personStatusHistory.PersonId = value.GuestId;
         personStatusHistory.FirstName = value.PersonalDetail.FirstName;
         personStatusHistory.MiddleName = value.PersonalDetail.MiddleName;
         personStatusHistory.LastName = value.PersonalDetail.LastName;
         personStatusHistory.Gender = value.PersonalDetail.Gender;
         personStatusHistory.Age = value.PersonalDetail.Age ?? 0;
         personStatusHistory.LastEvent = item.Status;
         personStatusHistory.LastDateTime = item.StatusChangedDate;
         personStatusHistory.PersonTypeId = guestTypePerson.PersonTypeId;
         personStatusHistory.ReservationNumber = value.CruiseDetail.ReservationNumber;
         var stateroom = value.CruiseDetail.Stateroom != null && staterooms.Items != null ? staterooms.Items.FirstOrDefault(a => a.StateroomId == value.CruiseDetail.Stateroom) : null;
         personStatusHistory.Stateroom = stateroom != null ? stateroom.StateroomNumber : null;
     }
 }
 /// <summary>
 /// Maps the visitor information.
 /// </summary>
 /// <param name="visitors">The visitors.</param>
 /// <param name="item">The item.</param>
 /// <param name="personStatusHistory">The person status history.</param>
 /// <param name="visitorTypePerson">The visitor type person.</param>
 private static void MapVisitorInformation(ListResult<Visitor> visitors, DataAccess.Entities.DashboardStatistics item, PersonStatusHistory personStatusHistory, PersonTypeEntity visitorTypePerson)
 {
     var value = visitors.Items.FirstOrDefault(a => a.VisitorId.Equals(item.PersonId));
     if (value != null)
     {
         personStatusHistory.PersonId = value.VisitorId;
         personStatusHistory.FirstName = value.PersonalDetail.FirstName;
         personStatusHistory.MiddleName = value.PersonalDetail.MiddleName;
         personStatusHistory.LastName = value.PersonalDetail.LastName;
         personStatusHistory.Gender = value.PersonalDetail.Gender;
         personStatusHistory.Age = value.PersonalDetail.Age ?? 0;
         personStatusHistory.LastEvent = item.Status;
         personStatusHistory.LastDateTime = item.StatusChangedDate;
         personStatusHistory.PersonTypeId = visitorTypePerson.PersonTypeId;
     }
 }