public void SendRequestToProject(string username, int projectId) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var user = db.Users.Include(x => x.RequestedProjects).FirstOrDefault(x => x.UserName == username); var project = db.Projects.Include(x => x.ReceivedRequests).FirstOrDefault(x => x.Id == projectId); if (user != null && project != null) { var userRequest = new RequestedProjectRequest() { AccountId = user.Id, ProjectId = projectId }; var projectRequest = new ReceivedProjectRequest() { ProjectId = projectId, AccountId = user.Id }; user.RequestedProjects.Add(userRequest); project.ReceivedRequests.Add(projectRequest); db.SaveChanges(); } } }
public void AcceptProject(int projectId, string username) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var user = db.Users.Include(x => x.ReceivedProjectRequests).FirstOrDefault(x => x.UserName == username); var project = db.Projects.Include(x => x.RequestedDevelopers).FirstOrDefault(x => x.Id == projectId); if (user != null && project != null) { var userRequest = user.ReceivedProjectRequests .FirstOrDefault(x => x.ProjectId == projectId && x.Account.UserName == username); var projectRequest = project.RequestedDevelopers .FirstOrDefault(x => x.ProjectId == projectId && x.Account.UserName == username); user.ReceivedProjectRequests.Remove(userRequest); project.RequestedDevelopers.Remove(projectRequest); user.AcceptedProjects.Add(new AcceptedProjectRequest() { AccountId = userRequest.AccountId, ProjectId = userRequest.ProjectId }); project.AcceptedDevelopers.Add(new AcceptedProjectRequest() { AccountId = projectRequest.AccountId, ProjectId = projectRequest.ProjectId }); db.SaveChanges(); } } }
public void AcceptUser(int projectId, string username) { var project = new Project(); var user = new ApplicationUser(); using (EducationSystemDbContext db = new EducationSystemDbContext()) { project = db.Projects.Include(p => p.ReceivedRequests) .FirstOrDefault(p => p.Id == projectId); user = db.Users.Include(u => u.RequestedProjects) .FirstOrDefault(u => u.UserName == username); if (project != null) { var receivedRequest = project.ReceivedRequests.Where(u => u.Account != null). FirstOrDefault(u => u.Account.UserName == username); var receivedRequestForDelete = db.Entry(receivedRequest); receivedRequestForDelete.State = EntityState.Deleted; var requestedProject = user.RequestedProjects. FirstOrDefault(u => u.ProjectId == projectId); var requestedProjectForDelete = db.Entry(requestedProject); requestedProjectForDelete.State = EntityState.Deleted; user.AcceptedProjects.Add(new AcceptedProjectRequest { AccountId = requestedProject.AccountId, ProjectId = requestedProject.ProjectId }); db.SaveChanges(); } } }
public Project GetById(int id) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var project = db.Projects.FirstOrDefault(p => p.Id == id); return(project); } }
public ICollection <Project> GetByName(string name) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var project = db.Projects.Where(p => p.Name.Contains(name)).ToList(); return(project); } }
public string GetIdByUsername(string username) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var user = db.Users.FirstOrDefault(x => x.UserName == username); return(user.Id); } }
public ApplicationUser GetByUsername(string Username) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var user = db.Users.FirstOrDefault(x => x.UserName == Username); return(user); } }
public Feedback GetById(int id) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var feedback = db.Feedbacks.FirstOrDefault(p => p.Id == id); return(feedback); } }
public ICollection <Project> GetOpenedProjects() { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var projects = db.Projects.Where(p => p.StartDate == null).ToList(); return(projects); } }
public ICollection <Feedback> GetByUser(string userName) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var feedbacks = db.Feedbacks.Include(f => f.User) .Where(p => p.User.UserName == userName) .ToList(); return(feedbacks); } }
public ICollection <Feedback> GetByProject(int projectId) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var feedbacks = db.Projects.Include(p => p.Feedbacks) .Where(p => p.Id == projectId) .FirstOrDefault() .Feedbacks.ToList(); return(feedbacks); } }
public ICollection <Project> GetAllAcceptedByUser(string username) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var requestedProjects = db.AcceptedProjectRequests .Where(ap => ap.Account.UserName == username).Include(ap => ap.Project) .Select(ap => ap.Project) .ToList(); return(requestedProjects); } }
public void Create(CreateProjectDTO projectDto) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var userId = db.Users.FirstOrDefault(u => u.Email == projectDto.UserEmail).Id; var project = GenerateModel(userId, projectDto); db.Projects.Add(project); db.SaveChanges(); } }
public ICollection <Project> GetProjectsInProgress() { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var projects = db.Projects .Where(p => p.StartDate != null && p.EndDate == null) .ToList(); return(projects); } }
public ICollection <Project> GetAllCreatedByUser(string username) { var projects = new List <Project>(); using (EducationSystemDbContext db = new EducationSystemDbContext()) { projects = db.Projects.Include(p => p.ProductOwner) .Where(p => p.ProductOwner.UserName == username).ToList(); } return(projects); }
public ICollection <ApplicationUser> GetAllUsersBySkill(int skillType, double minumRank = 2) { var usersWithSkill = new List <ApplicationUser>(); using (EducationSystemDbContext db = new EducationSystemDbContext()) { usersWithSkill = db.Users.Where(u => u.Skills.Any(s => s.Type == (SkillType)skillType)).ToList(); } List <ApplicationUser> targetUsers = GetUsersWithMatchingRank(skillType, minumRank, usersWithSkill); return(targetUsers); }
public ICollection <Project> GetBySkillTypes(List <int> skillIds) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var projects = db.Projects.Include(p => p.SkillsNeeded) .Where(p => p.SkillsNeeded .Any(s => skillIds.Contains(Convert.ToInt32(s.Type)))) .ToList(); return(projects); } }
public ICollection <Project> GetAllNotOwnedByUser(string email) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { if (String.IsNullOrEmpty(email)) { return(db.Projects.Include(p => p.ProductOwner).ToList()); } var projects = db.Projects.Where(p => p.ProductOwner.Email != email).ToList(); return(projects); } }
public ICollection <ApplicationUser> GetRequestedDevelopers(int projectId) { var project = new Project(); using (EducationSystemDbContext db = new EducationSystemDbContext()) { project = db.Projects.Include(p => p.RequestedDevelopers).FirstOrDefault(p => p.Id == projectId); } var participants = project.RequestedDevelopers?.Select(d => d.Account).ToList(); return(participants); }
public void AddSkill(SkillDto skillDto) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var user = db.Users.Include(x => x.Skills).FirstOrDefault(x => x.UserName == skillDto.UserName); var skill = new Skill() { Type = skillDto.GetSkillType() }; user.Skills.Add(skill); db.SaveChanges(); } }
public void RateUserByItsProject(int projectId, string username, int rate, string comment) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var user = db.Users.FirstOrDefault(x => x.UserName == username); var feedback = new Feedback() { UserId = user.Id, Comment = comment, Rating = (FeedbackRating)rate }; var project = db.Projects.Include(x => x.Feedbacks).FirstOrDefault(x => x.Id == projectId); project.Feedbacks.Add(feedback); } }
public void Edit(ProjectFilter filter) { using (EducationSystemDbContext db = new EducationSystemDbContext()) { var project = db.Projects.FirstOrDefault(p => p.Id == filter.Id); project.Name = filter.Name; project.GitHubUrl = filter.GitHubUrl; project.StartDate = filter.StartDate; project.EndDate = filter.EndDate; project.Description = filter.Description; project.Requirements = filter.Requirements; project.IsTeamFormed = filter.StartDate != null ? true : false; project.Resources = filter.Resources; project.SkillsNeeded = filter.SkillsNeeded; db.SaveChanges(); } }
public FeedbackService() { ctx = new EducationSystemDbContext(); }
public CategoryService(EducationSystemDbContext db) { this.db = db; }
public ProjectService() { ctx = new EducationSystemDbContext(); }
public UserService() { ctx = new EducationSystemDbContext(); }