Index: src/main/java/it/finki/tinki/web/controller/LoginController.java
===================================================================
--- src/main/java/it/finki/tinki/web/controller/LoginController.java	(revision 723994f8a33ce7a2bae5dc0b1def9351e7a32141)
+++ src/main/java/it/finki/tinki/web/controller/LoginController.java	(revision 509cb956bf2b3a456ea102e01dac170e0d7c6879)
@@ -2,13 +2,13 @@
 
 import it.finki.tinki.model.Users.Account;
+import it.finki.tinki.model.Users.Company;
 import it.finki.tinki.model.Users.Team;
 import it.finki.tinki.model.Users.User;
-import it.finki.tinki.model.dto.AccountLoginDTO;
-import it.finki.tinki.model.dto.AuthResponseDTO;
-import it.finki.tinki.model.dto.LoginResponseDTO;
-import it.finki.tinki.model.dto.UserResponseDTO;
+import it.finki.tinki.model.dto.*;
 import it.finki.tinki.model.enumerator.AccountType;
 import it.finki.tinki.service.AccountService;
 import it.finki.tinki.service.MatchmakerService;
+import it.finki.tinki.service.WorkService;
+import org.apache.coyote.Response;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.server.ResponseStatusException;
@@ -23,8 +23,10 @@
     AccountService accountService;
     MatchmakerService matchmakerService;
+    WorkService workService;
 
-    public LoginController(AccountService accountService, MatchmakerService matchmakerService) {
+    public LoginController(AccountService accountService, MatchmakerService matchmakerService, WorkService workService) {
         this.accountService = accountService;
         this.matchmakerService = matchmakerService;
+        this.workService = workService;
     }
 
@@ -35,8 +37,11 @@
 
         Account a1 = accountService.findUser(body.getEmail(), body.getPassword(), body.getType());
+
         if(a1!=null){
             if(a1.getClass().equals(User.class)){
 
                 UserResponseDTO uDto = new UserResponseDTO();
+
+                uDto.setError(null);
 
                 uDto.setId(a1.getId());
@@ -54,12 +59,43 @@
 
                 return uDto;
+
             }else if(a1.getClass().equals(Team.class)){
 
+                TeamResponseDTO tDto = new TeamResponseDTO();
+
+                tDto.setError(null);
+
+                tDto.setId(a1.getId());
+                tDto.setEmail(a1.getEmail());
+                tDto.setName(a1.getName());
+                tDto.setType(AccountType.USER);
+                tDto.setMembers(((Team) a1).getMembers());
+
+                tDto.setJobs(this.workService.getAllJobsByAccount(a1.getId()));
+                tDto.setProjects(this.workService.getAllProjectsByAccount(a1.getId()));
+
+                return tDto;
+
             }else{
+
+                CompanyResponseDTO cDto = new CompanyResponseDTO();
+
+                cDto.setError(null);
+
+                cDto.setId(a1.getId());
+                cDto.setEmail(a1.getEmail());
+                cDto.setName(a1.getName());
+                cDto.setType(AccountType.USER);
+                cDto.setAddress(((Company) a1).getAddress());
+
+                cDto.setJobs(this.workService.getAllJobsByAccount(a1.getId()));
+                cDto.setInternships(this.workService.getAllInternshipsByAccount(a1.getId()));
+
+                return cDto;
 
             }
         }
 
-        return null;
+        return new LoginResponseDTO();
     }
 
Index: src/main/java/it/finki/tinki/web/controller/RegisterController.java
===================================================================
--- src/main/java/it/finki/tinki/web/controller/RegisterController.java	(revision 723994f8a33ce7a2bae5dc0b1def9351e7a32141)
+++ src/main/java/it/finki/tinki/web/controller/RegisterController.java	(revision 509cb956bf2b3a456ea102e01dac170e0d7c6879)
@@ -1,8 +1,15 @@
 package it.finki.tinki.web.controller;
 
+import it.finki.tinki.helper.Matchmaker;
+import it.finki.tinki.model.Jobs.Internship;
+import it.finki.tinki.model.Jobs.Job;
+import it.finki.tinki.model.Jobs.Project;
 import it.finki.tinki.model.Skill;
 import it.finki.tinki.model.Users.Account;
+import it.finki.tinki.model.Users.User;
 import it.finki.tinki.service.AccountService;
+import it.finki.tinki.service.MatchmakerService;
 import it.finki.tinki.service.SkillService;
+import it.finki.tinki.service.WorkService;
 import org.springframework.web.bind.annotation.*;
 
@@ -18,17 +25,21 @@
     AccountService accountService;
     SkillService skillService;
+    WorkService workService;
+    MatchmakerService matchmakerService;
 
-    public RegisterController(AccountService accountService, SkillService skillService) {
+    public RegisterController(AccountService accountService, SkillService skillService, WorkService workService, MatchmakerService matchmakerService) {
         this.accountService = accountService;
         this.skillService = skillService;
+        this.workService = workService;
+        this.matchmakerService = matchmakerService;
     }
 
     @RequestMapping(path = "/user", method = RequestMethod.POST)
     private Map<String, String> registerUser(@RequestParam String email,
-                                                @RequestParam String password,
-                                                @RequestParam String name,
-                                                @RequestParam String surname,
-                                                @RequestParam List<Integer> retainedSkills,
-                                                @RequestParam List<Integer> skillsToLearn){
+                                             @RequestParam String password,
+                                             @RequestParam String name,
+                                             @RequestParam String surname,
+                                             @RequestParam List<Integer> retainedSkills,
+                                             @RequestParam List<Integer> skillsToLearn){
 
         List<Skill> retained = this.skillService.returnSkillsBasedOnId(retainedSkills);
@@ -39,7 +50,23 @@
         Map<String, String> response = new HashMap<>();
 
-        if(k!=null){
+        if(k==null){
             response.put("error", "There was an error when trying to register user.");
         }else{
+            List<Job> jobs = this.workService.getAllJobs();
+            List<Project> projects = this.workService.getAllProjects();
+            List<Internship> internships = this.workService.getAllInternships();
+
+            jobs.forEach(job -> {
+                this.matchmakerService.setUpUserJobMatches(job, (User) k);
+            });
+
+            projects.forEach(project -> {
+                this.matchmakerService.setUpUserProjectMatches(project, (User) k);
+            });
+
+            internships.forEach(internship -> {
+                this.matchmakerService.setUpUserInternshipMatches(internship, (User) k);
+            });
+
             response.put("success", "Registration completed successfully.");
         }
@@ -58,5 +85,5 @@
         Map<String, String> response = new HashMap<>();
 
-        if(k!=null){
+        if(k==null){
             response.put("error", "There was an error when trying to register team.");
         }else{
@@ -79,5 +106,5 @@
         Map<String, String> response = new HashMap<>();
 
-        if(k!=null){
+        if(k==null){
             response.put("error", "There was an error when trying to register company.");
         }else{
