File: /var/www/api-talleres.bradford/app/Models/Period.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Period extends Model
{
use HasFactory;
protected $table = 'periods';
protected $fillable = [
'period_year',
'period',
'start_date',
'end_date',
'status',
'finished',
'deleted',
'deleted_at',
'user_created',
'user_updated',
'user_deleted',
];
protected $hidden = [
'deleted',
'deleted_at',
'user_deleted'
];
public function enrollmentPeriods()
{
return $this->hasMany(EnrollmentPeriod::class, 'period_id')
->where('deleted', 0);
}
/**
* Talleres disponibles en este perĂodo con sus cupos.
*/
public function clubs()
{
return $this->belongsToMany(Club::class, 'club_period')
->withPivot(['max_capacity', 'current_enrollment', 'status', 'user_created', 'user_updated'])
->withTimestamps();
}
public function createdBy()
{
return $this->belongsTo(User::class, 'user_created');
}
public function updatedBy()
{
return $this->belongsTo(User::class, 'user_updated');
}
public function deletedBy()
{
return $this->belongsTo(User::class, 'user_deleted');
}
}