package com.android.trisolarisserver.models.property import jakarta.persistence.* import java.time.OffsetDateTime import java.util.* @Entity @Table(name = "organization") class Organization { @Id @GeneratedValue @Column(columnDefinition = "uuid") val id: UUID? = null @Column(nullable = false) var name: String? = null @ElementCollection(fetch = FetchType.EAGER) @CollectionTable( name = "org_email_alias", joinColumns = [JoinColumn(name = "org_id")] ) @Column(name = "email", nullable = false) var emailAliases: MutableSet = mutableSetOf() @ElementCollection(fetch = FetchType.EAGER) @CollectionTable( name = "org_transport_mode", joinColumns = [JoinColumn(name = "org_id")] ) @Column(name = "mode", nullable = false) @Enumerated(EnumType.STRING) var allowedTransportModes: MutableSet = mutableSetOf() @Column(name = "created_at", nullable = false, columnDefinition = "timestamptz") val createdAt: OffsetDateTime = OffsetDateTime.now() }