package nl.connectedit.swiss.domain.entity; import jakarta.persistence.*; import lombok.Getter; import lombok.RequiredArgsConstructor; import lombok.Setter; import nl.connectedit.swiss.domain.EventType; import nl.connectedit.swiss.domain.Status; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @Entity @Table @Getter @Setter @RequiredArgsConstructor public class Match extends AbstractEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private EventType type; private Status status; @ManyToOne private Round round; @ManyToOne private Team team1; @ManyToOne private Team team2; private Boolean played; private Long court; @ManyToOne private Player counter; @OneToMany(cascade = CascadeType.MERGE, fetch = FetchType.LAZY) private List games; private LocalDateTime startTime; private LocalDateTime endTime; }