public ProgramResponse(ProfileCompletedViewModel programView) : this(true, string.Empty, programView) { }
public async Task <ProfileCompletedViewModel> GetProfileCompletedDetailsAsync(int profileId) { var programViewDetails = new ProfileCompletedViewModel(); var userInfo = await _appDbContext.UserInfos.Include(k => k.User).FirstOrDefaultAsync(k => k.UserId == profileId); var profile = await _appDbContext.Profiles.FirstOrDefaultAsync(k => k.Id == profileId).ConfigureAwait(false); var profileEducation = await _appDbContext.ProfileEducations.Where(k => k.ProfileId == profileId).ToListAsync(); var profileWorkExperiences = await _appDbContext.ProfileWorkExperiences.Where(k => k.ProfileId == profileId).ToListAsync(); var profileAchievements = await _appDbContext.ProfileAchievements.Where(k => k.ProfileId == profileId).ToListAsync(); var profileTrainings = await _appDbContext.ProfileTrainings.Where(k => k.ProfileId == profileId).ToListAsync(); var profileAssessmentToolScores = await _appDbContext.ProfileAssessmentToolScores.Where(k => k.ProfileId == profileId).ToListAsync(); var profileMemberships = await _appDbContext.ProfileMemberships.Where(k => k.ProfileId == profileId).ToListAsync(); var applications = await _appDbContext.Applications.Where(k => k.ProfileId == profileId).ToListAsync(); programViewDetails.Education = profileEducation.Count; programViewDetails.Achievements = profileAchievements.Count; programViewDetails.WorkExperiences = profileWorkExperiences.Count; // programViewDetails.Membership = profile.ProfileMemberships.Count; programViewDetails.Trainings = profileTrainings.Count; if (profile.LastEducationCertificateFileId.HasValue && profile.UaeidfileId.HasValue && profile.CvfileId.HasValue && profile.PassportFileId.HasValue && profile.FamilyBookFileId.HasValue) { programViewDetails.IsAllDocumentUploaded = true; } if (profile.FirstNameEn != null && profile.SecondNameEn != null && profile.ThirdNameEn != null && profile.LastNameEn != null && profile.FirstNameAr != null && profile.SecondNameAr != null && profile.ThirdNameAr != null && profile.LastNameAr != null && profile.ResidenceCountryId.HasValue && profile.Address != null && profile.PassportNumber != null && profile.PassportIssueEmirateItemId.HasValue && profile.BirthDate.HasValue && userInfo.Mobile != null && profile.Eid != null && userInfo.User.OriginalImageFileId.HasValue) { programViewDetails.IsCandidateInfoCompleted = true; } programViewDetails.IsAssessmentCompleted = true; var profileToolScore = profileAssessmentToolScores.ToList(); var personalityAssessment = await _appDbContext.AssessmentTools.FirstOrDefaultAsync(ass => ass.AssessmentToolCategory == (int)AssessmentToolCategory.Personality); if (personalityAssessment != null) { var isCompleted = profileToolScore.OrderByDescending(k => k.Order).FirstOrDefault()?.IsCompleted ?? false; if (!isCompleted) { programViewDetails.IsAssessmentCompleted = false; } } var eQAssessment = await _appDbContext.AssessmentTools.FirstOrDefaultAsync(ass => ass.AssessmentToolCategory == (int)AssessmentToolCategory.EQ); if (eQAssessment != null) { var isCompleted = profileToolScore.OrderByDescending(k => k.Order).FirstOrDefault()?.IsCompleted ?? false; if (!isCompleted) { programViewDetails.IsAssessmentCompleted = false; } } var wellBeingAssessment = await _appDbContext.AssessmentTools.FirstOrDefaultAsync(ass => ass.AssessmentToolCategory == (int)AssessmentToolCategory.Wellbeing); if (wellBeingAssessment != null) { var isCompleted = profileToolScore.OrderByDescending(k => k.Order).FirstOrDefault()?.IsCompleted ?? false; if (!isCompleted) { programViewDetails.IsAssessmentCompleted = false; } } programViewDetails.ProfileCompletedPercentage = profile.CompletenessPercentage; return(programViewDetails); }
private ProgramResponse(bool success, string message, ProfileCompletedViewModel programView) : base(success, message) { ProfileCompletedView = programView; }