source: source/freeparkingspace/src/main/java/com/proekt/Controller/RegisterEmployee.java@ 31d67c0

Last change on this file since 31d67c0 was 31d67c0, checked in by zlatko2810 <zlatko.stojanovski@…>, 22 months ago

proekt

  • Property mode set to 100644
File size: 4.8 KB
Line 
1package com.proekt.Controller;
2
3
4import com.proekt.model.Kontroler.Kontroler;
5import com.proekt.model.Kontroler.KontrolerKey;
6import com.proekt.Repository.AdministratorRepository;
7import com.proekt.Repository.KontrolerRepository;
8import com.proekt.Repository.NajavaRepository;
9import com.proekt.Repository.VrabotenRepository1;
10import com.proekt.model.Admin.AdminKey;
11import com.proekt.model.Admin.Administrator;
12import com.proekt.model.Najava;
13import com.proekt.model.Vraboten.Vraboten;
14import com.proekt.model.Vraboten.VrabotenKey;
15import org.springframework.stereotype.Controller;
16import org.springframework.ui.Model;
17import org.springframework.web.bind.annotation.*;
18
19import java.util.List;
20
21@Controller
22@RequestMapping("/register-employee")
23public class RegisterEmployee {
24
25 private final NajavaRepository najavaRepository;
26 private final AdministratorRepository administratorRepository;
27 private final VrabotenRepository1 vrabotenRepository;
28 private final KontrolerRepository kontrolerRepository;
29
30 public RegisterEmployee(NajavaRepository najavaRepository, AdministratorRepository administratorRepository, VrabotenRepository1 vrabotenRepository, KontrolerRepository kontrolerRepository) {
31 this.najavaRepository = najavaRepository;
32 this.administratorRepository = administratorRepository;
33 this.vrabotenRepository = vrabotenRepository;
34 this.kontrolerRepository = kontrolerRepository;
35 }
36
37
38 @GetMapping
39 public String getRegisterPage(@RequestParam(required = false) String error, Model model) {
40 if(error != null && !error.isEmpty()) {
41 model.addAttribute("hasError", true);
42 model.addAttribute("error", error);
43 }
44 model.addAttribute("bodyContent","registerEmployee");
45 return "master-template";
46 }
47
48 @PostMapping
49 public String register(@RequestParam String korisnicko_ime,
50 @RequestParam String ime,
51 @RequestParam String prezime,
52 @RequestParam String embg,
53 @RequestParam String email,
54 @RequestParam String br_tel,
55 @RequestParam String password,
56 @RequestParam String user_role
57 ) {
58
59 String admin = "ROLE_ADMIN";
60 String controller = "ROLE_CONTROLLER";
61
62
63
64 if(user_role.equals(admin)){
65 Najava najava = new Najava();
66 najava.setKorisnickoIme(korisnicko_ime);
67 najava.setIme(ime);
68 najava.setPrezime(prezime);
69 najava.setEmbg(embg);
70 najava.setEmail(email);
71 najava.setBrTel(br_tel);
72 najava.setPassword(password);
73 this.najavaRepository.save(najava);
74
75 Administrator admin2 = new Administrator();
76 AdminKey adminKey = new AdminKey(najava);
77 admin2.setAdminKey(adminKey);
78 List<Najava> administrators = najavaRepository.findAll();
79 int size = administrators.size() + 1;
80 admin2.setIdAdministrator(size);
81 this.administratorRepository.save(admin2);
82
83 Vraboten vraboten = new Vraboten();
84 VrabotenKey vrabotenKey = new VrabotenKey(najava);
85 vraboten.setVrabotenKey(vrabotenKey);
86 //vraboten.setIdVraboten(1337);
87 vraboten.setUloga("Administrator");
88 vraboten.setIdVraboten(size);
89 this.vrabotenRepository.save(vraboten);
90 return "redirect:/success";
91 }else if(user_role.equals(controller)){
92
93 Najava najava = new Najava();
94 najava.setKorisnickoIme(korisnicko_ime);
95 najava.setIme(ime);
96 najava.setPrezime(prezime);
97 najava.setEmbg(embg);
98 najava.setEmail(email);
99 najava.setBrTel(br_tel);
100 najava.setPassword(password);
101 this.najavaRepository.save(najava);
102
103 KontrolerKey kontrolerKey = new KontrolerKey(najava);
104 Kontroler kontroler = new Kontroler();
105 kontroler.setKontrolerKey(kontrolerKey);
106 List<Najava> administrators = najavaRepository.findAll();
107 int size = administrators.size() + 1;
108 kontroler.setId_kontroler(size);
109 this.kontrolerRepository.save(kontroler);
110
111 Vraboten vraboten = new Vraboten();
112 VrabotenKey vrabotenKey = new VrabotenKey(najava);
113 vraboten.setVrabotenKey(vrabotenKey);
114 //vraboten.setIdVraboten(1337);
115 vraboten.setUloga("Controller");
116 vraboten.setIdVraboten(size);
117 this.vrabotenRepository.save(vraboten);
118 return "redirect:/success";
119 }else{
120 return "redirect:/register-employee";
121 }
122 }
123
124}
Note: See TracBrowser for help on using the repository browser.