package com.covas.Entity; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; import java.util.UUID; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.Table; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.CascadeType; import org.hibernate.annotations.ColumnDefault; import org.hibernate.annotations.GenericGenerator; import io.quarkus.hibernate.orm.panache.PanacheEntityBase; @Entity @Table(name = "message") @NamedQueries({ @NamedQuery(name = "Message.bySearch", query = "from MessageEntity u where u.content like :content"), }) public class MessageEntity extends PanacheEntityBase implements Serializable { @Id @Column(name = "id") @GeneratedValue(generator = "UUID") @GenericGenerator(name = "UUID", strategy = "org.hibernate.id.UUIDGenerator") public UUID id; @Column(columnDefinition="TEXT") public String content; @Column(nullable = false) public LocalDateTime created_at; @Column(nullable = false) public LocalDateTime updated_at; @ColumnDefault("null") public LocalDateTime deleted_at; public String conversation; @ColumnDefault("1") public Short status; @ManyToOne(cascade = CascadeType.ALL) @JoinColumn(name = "users_id", referencedColumnName = "id") public UsersEntity users; public static List findByUsers(String uuid){ return find("users_id", uuid).list(); } }