Index: src/main/java/it/finki/tinki/service/WorkService.java
===================================================================
--- src/main/java/it/finki/tinki/service/WorkService.java	(revision f067338250f079f3984e5fb2760b5bb372234918)
+++ src/main/java/it/finki/tinki/service/WorkService.java	(revision 17abe5eb95d30a27747b54273b41e7dbfc9e3c94)
@@ -17,12 +17,15 @@
     List<Internship> getAllInternshipsByAccount(Long accId);
     List<Project> getAllProjectsByAccount(Long accId);
-    List<Job> getAllJobs();
-    List<Internship> getAllInternships();
-    List<Project> getAllProjects();
     Job insertJob(String title, String description, Long accId, int salary, List<Long> skillsRequired, AccountType type);
     Internship insertInternship(String title, String description, Long adccId, int salary, List<Long> skillsTrained, int openSpots, AccountType type);
     Project insertProject(String title, String description, Long adccId, int salary, List<Long> skillsRequired, Date validUntil, AccountType type);
+    Job editJob(Long id, String title, String description, int salary);
+    Internship editInternship(Long id, String title, String description, int salary, int openSpots);
+    Project editProject(Long id, String title, String description, int salary);
     List<JobResponseDTO> fullTextJobSearch(String text);
     List<InternshipResponseDTO> fullTextInternshipSearch(String text);
     List<ProjectResponseDTO> fullTextProjectSearch(String text);
+    Job getJobById(Long id);
+    Internship getInternshipById(Long id);
+    Project getProjectById(Long id);
 }
Index: src/main/java/it/finki/tinki/service/impl/WorkServiceImpl.java
===================================================================
--- src/main/java/it/finki/tinki/service/impl/WorkServiceImpl.java	(revision f067338250f079f3984e5fb2760b5bb372234918)
+++ src/main/java/it/finki/tinki/service/impl/WorkServiceImpl.java	(revision 17abe5eb95d30a27747b54273b41e7dbfc9e3c94)
@@ -68,19 +68,4 @@
 
     @Override
-    public List<Job> getAllJobs() {
-        return this.jobRepository.findAll();
-    }
-
-    @Override
-    public List<Internship> getAllInternships() {
-        return this.internshipRepository.findAll();
-    }
-
-    @Override
-    public List<Project> getAllProjects() {
-        return this.projectRepository.findAll();
-    }
-
-    @Override
     public Job insertJob(String title, String description, Long adccId, int salary, List<Long> skillsRequired, AccountType type) {
         List<Skill> skills = this.skillService.returnSkillsBasedOnId(skillsRequired);
@@ -131,4 +116,37 @@
 
     @Override
+    public Job editJob(Long id, String title, String description, int salary) {
+        Job j = this.jobRepository.findById(id).get();
+
+        j.setTitle(title);
+        j.setDescription(description);
+        j.setSalary(salary);
+
+        return this.jobRepository.save(j);
+    }
+
+    @Override
+    public Internship editInternship(Long id, String title, String description, int salary, int openSpots) {
+        Internship j = this.internshipRepository.findById(id).get();
+
+        j.setTitle(title);
+        j.setDescription(description);
+        j.setSalary(salary);
+
+        return this.internshipRepository.save(j);
+    }
+
+    @Override
+    public Project editProject(Long id, String title, String description, int salary) {
+        Project j = this.projectRepository.findById(id).get();
+
+        j.setTitle(title);
+        j.setDescription(description);
+        j.setSalary(salary);
+
+        return this.projectRepository.save(j);
+    }
+
+    @Override
     public List<JobResponseDTO> fullTextJobSearch(String text) {
         List<Skill> skills = this.skillService.returnBasedOnText(text);
@@ -207,3 +225,18 @@
         return jobs2;
     }
+
+    @Override
+    public Job getJobById(Long id) {
+        return this.jobRepository.findById(id).get();
+    }
+
+    @Override
+    public Internship getInternshipById(Long id) {
+        return this.internshipRepository.findById(id).get();
+    }
+
+    @Override
+    public Project getProjectById(Long id) {
+        return this.projectRepository.findById(id).get();
+    }
 }
