File: /var/www/ivs.kaunokolegija.lt/laravel/app/Models/Alumny.php
<?php
namespace App\Models;
use App\Traits\Auditable;
use Carbon\Carbon;
use DateTimeInterface;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Alumny extends Model
{
use SoftDeletes, Auditable, HasFactory;
public $table = 'alumnies';
protected $dates = [
'graduated',
'created_at',
'updated_at',
'deleted_at',
];
protected $fillable = [
'name',
'graduated',
'email',
'phone',
'created_at',
'updated_at',
'deleted_at',
'additional_field_1',
'additional_field_2',
'additional_field_3',
'additional_field_4',
'additional_field_5',
];
protected function serializeDate(DateTimeInterface $date)
{
return $date->format('Y-m-d H:i:s');
}
public function getGraduatedAttribute($value)
{
return $value ? Carbon::parse($value)->format(config('panel.date_format')) : null;
}
public function setGraduatedAttribute($value)
{
$this->attributes['graduated'] = $value ? Carbon::createFromFormat(config('panel.date_format'), $value)->format('Y-m-d') : null;
}
public function faculties()
{
return $this->belongsToMany(Department::class);
}
public function cathedrals()
{
return $this->belongsToMany(DepartmentSubsection::class);
}
public function study_programs()
{
return $this->belongsToMany(StudyProgram::class);
}
public function workplaces()
{
return $this->belongsToMany(AlumniCompany::class);
}
public function positions()
{
return $this->belongsToMany(Position::class);
}
public function alumnyareaofcooperations()
{
return $this->belongsToMany(AlumnyAreaOfCooperation::class);
}
}