84 lines
2.6 KiB
PHP
84 lines
2.6 KiB
PHP
<?php
|
|
|
|
namespace App\Models\Pertanian;
|
|
|
|
use App\Enums\PihakMembantuKonflik;
|
|
use App\Enums\SkorKecukupanPenghasilan;
|
|
use App\Enums\SkorKejelasanStatusLahan;
|
|
use App\Enums\SkorKemampuanMenabung;
|
|
use App\Enums\SkorPeriodePaceklik;
|
|
use App\Enums\StatusKepemilikanLahanSosialEkonomi;
|
|
use App\Enums\StatusKonflik;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|
use Illuminate\Database\Eloquent\Relations\HasMany;
|
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
|
|
|
class SosialEkonomi extends Model
|
|
{
|
|
use SoftDeletes;
|
|
|
|
protected $table = 'sosial_ekonomi';
|
|
|
|
protected $fillable = [
|
|
'uid',
|
|
'petani_id',
|
|
'jumlah_tanggungan',
|
|
'anak_masih_sekolah',
|
|
'yang_ikut_bekerja',
|
|
'skor_periode_paceklik',
|
|
'bulan_paceklik',
|
|
'sumber_penghasilan_paceklik',
|
|
'total_estimasi_biaya_kebun_per_musim',
|
|
'skor_kemampuan_menabung',
|
|
'estimasi_tabungan_per_bulan',
|
|
'skor_kecukupan_penghasilan',
|
|
'alasan_kecukupan_penghasilan',
|
|
'status_kepemilikan_lahan',
|
|
'skor_kejelasan_status_lahan',
|
|
'ada_sertifikat_dokumen',
|
|
'ada_sengketa',
|
|
'keterangan_sengketa',
|
|
'pihak_membantu_konflik',
|
|
'pihak_membantu_konflik_nama',
|
|
'tahun_bantuan_konflik',
|
|
'status_konflik',
|
|
'created_by',
|
|
'updated_by',
|
|
'deleted_by',
|
|
];
|
|
|
|
protected $casts = [
|
|
'jumlah_tanggungan' => 'integer',
|
|
'anak_masih_sekolah' => 'integer',
|
|
'yang_ikut_bekerja' => 'integer',
|
|
'skor_periode_paceklik' => SkorPeriodePaceklik::class,
|
|
'total_estimasi_biaya_kebun_per_musim' => 'integer',
|
|
'skor_kemampuan_menabung' => SkorKemampuanMenabung::class,
|
|
'estimasi_tabungan_per_bulan' => 'integer',
|
|
'skor_kecukupan_penghasilan' => SkorKecukupanPenghasilan::class,
|
|
'status_kepemilikan_lahan' => StatusKepemilikanLahanSosialEkonomi::class,
|
|
'skor_kejelasan_status_lahan' => SkorKejelasanStatusLahan::class,
|
|
'ada_sertifikat_dokumen' => 'boolean',
|
|
'ada_sengketa' => 'boolean',
|
|
'pihak_membantu_konflik' => PihakMembantuKonflik::class,
|
|
'tahun_bantuan_konflik' => 'integer',
|
|
'status_konflik' => StatusKonflik::class,
|
|
];
|
|
|
|
public function petani(): BelongsTo
|
|
{
|
|
return $this->belongsTo(Petani::class, 'petani_id');
|
|
}
|
|
|
|
public function pendapatanKomoditas(): HasMany
|
|
{
|
|
return $this->hasMany(PendapatanKomoditas::class, 'sosial_ekonomi_id');
|
|
}
|
|
|
|
public function pendapatanLuarPertanian(): HasMany
|
|
{
|
|
return $this->hasMany(PendapatanLuarPertanian::class, 'sosial_ekonomi_id');
|
|
}
|
|
}
|