| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- package pl.sudra.domain;
- import jakarta.persistence.*;
- import jakarta.validation.constraints.Email;
- import jakarta.validation.constraints.NotBlank;
- import jakarta.validation.constraints.NotNull;
- import jakarta.validation.constraints.Size;
- import java.util.Collection;
- import java.util.HashSet;
- import java.util.List;
- import java.util.Set;
- import java.util.stream.Collectors;
- @Entity
- @Table(name = "user")
- public class User {
- @Id
- @GeneratedValue(strategy = GenerationType.AUTO)
- private Long id;
- @Column(unique = true)
- @NotNull
- @NotBlank(message = "Username is required")
- @Size(message = "Username must be between 5 and 20 characters", min = 5, max = 20)
- private String username;
- // @JsonIgnore
- @NotNull
- @NotBlank(message = "Password is required")
- private String password;
- @Column(unique = true)
- @NotNull
- @NotBlank(message = "Email is required")
- @Email(regexp = "^[A-Za-z0-9+_.-]+@[A-Za-z0-9.-]+$", message = "Invalid email address")
- private String email;
- // @NotNull
- // @ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
- private String role;
- @NotNull
- private boolean enabled = false;
- public void setRole(String role) {
- this.role = role;
- }
- public boolean isEnabled() {
- return enabled;
- }
- public void setEnabled(boolean enabled) {
- this.enabled = enabled;
- }
- // @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "user")
- // private List<Reservation> reservations;
- // public void setReservations(Collection<Reservation> reservations) {
- // this.reservations = (List<Reservation>) reservations;
- // }
- @Override
- public String toString() {
- return "User{" +
- "id=" + id +
- ", username='" + username + '\'' +
- ", password='" + password + '\'' +
- ", email='" + email + '\'' +
- ", role=" + role +
- // ", reservations=" + reservations +
- '}';
- }
- public String getRolesForToken() {
- return role;
- }
- public User() {
- }
- // public User(Long id, String username, String password, String email, String role) {
- // this.id = id;
- // this.username = username;
- // this.password = password;
- // this.email = email;
- // this.role = role;
- // }
- public Long getId() {
- return id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this.username = username;
- }
- public String getEmail() {
- return email;
- }
- public void setEmail(String email) {
- this.email = email;
- }
- public String getRole() {
- return role;
- }
- // public void setRole(String role) {
- // this.role = role;
- // }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- // public List<Reservation> getReservations() {
- // return reservations;
- // }
- // public void setReservations(List<Reservation> reservations) {
- // this.reservations = reservations;
- // }
- }
|