source: sources/app/src/main/java/parkup/controllers/AdministratorController.java@ 3a58bd6

Last change on this file since 3a58bd6 was ce6ad22, checked in by DavidTrajkovski <davidtrajkovski11@…>, 3 years ago

v1 initial prototype

  • Property mode set to 100644
File size: 2.4 KB
Line 
1package parkup.controllers;
2
3import java.util.List;
4import org.springframework.beans.factory.annotation.Autowired;
5import org.springframework.web.bind.annotation.*;
6import parkup.configs.RegistrationRequest;
7import parkup.configs.RegistrationService;
8import parkup.entities.Administrator;
9import parkup.services.AdministratorService;
10
11@RestController
12public class AdministratorController {
13 private final AdministratorService administratorService;
14 private final RegistrationService registrationService;
15
16 @Autowired
17 public AdministratorController(AdministratorService administratorService, RegistrationService registrationService) {
18 this.administratorService = administratorService;
19 this.registrationService = registrationService;
20 }
21
22 @GetMapping({"/administrator"})
23 public List<Administrator> getAllAdministrator() {
24 return this.administratorService.getAllAdministrators();
25 }
26
27 @GetMapping({"/administrator/{administratorId}"})
28 public Administrator getAdministrator(@PathVariable int administratorId) {
29 Administrator administrator = this.administratorService.findById(administratorId);
30 if (administrator != null) {
31 return administrator;
32 } else {
33 throw new RuntimeException("Administrator not found");
34 }
35 }
36
37 @PostMapping({"/administrator"})
38 public void addAdministrator(@RequestBody Administrator administrator) {
39 this.administratorService.addAdministrator(administrator);
40 }
41
42 @PutMapping({"/administrator/{administratorId}"})
43 public void updateAdministrator(@PathVariable int administratorId, @RequestBody Administrator administrator) {
44 this.administratorService.updateAdministrator(administratorId, administrator.getFirstName(), administrator.getLastName(), administrator.getMobile(), administrator.getEmail());
45 }
46
47 @DeleteMapping({"/administrator/{administratorId}"})
48 public void deleteAdministrator(@PathVariable int administratorId) {
49 this.administratorService.deleteAdministrator(administratorId);
50 }
51
52 @PostMapping({"/administrator/registration"})
53 public String register(@RequestBody RegistrationRequest request){
54 return registrationService.register(request);
55 }
56
57 @GetMapping(path = "/administrator/registration/confirm")
58 public String confirm(@RequestParam("token") String token) {
59 return registrationService.confirmToken(token);
60 }
61}
Note: See TracBrowser for help on using the repository browser.