//GET : /api/UserProfile public async Task <Object> GetApplications() { string userId = User.Claims.First(c => c.Type == "UserID").Value; var user = await _userManager.FindByIdAsync(userId); var UserApplicationContext = _dataContext.Set <UserApplications>(); var ApplicationRedirectUrisContext = _dataContext.Set <ApplicationRedirectUris>(); var ApplicationScopesContext = _dataContext.Set <ApplicationScopes>(); var model = new UserApplicationViewModel(); model.UserId = user.Id; model.UserName = user.UserName; var applicationList = await UserApplicationContext.Where(x => x.UserId == user.Id).ToListAsync(); model.Applications = applicationList.Select(x => new ApplicationModel { Id = x.Id, ClientId = x.ClientId, Secret = x.Secret, Name = x.ApplicationName, RedirectUris = ApplicationRedirectUrisContext.Where(y => y.ApplicationId == x.Id).Select(y => new RedirectUriModel { Id = y.Id, RedirectUri = y.RedirectUri }).ToList(), Scopes = ApplicationScopesContext.Where(y => y.ApplicationId == x.Id).Select(y => new ScopeModel { Id = y.Id, Scope = y.Scope }).ToList(), }).ToList(); return(model); }
public ActionResult JobApplicant(int id, int appid) { if (Session["UserId"] != null) { using (JobStoreContext db = new JobStoreContext()) { int UserId = Convert.ToInt32(Session["UserId"]); User user = new User(); user = db.Users.Where(x => x.UserId == id).FirstOrDefault(); Application app = new Application(); app = db.Applications.Where(e => e.ApplicationId == appid && e.Job.JobCreator.UserId == UserId && e.User.UserId == user.UserId).FirstOrDefault(); UserApplicationViewModel viewmodel = new UserApplicationViewModel() { Applicant = user, Application = app }; if (app == null) { return(RedirectToAction("Index")); } else { return(View(viewmodel)); } } } else { return(RedirectToAction("Login")); } }
public ActionResult Applicants(int id) { if (Session["UserId"] != null) { using (JobStoreContext db = new JobStoreContext()) { Job job = db.Jobs.Where(c => c.JobId == id).FirstOrDefault(); List <Application> applications = new List <Application>(); applications = db.Applications.Where(a => a.Job.JobId == job.JobId && a.Status == "Pending").ToList(); List <User> applicants = new List <User>(); List <UserApplicationViewModel> viewmodel = new List <UserApplicationViewModel>(); UserApplicationViewModel entry = new UserApplicationViewModel(); applications.ForEach(x => { entry.Application = x; entry.Applicant = x.User; viewmodel.Add(entry); }); return(View(viewmodel)); } } else { return(RedirectToAction("Login")); } }