Core/app/Models/Document.php

71 lines
1.5 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
use Modules\CetakLabel\Entities\Directorat;
use Spatie\Activitylog\LogOptions;
use Spatie\Activitylog\Traits\LogsActivity;
use Wildside\Userstamps\Userstamps;
class Document extends Model
{
use LogsActivity, HasFactory, SoftDeletes, Userstamps;
protected $fillable = [
'directorat_id',
'sub_directorat_id',
'job_id',
'sub_job_id',
'sub_sub_job_id',
'special_code_id',
'no_urut',
'kode',
'sequence',
'jenis_dokumen'
];
public function getActivitylogOptions(): LogOptions
{
return LogOptions::defaults()->logAll()
->useLogName('master data');
}
public function directorat()
{
return $this->belongsTo(Directorat::class);
}
public function sub_directorat()
{
return $this->belongsTo(SubDirectorat::class);
}
public function job()
{
return $this->belongsTo(Job::class);
}
public function sub_job()
{
return $this->belongsTo(SubJob::class);
}
public function sub_sub_job()
{
return $this->belongsTo(SubSubJob::class);
}
public function special_code()
{
return $this->belongsTo(SpecialCode::class);
}
public function document_details()
{
return $this->hasMany(DocumentDetail::class);
}
}