source: src/main/java/mk/ukim/finki/busngo/model/entities/Korisnik.java@ 8b875e6

Last change on this file since 8b875e6 was 8b875e6, checked in by ppaunovski <paunovskipavel@…>, 2 months ago

Added roles to Users and some minor changes

  • Property mode set to 100644
File size: 2.9 KB
Line 
1package mk.ukim.finki.busngo.model.entities;
2
3import jakarta.persistence.*;
4import lombok.Data;
5import mk.ukim.finki.busngo.model.enums.Role;
6import org.springframework.security.core.GrantedAuthority;
7import org.springframework.security.core.userdetails.UserDetails;
8
9
10import java.util.Collection;
11import java.util.Collections;
12import java.util.List;
13import java.util.Objects;
14
15@Data
16@Entity
17@Inheritance(strategy = InheritanceType.JOINED)
18public class Korisnik implements UserDetails {
19 @GeneratedValue(strategy = GenerationType.IDENTITY)
20 @Id
21 @Column(name = "k_id")
22 private Long kId;
23
24 @Basic
25 @Column(name = "k_ime")
26 private String kIme;
27
28 @Basic
29 @Column(name = "k_adresa")
30 private String kAdresa;
31
32 @Basic
33 @Column(name = "k_telefon")
34 private String kTelefon;
35
36 @Basic
37 @Column(name = "k_email")
38 private String kEmail;
39
40 @Basic
41 @Column(name = "k_embg")
42 private String kEmbg;
43
44 @Basic
45 @Column(name = "k_is_admin")
46 private Boolean kIsAdmin;
47
48 @Basic
49 @Column(name = "k_lozinka")
50 private String kLozinka;
51
52 @Basic
53 @Column(name = "k_role")
54 @Enumerated(EnumType.STRING)
55 private Role kRole;
56
57// @OneToMany(mappedBy = "korisnikByPatnikKId")
58// private List<Bilet> biletsByKId;
59// private boolean isAccountNonExpired = true;
60// private boolean isAccountNonLocked = true;
61// private boolean isCredentialsNonExpired = true;
62// private boolean isEnabled = true;
63
64
65 @Override
66 public Collection<? extends GrantedAuthority> getAuthorities() {
67 return Collections.singletonList(kRole);
68 }
69
70 @Override
71 public String getPassword() {
72 return kLozinka;
73 }
74
75 @Override
76 public String getUsername() {
77 return kEmail;
78 }
79
80 @Override
81 public boolean isAccountNonExpired() {
82 return true;
83 }
84
85 @Override
86 public boolean isAccountNonLocked() {
87 return true;
88 }
89
90 @Override
91 public boolean isCredentialsNonExpired() {
92 return true;
93 }
94
95 @Override
96 public boolean isEnabled() {
97 return true;
98 }
99
100
101// @OneToMany(mappedBy = "korisnikByVozacKId")
102// private List<Instancanalinija> instancanalinijasByKId;
103// @OneToMany(mappedBy = "korisnikByKondukterKId")
104// private List<Kazna> kaznasByKId;
105// @OneToMany(mappedBy = "korisnikByPatnikKId")
106// private List<Kaznazaregistriran> kaznazaregistriransByKId;
107// @OneToOne(mappedBy = "korisnikByKId")
108// private Kondukter kondukterByKId;
109// @OneToMany(mappedBy = "korisnikByKondukterKId")
110// private List<Kontroli> kontrolisByKId;
111// @OneToOne(mappedBy = "korisnikByKId")
112// private Patnik patnikByKId;
113// @OneToOne(mappedBy = "korisnikByKId")
114// private Vozac vozacByKId;
115// @OneToMany(mappedBy = "korisnikByPatnikKId")
116// private List<Vozenje> vozenjesByKId;
117// @OneToOne(mappedBy = "korisnikByKId")
118// private Vraboten vrabotenByKId;
119}
Note: See TracBrowser for help on using the repository browser.