source: jobvista-backend/src/main/java/mk/ukim/finki/predmeti/internettehnologii/jobvistabackend/controllers/AuthController.java@ d8b6c91

main
Last change on this file since d8b6c91 was d8b6c91, checked in by 223021 <daniel.ilievski.2@…>, 7 weeks ago

Initial commit - implementirano registracija i logiranje so Spring Security i JSON Web Token-i vo backend-ot kako i navbar i formi za istoto vo frontend-ot

  • Property mode set to 100644
File size: 2.0 KB
Line 
1package mk.ukim.finki.predmeti.internettehnologii.jobvistabackend.controllers;
2
3import lombok.AllArgsConstructor;
4import mk.ukim.finki.predmeti.internettehnologii.jobvistabackend.models.users.DTO.*;
5import mk.ukim.finki.predmeti.internettehnologii.jobvistabackend.models.users.JobSeeker;
6import mk.ukim.finki.predmeti.internettehnologii.jobvistabackend.models.users.Recruiter;
7import mk.ukim.finki.predmeti.internettehnologii.jobvistabackend.models.users.mappers.JobSeekerMapper;
8import mk.ukim.finki.predmeti.internettehnologii.jobvistabackend.models.users.mappers.RecruiterMapper;
9import mk.ukim.finki.predmeti.internettehnologii.jobvistabackend.service.intef.AuthService;
10import org.springframework.http.HttpStatus;
11import org.springframework.http.ResponseEntity;
12import org.springframework.web.bind.annotation.*;
13
14@CrossOrigin(origins = "*")
15@RestController
16@RequestMapping("/api/auth")
17@AllArgsConstructor
18public class AuthController {
19
20 private final AuthService authenticationService;
21
22 @PostMapping("/signup/job-seeker")
23 public ResponseEntity<?> signUpJobSeeker(@RequestBody JobSeekerDTO jobSeekerDTO) {
24 JobSeeker jobSeeker = JobSeekerMapper.mapToJobSeeker(jobSeekerDTO);
25 authenticationService.signUpJobSeeker(jobSeeker);
26 return new ResponseEntity<>(jobSeeker, HttpStatus.CREATED);
27 }
28
29 @PostMapping("/signup/recruiter")
30 public ResponseEntity<?> signUpRecruiter(@RequestBody RecruiterDTO recruiterDTO) {
31 Recruiter recruiter = RecruiterMapper.mapToRecruiter(recruiterDTO);
32 authenticationService.signUpRecruiter(recruiter);
33 return new ResponseEntity<>(recruiter, HttpStatus.CREATED);
34 }
35
36 @PostMapping("/signin")
37 public ResponseEntity<JwtAuthResponse> signIn(@RequestBody SignInDTO signInDTO) {
38 return ResponseEntity.ok(authenticationService.signIn(signInDTO));
39 }
40 @PostMapping("/refresh")
41 public ResponseEntity<JwtAuthResponse> refresh(@RequestBody RefreshTokenRequest refreshTokenRequest) {
42 return ResponseEntity.ok(authenticationService.refreshToken(refreshTokenRequest));
43 }
44}
Note: See TracBrowser for help on using the repository browser.