package gr.cite.notification.data; import gr.cite.notification.common.enums.IsActive; import gr.cite.notification.common.enums.NotificationContactType; import gr.cite.notification.data.conventers.IsActiveConverter; import gr.cite.notification.data.conventers.NotificationContactTypeConverter; import gr.cite.notification.data.tenant.TenantScopedBaseEntity; import jakarta.persistence.*; import java.time.Instant; import java.util.UUID; @Entity @Table(name = "\"UserNotificationPreference\"") public class UserNotificationPreferenceEntity extends TenantScopedBaseEntity { @Id @Column(name = "id", columnDefinition = "uuid", updatable = false, nullable = false) private UUID id; public static final String _id = "id"; @Column(name = "user", columnDefinition = "uuid", nullable = false) private UUID userId; public static final String _userId = "userId"; @Column(name = "type", columnDefinition = "uuid", nullable = false) private UUID type; public static final String _type = "type"; @Column(name = "channel", nullable = false) @Convert(converter = NotificationContactTypeConverter.class) private NotificationContactType channel; public static final String _channel = "channel"; @Column(name = "ordinal", nullable = false) private Integer ordinal; public static final String _ordinal = "ordinal"; @Column(name = "created_at", nullable = false) private Instant createdAt; public static final String _createdAt = "createdAt"; @Column(name = "updated_at", nullable = false) private Instant updatedAt; public static final String _updatedAt = "updatedAt"; @Column(name = "\"is_active\"", nullable = false) @Convert(converter = IsActiveConverter.class) private IsActive isActive; public static final String _isActive = "isActive"; public UUID getId() { return id; } public void setId(UUID id) { this.id = id; } public UUID getUserId() { return userId; } public void setUserId(UUID userId) { this.userId = userId; } public UUID getType() { return type; } public void setType(UUID type) { this.type = type; } public NotificationContactType getChannel() { return channel; } public void setChannel(NotificationContactType channel) { this.channel = channel; } public Integer getOrdinal() { return ordinal; } public void setOrdinal(Integer ordinal) { this.ordinal = ordinal; } public Instant getCreatedAt() { return createdAt; } public void setCreatedAt(Instant createdAt) { this.createdAt = createdAt; } public Instant getUpdatedAt() { return updatedAt; } public void setUpdatedAt(Instant updatedAt) { this.updatedAt = updatedAt; } public IsActive getIsActive() { return isActive; } public void setIsActive(IsActive isActive) { this.isActive = isActive; } }