skl/app/Models/Perusahaan.php

85 lines
2.0 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class Perusahaan extends Model
{
protected $table = 'Perusahaan';
protected $primaryKey = 'PerusahaanId';
protected $fillable = [
'NomorInduk',
'JenisKegiatanId',
'NamaPerusahaan',
'Alamat',
'KelurahanId',
'KodePos',
'Telepon',
'Fax',
'Email',
'Lintang',
'Bujur',
'CPNama',
'CPTelepon',
'ILNomor',
'ILTanggal',
'JenisDokILId',
'VerifikatorId',
'ReportLocked',
'IsPublish',
'ILDokumen',
'ILPdlNomor',
'ILPdlJenis',
'DocPdlOrig',
'DocPdlHash',
'DocPdlPath',
'ILPdlTanggal',
'Kawasan'
];
protected $casts = [
'ReportLocked' => 'boolean',
'IsPublish' => 'boolean',
'ILPdlTanggal' => 'date',
];
// Relationship with JenisKegiatan
public function jenisKegiatan(): BelongsTo
{
return $this->belongsTo(JenisKegiatan::class, 'JenisKegiatanId', 'JenisKegiatanId');
}
// Relationship with Kelurahan
public function kelurahan(): BelongsTo
{
return $this->belongsTo(Kelurahan::class, 'KelurahanId', 'KelurahanId');
}
// Relationship with JenisDokIL
public function jenisDokIL(): BelongsTo
{
return $this->belongsTo(JenisDokIL::class, 'JenisDokILId', 'JenisDokILId');
}
// Relationship with JenisDokIL for PDL
public function jenisDokILPdl(): BelongsTo
{
return $this->belongsTo(JenisDokIL::class, 'ILPdlJenis', 'JenisDokILId');
}
// Relationship with Verifikator
public function verifikator(): BelongsTo
{
return $this->belongsTo(Verifikator::class, 'VerifikatorId', 'VerifikatorId');
}
// Self-referential relationship for Kawasan
public function kawasan(): BelongsTo
{
return $this->belongsTo(Perusahaan::class, 'Kawasan', 'PerusahaanId');
}
}