$installments * @property string|null $early_payment_discount * @property string|null $interest_rate * @property string|null $payment_method * @property string|null $file_url * @property string|null $file_type * @property \Illuminate\Support\Carbon|null $enrollment_due_date * @property string|null $package_value * @property int|null $package_installments * @property \Illuminate\Support\Carbon|null $package_due_date * @property-read \App\Models\ClassPackageUnit|null $classPackageUnit * @property-read int|null $installments_count * @property-read \Illuminate\Database\Eloquent\Collection $medias * @property-read int|null $medias_count * @property-read \App\Models\Student $student * @property-read \App\Models\Unit $unit * @method static \Illuminate\Database\Eloquent\Builder|StudentContract newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder|StudentContract newQuery() * @method static \Illuminate\Database\Eloquent\Builder|StudentContract onlyTrashed() * @method static \Illuminate\Database\Eloquent\Builder|StudentContract query() * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereClassPackageUnitId($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereClassQuantity($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereDeletedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereEarlyPaymentDiscount($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereEndDate($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereEndTime($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereEnrollmentDueDate($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereFileType($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereFileUrl($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereFineCancelled($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereId($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereInstallments($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereInterestRate($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereNotes($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract wherePackageDueDate($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract wherePackageInstallments($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract wherePackageValue($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract wherePaymentMethod($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereProtocol($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereRecurringDay($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereSecondEndTime($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereSecondStartTime($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereSecondWeekday($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereSignatureDate($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereStartTime($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereStatus($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereStudentId($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereTaxRegister($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereUnitId($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract whereWeekday($value) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract withTrashed(bool $withTrashed = true) * @method static \Illuminate\Database\Eloquent\Builder|StudentContract withoutTrashed() * @mixin \Eloquent */ class StudentContract extends Model { use HasFactory, SoftDeletes; protected $table = 'student_contracts'; protected $guarded = ['id']; protected $casts = [ 'signature_date' => 'date:Y-m-d', 'end_date' => 'date:Y-m-d', 'enrollment_due_date' => 'date:Y-m-d', 'package_due_date' => 'date:Y-m-d', 'created_at' => 'datetime', 'updated_at' => 'datetime', ]; public function student(): BelongsTo { return $this->belongsTo(Student::class); } public function unit(): BelongsTo { return $this->belongsTo(Unit::class); } public function classPackageUnit(): BelongsTo { return $this->belongsTo(ClassPackageUnit::class); } public function medias(): HasMany { return $this->hasMany(StudentMedia::class); } public function installments(): HasMany { return $this->hasMany(StudentContractInstallment::class); } }