public async Task<ActionResult> VisitorManifestReport(ReportPresenter presenter, string pageNumber)
        {
            presenter.VisitorManifestSearchParameter = SessionData.Instance.VisitorManifestSearchParameter != null && !string.IsNullOrEmpty(pageNumber) ? SessionData.Instance.VisitorManifestSearchParameter : presenter.VisitorManifestSearchParameter;

            if (presenter != null && presenter.VisitorManifestSearchParameter != null)
            {
                presenter.VisitorManifestSearchParameter.ClearanceStatus = presenter.VisitorManifestSearchParameter.ClearanceStatus == ZeroConst ? string.Empty : presenter.VisitorManifestSearchParameter.ClearanceStatus;
                presenter.VisitorManifestSearchParameter.PageNumber = (!string.IsNullOrEmpty(pageNumber) && !pageNumber.Equals(UndefinedConstant)) ? (Convert.ToInt32(pageNumber) > 0 ? Convert.ToInt32(pageNumber) / ApplicationSettings.MaxPageSize : 1) : 1;
                presenter.VisitorManifestSearchParameter.PageSize = SessionData.Instance.PagingNumberOfRecords;

                if (!string.IsNullOrEmpty(presenter.VisitorManifestSearchParameter.SearchName))
                {
                    if (presenter.VisitorManifestSearchParameter.SearchName.Contains(Comma))
                    {
                        var name = presenter.VisitorManifestSearchParameter.SearchName.Trim().Split(Comma);
                        presenter.VisitorManifestSearchParameter.LastName = name[0];
                        presenter.VisitorManifestSearchParameter.FirstName = name[1].Trim();
                    }
                    else
                    {
                        presenter.VisitorManifestSearchParameter.LastName = presenter.VisitorManifestSearchParameter.SearchName.Trim();
                    }
                }

                if (presenter.VisitorManifestSearchParameter.IsMovementActivity && !string.IsNullOrWhiteSpace(presenter.VisitorManifestSearchParameter.MovementActivityStartDate) && !string.IsNullOrWhiteSpace(presenter.VisitorManifestSearchParameter.MovementActivityEndDate))
                {
                    presenter.VisitorManifestSearchParameter.MovementActivityStartDate = Convert.ToDateTime(presenter.VisitorManifestSearchParameter.MovementActivityStartDate).ToString(this.ApplicationSettings.ShipDateTimeFormat, CultureInfo.InvariantCulture);
                    presenter.VisitorManifestSearchParameter.MovementActivityEndDate = Convert.ToDateTime(presenter.VisitorManifestSearchParameter.MovementActivityEndDate).ToString(this.ApplicationSettings.ShipDateTimeFormat, CultureInfo.InvariantCulture);
                }

                var visitorManifest = await this.reportManager.RetrieveVisitorManifestAsync(presenter.VisitorManifestSearchParameter);
                if (visitorManifest.Items.Count > 0)
                {
                    visitorManifest.AssignItems(visitorManifest.Items.Select(item => { item.MediaItemAddress = !string.IsNullOrEmpty(item.MediaItemAddress) ? item.MediaItemAddress + AuthConst + presenter.AuthenticationToken + ImageSizeConst + ThumbnailConst : DefaultThumbnailImage; return item; }).ToList());
                    presenter.AssignVisitorManifestSearchResult(visitorManifest);
                    presenter.TotalRecordCount = visitorManifest.TotalResults;
                    presenter.NoRecordFound = visitorManifest.Items.Count <= 0;
                }

                presenter.NoRecordFound = visitorManifest.Items.Count <= 0;
                SessionData.Instance.AssignVisitorData(presenter.VisitorManifestSearchParameter);
            }

            return this.PartialView(VisitorManifestPartialView, presenter);
        }
        /// <summary>
        /// Visitors the manifest report print.
        /// </summary>
        /// <returns>The Task</returns>
        public async Task<ActionResult> VisitorManifestReportPrint()
        {
            var reportPresenter = new ReportPresenter();

            var searchFilter = new VisitorManifestSearchParameter();
            searchFilter = SessionData.Instance.VisitorManifestSearchParameter;
            searchFilter.PageSize = 0;
            searchFilter.PageNumber = 1;
            var visitorManifest = await this.reportManager.RetrieveVisitorManifestAsync(searchFilter);

            if (visitorManifest != null && visitorManifest.Items.Count > 0)
            {
                var authenticationToken = await Client.Common.TokenManager.CreateAsync(new CancellationToken(false));
                visitorManifest.AssignItems(visitorManifest.Items.Select(item => { item.MediaItemAddress = !string.IsNullOrEmpty(item.MediaItemAddress) ? item.MediaItemAddress + AuthConst + authenticationToken + ImageSizeConst + ThumbnailConst : DefaultThumbnailImage; return item; }).ToList());
                reportPresenter.AssignVisitorManifestSearchResult(visitorManifest);
            }

            return this.View(VisitorManifestReportPrintView, reportPresenter);
        }