Spaces:
Sleeping
Sleeping
File size: 1,965 Bytes
03549e5 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
package com.cs102.attendance.entity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.persistence.*;
import java.time.LocalDate;
import java.time.LocalTime;
import java.util.List;
import java.util.ArrayList;
@jakarta.persistence.Entity
@Table(name = "sessions")
public class Session extends Entity {
@Column(nullable = false)
private String name;
@Column(nullable = false)
private LocalDate date;
@Column(name = "start_time", nullable = false)
private LocalTime startTime;
@Column(name = "end_time", nullable = false)
private LocalTime endTime;
@OneToMany(mappedBy = "session", cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JsonIgnore
private List<AttendanceRecord> attendanceRecords = new ArrayList<>();
// Constructors
public Session() {}
public Session(String name, LocalDate date, LocalTime startTime, LocalTime endTime) {
this.name = name;
this.date = date;
this.startTime = startTime;
this.endTime = endTime;
}
// Getters and Setters
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public LocalDate getDate() {
return date;
}
public void setDate(LocalDate date) {
this.date = date;
}
public LocalTime getStartTime() {
return startTime;
}
public void setStartTime(LocalTime startTime) {
this.startTime = startTime;
}
public LocalTime getEndTime() {
return endTime;
}
public void setEndTime(LocalTime endTime) {
this.endTime = endTime;
}
public List<AttendanceRecord> getAttendanceRecords() {
return attendanceRecords;
}
public void setAttendanceRecords(List<AttendanceRecord> attendanceRecords) {
this.attendanceRecords = attendanceRecords;
}
} |