package com.finki.icare.model; import com.fasterxml.jackson.annotation.JsonIgnore; import jakarta.persistence.*; import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import java.util.List; @Entity @Table(name = "patient") @Data @NoArgsConstructor @AllArgsConstructor @EqualsAndHashCode(callSuper = true) @PrimaryKeyJoinColumn(name = "id_user") public class Patient extends User { @ManyToOne @JoinColumn(name = "id_therapist") private Therapist therapist; @JsonIgnore @OneToMany(mappedBy = "patient", cascade = CascadeType.ALL) private List blogs; @JsonIgnore @OneToMany(mappedBy = "patient", cascade = CascadeType.ALL) private List comments; @JsonIgnore @OneToMany(mappedBy = "patient", cascade = CascadeType.ALL) private List diaries; @JsonIgnore @OneToMany(mappedBy = "patient", cascade = CascadeType.ALL) private List consultations; @JsonIgnore @ManyToMany @JoinTable( name = "patient_likes_blog", joinColumns = @JoinColumn(name = "id_patient"), inverseJoinColumns = @JoinColumn(name = "id_blog") ) private List likedBlogs; }