Пример #1
0
        public override async Task InitializeAsync(object navigationData)
        {
            var pop = await _dialogService.OpenLoadingPopup();

            JobNoFoundIsVisible        = false;
            AssessmentNoFoundIsVisible = false;

            JObject objcontactVacancies = await _candidateJobService.GetCandidateJobApplied();

            ContactTemplateFilter filter = new ContactTemplateFilter
            {
                CurrentPage = 1,
                PageSize    = 100,
                IsOpen      = true
            };
            Dictionary <string, object> objAssessments = await _candidateJobService.GetAssessment(filter);

            if (objcontactVacancies["candidateJobsApplied"] != null)
            {
                _contactVacanciesList = JsonConvert.DeserializeObject <List <ContactVacancy> >(objcontactVacancies["candidateJobsApplied"].ToString());
            }


            CompleteAssessement = new List <ContactTemplate>();
            NeedDoAssessement   = new List <ContactTemplate>();

            List <ContactTemplate> complete = new List <ContactTemplate>();
            List <ContactTemplate> needdo   = new List <ContactTemplate>();

            if (objAssessments["templates"] != null)
            {
                List <ContactTemplate> Assessments = JsonConvert.DeserializeObject <List <ContactTemplate> >(objAssessments["templates"].ToString());
                foreach (var assessment in Assessments)
                {
                    if (assessment.IsCompleted)
                    {
                        complete.Add(assessment);
                    }
                    else
                    {
                        needdo.Add(assessment);
                    }
                }
            }

            _completeAssessemntList.AddRange(complete);
            _needDoAssessemntList.AddRange(needdo);

            CompleteAssessement = complete;
            NeedDoAssessement   = needdo;

            //Populate JobGroup
            List <ContactVacancyGroup> groups = new List <ContactVacancyGroup>();

            foreach (var vacancy in _contactVacanciesList)
            {
                var statusName = vacancy.StatusName;
                if (groups.Any(r => r.StatusName == statusName))
                {
                    groups.Single(r => r.StatusName == statusName).Add(vacancy);
                }
                else
                {
                    groups.Add(new ContactVacancyGroup(statusName)
                    {
                        vacancy
                    });
                }
            }
            JobGroups = groups;

            JobListViewHeightRequest        = _contactVacanciesList.Count * 120 + JobGroups.Count * 38;
            NeedActionListViewHeightRequest = _needDoAssessemntList.Count * 90 + 38;
            CompleteListViewHeightRequest   = _completeAssessemntList.Count * 90 + 38;

            CandidateMainViewModel.Current.IsJobPageRendered = true;
            await _dialogService.CloseLoadingPopup(pop);
        }
Пример #2
0
        public async Task <dynamic> GetAssessment(ContactTemplateFilter filter)
        {
            var result = await _requestService.postDataFromServiceAuthority("api/CandidateJob/GetAssessment", filter);

            return(result);
        }