85 lines
2.0 KiB
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');
|
|
}
|
|
}
|