package de.oaa.xxx.location.entity;

import jakarta.persistence.*;
import lombok.Getter;
import lombok.Setter;

import java.util.UUID;

@Getter
@Setter
@Entity
@Table(name = "location_opening_hours",
        uniqueConstraints = @UniqueConstraint(columnNames = {"location_id", "day_of_week"}))
public class LocationOpeningHoursEntity {

    @Id
    @Column
    private UUID hoursId;

    @Column(nullable = false, name = "location_id")
    private UUID locationId;

    /**
     * Wochentag: 1 = Montag, 2 = Dienstag, ..., 7 = Sonntag
     */
    @Column(nullable = false, name = "day_of_week")
    private int dayOfWeek;

    /** Öffnungszeit als "HH:mm"-String, null = kein Eintrag */
    @Column(length = 5)
    private String openTime;

    /** Schließzeit als "HH:mm"-String, null = kein Eintrag */
    @Column(length = 5)
    private String closeTime;

    /** true = an diesem Tag geschlossen */
    @Column(nullable = false, columnDefinition = "TINYINT(1) DEFAULT 0")
    private boolean closed = false;
}
