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
RevLine 
[b101b69]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
[bde8b13]17@Inheritance(strategy = InheritanceType.JOINED)
[b101b69]18public class Korisnik implements UserDetails {
19 @GeneratedValue(strategy = GenerationType.IDENTITY)
20 @Id
21 @Column(name = "k_id")
22 private Long kId;
[bde8b13]23
[b101b69]24 @Basic
25 @Column(name = "k_ime")
26 private String kIme;
[bde8b13]27
[b101b69]28 @Basic
29 @Column(name = "k_adresa")
30 private String kAdresa;
[bde8b13]31
[b101b69]32 @Basic
33 @Column(name = "k_telefon")
34 private String kTelefon;
[bde8b13]35
[b101b69]36 @Basic
37 @Column(name = "k_email")
38 private String kEmail;
[bde8b13]39
[b101b69]40 @Basic
41 @Column(name = "k_embg")
42 private String kEmbg;
[bde8b13]43
[b101b69]44 @Basic
45 @Column(name = "k_is_admin")
46 private Boolean kIsAdmin;
[bde8b13]47
[b101b69]48 @Basic
49 @Column(name = "k_lozinka")
50 private String kLozinka;
[bde8b13]51
[8b875e6]52 @Basic
53 @Column(name = "k_role")
54 @Enumerated(EnumType.STRING)
55 private Role kRole;
56
[bde8b13]57// @OneToMany(mappedBy = "korisnikByPatnikKId")
58// private List<Bilet> biletsByKId;
[b101b69]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() {
[8b875e6]67 return Collections.singletonList(kRole);
[b101b69]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.