49 lines
1.1 KiB
Java
49 lines
1.1 KiB
Java
package com.example.nto.entity;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonBackReference;
|
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
|
import jakarta.persistence.*;
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.Builder;
|
|
import lombok.Data;
|
|
import lombok.NoArgsConstructor;
|
|
|
|
import java.time.LocalDate;
|
|
|
|
|
|
/**
|
|
* TODO: ДОРАБОТАТЬ в рамках задания
|
|
* =================================
|
|
* МОЖНО: Добавлять методы, аннотации, зависимости
|
|
* НЕЛЬЗЯ: Изменять название класса и пакета
|
|
*/
|
|
@Data
|
|
@Builder
|
|
@NoArgsConstructor
|
|
@AllArgsConstructor
|
|
@Entity
|
|
public class Booking {
|
|
@Id
|
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
|
private long id;
|
|
|
|
private LocalDate date;
|
|
|
|
@ManyToOne(targetEntity = Place.class, fetch = FetchType.LAZY)
|
|
@JoinColumn(name = "place_id")
|
|
private Place place;
|
|
|
|
@ManyToOne(fetch = FetchType.LAZY)
|
|
@JoinColumn(name = "employee_id")
|
|
@JsonBackReference
|
|
private Employee employee;
|
|
|
|
|
|
|
|
@Data
|
|
public static class AvailablePlaceDto {
|
|
private long id;
|
|
private String place;
|
|
}
|
|
}
|