/// <summary> /// Maps the visitor information. /// </summary> /// <param name="visitor">The visitor.</param> /// <param name="personTypeEntity">The person type entity.</param> /// <returns> /// Instance of Visitor /// </returns> internal static PersonStatusHistory MapVisitorInformation(Visitor visitor, PersonTypeEntity personTypeEntity) { return new PersonStatusHistory { PersonId = visitor.VisitorId, FirstName = visitor.PersonalDetail.FirstName, MiddleName = visitor.PersonalDetail.MiddleName, LastName = visitor.PersonalDetail.LastName, Gender = visitor.PersonalDetail.Gender, Age = visitor.PersonalDetail.Age ?? 0, PersonTypeId = personTypeEntity.PersonTypeId }; }
/// <summary> /// Setups the data for person type list. /// </summary> private void SetupDataForPersonTypeList() { var personTypeList = new ListResult<PersonTypeEntity>(); var personTypeEntity = new PersonTypeEntity { Name = "Crew", PersonTypeId = "1" }; var personTypeEntity1 = new PersonTypeEntity { Name = "Guest", PersonTypeId = "2" }; var personTypeEntity2 = new PersonTypeEntity { Name = "Visitor", PersonTypeId = "3" }; personTypeList.Items.Add(personTypeEntity); personTypeList.Items.Add(personTypeEntity1); personTypeList.Items.Add(personTypeEntity2); this.referenceDataRepository.Setup(a => a.RetrievePersonTypeListAsync()).Returns(Task.FromResult(personTypeList)); }
private void SetupReferenceData() { var countries = new Country { CountryId = "1", Name = "USA", Code = "USA" }; var states = new State { StateId = "2", CountryId = "1", Name = "Florida" }; var ports = new Port { PortId = "1", City = "Florida", Name = "Miami", State = "Florida", StateId = "2", CountryId = "1" }; var brands = new Brand { BrandId = "1", Name = "Carnival" }; var personTypes = new PersonTypeEntity { PersonTypeId = "1001", Name = "Daniel" }; var loyaltyLevelTypes = new LoyaltyLevelType { LoyaltyLevelTypeId = "1001", Name = "abc", BrandId = "1", NoOfCruiseNights = 3, LogoImageAddress = "abc" }; var documentType = new DocumentType { CountryId = "232", Code = "USA", DocumentTypeId = "1", Name = "Passport" }; var brand = new BrandCollection(); var country = new CountryCollection(); country.Add(countries); var state = new StateCollection(); state.Add(states); var documentTypes = new DocumentTypeCollection(); documentTypes.Add(documentType); var port = new PortCollection(); port.Add(ports); var personTypeEntity = new PersonTypeEntityCollection(); personTypeEntity.Add(personTypes); var loyaltyLevelType = new LoyaltyLevelTypeCollection(); loyaltyLevelType.Add(loyaltyLevelTypes); this.referenceData.AssignBrands(brand); this.referenceData.AssignCountries(country); this.referenceData.AssignStates(state); this.referenceData.AssignDocumentTypes(documentTypes); this.referenceData.AssignLoyaltyLevelTypes(loyaltyLevelType); this.referenceData.AssignPersonTypes(personTypeEntity); this.referenceData.AssignPorts(port); }
/// <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> /// Setups the manager. /// </summary> private void SetupData() { var countries = new Country { CountryId = "1", Name = "USA", SourceCode = "USA", CountryFlagAddress = "http://localhost" }; var states = new State { StateId = "2", CountryId = "1", Name = "Florida" }; var ports = new Port { PortId = "1", City = "Florida", Name = "Miami", State = "Florida", StateId = "2", CountryId = "1" }; var brands = new Brand { BrandId = "5", Name = "Carnival", MediaItemAddress = "http://localhost" }; var personTypes = new PersonTypeEntity { PersonTypeId = "1001", Name = "Daniel" }; var loyaltyLevelTypes = new LoyaltyLevelType { LoyaltyLevelTypeId = "1001", Name = "abc", BrandId = "1", NoOfCruiseNights = 3, LogoImageAddress = "ABC" }; var documentType = new DocumentType { CountryId = "231", Code = "USA", DocumentTypeId = "1", Name = "Passport" }; var brand = new ListResult<Brand>(); brand.Items.Add(brands); var country = new ListResult<Country>(); country.Items.Add(countries); var state = new ListResult<State>(); state.Items.Add(states); var port = new ListResult<Port>(); port.Items.Add(ports); var personTypeEntity = new ListResult<PersonTypeEntity>(); personTypeEntity.Items.Add(personTypes); var loyaltyLevelType = new ListResult<LoyaltyLevelType>(); loyaltyLevelType.Items.Add(loyaltyLevelTypes); var documentTypes = new ListResult<DocumentType>(); documentTypes.Items.Add(documentType); this.referenceDataRepository.Setup(data => data.RetrieveBrandListAsync()).Returns(Task.FromResult(brand)); this.referenceDataRepository.Setup(data => data.RetrieveCountryListAsync(It.IsAny<string>(), It.IsAny<string>())).Returns(Task.FromResult(country)); this.referenceDataRepository.Setup(data => data.RetrieveLoyaltyLevelTypeListAsync()).Returns(Task.FromResult(loyaltyLevelType)); this.referenceDataRepository.Setup(data => data.RetrievePersonTypeListAsync()).Returns(Task.FromResult(personTypeEntity)); this.referenceDataRepository.Setup(data => data.RetrievePortListAsync()).Returns(Task.FromResult(port)); this.referenceDataRepository.Setup(data => data.RetrieveStateListAsync()).Returns(Task.FromResult(state)); this.referenceDataRepository.Setup(data => data.RetrieveDocumentTypeListAsync()).Returns(Task.FromResult(documentTypes)); }
/// <summary> /// Retrieves the expected today visitors. /// </summary> /// <param name="searchParameters">The search parameters.</param> /// <param name="list">The list.</param> /// <param name="personTypeEntity">The person type entity.</param> /// <returns> /// Return visitor list /// </returns> private static async Task<ListResult<Visitor>> RetrieveExpectedTodayVisitors(PersonStatusHistorySearchParameters searchParameters, ListResult<PersonStatusHistory> list, PersonTypeEntity personTypeEntity) { var visitors = await DIContainer.Instance.Resolve<IPersonRepository>().RetrieveVisitor(new PersonSearchParameter { StartDate = searchParameters.StatsDate, MaxResults = searchParameters.MaxResults, Parts = VisitorParts }); if (visitors != null && visitors.Items.Count > 0) { foreach (var visitor in visitors.Items) { list.Items.Add(EmbarkationStatisticsMapper.MapVisitorInformation(visitor, personTypeEntity)); } } list.TotalResults = list.Items.Count; return visitors; }
/// <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; } }
/// <summary> /// Maps the person types. /// </summary> /// <param name="dataReader">The data reader.</param> /// <returns>Person types.</returns> private static async Task<PersonTypeEntityCollection> MapPersonTypes(SqlDataReader dataReader) { var personTypeEntityCollection = new PersonTypeEntityCollection(); if (dataReader != null) { while (await dataReader.ReadAsync()) { var personTypeEntity = new PersonTypeEntity { PersonTypeId = dataReader.Int32Field(PersonTypeId).ToString(), Name = dataReader.StringField(Name) }; personTypeEntityCollection.Add(personTypeEntity); } } return personTypeEntityCollection; }