Initial commit

This commit is contained in:
Richard Jolley committed 2026-01-14 00:54:08 +00:00
commit c909d539bc
7178 files changed
+756624

No files matched your search

+56
View File
@@ -0,0 +1,56 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasOne;
class LessonAttendance extends Model
{
protected $fillable = [
'teaching_arrangement_id',
'student_teacher_subject_id',
'scheduled_start',
'scheduled_end',
'actual_start',
'actual_end',
'week_of_year',
'status',
'billable',
'payable',
'notes',
];
/**
* The scheduled arrangement this attendance record belongs to.
*/
public function arrangement(): BelongsTo
{
return $this->belongsTo(TeachingArrangement::class, 'teaching_arrangement_id');
}
/**
* The student–teacher–subject relationship for this attendance.
*/
public function studentTeacherSubject(): BelongsTo
{
return $this->belongsTo(StudentTeacherSubject::class, 'student_teacher_subject_id');
}
/**
* Invoice item generated from this attendance (if billed).
*/
public function invoiceItem(): HasOne
{
return $this->hasOne(InvoiceItem::class, 'attendance_id');
}
/**
* Teacher pay record generated from this attendance (if payable).
*/
public function payItem(): HasOne
{
return $this->hasOne(TeacherPayItem::class, 'attendance_id');
}
}