Update BUMDes
This commit is contained in:
@@ -2,9 +2,10 @@
|
||||
|
||||
namespace App\Models\Bumdes;
|
||||
|
||||
use App\Models\Concerns\CatatAktivitas;
|
||||
use App\Enums\Bumdes\JabatanBumdes;
|
||||
use App\Enums\Pendidikan;
|
||||
use App\Models\Concerns\CatatAktivitas;
|
||||
use App\Models\Concerns\HasDeletedBy;
|
||||
use App\Models\User;
|
||||
use App\Models\Wilayah\DesaKelurahan;
|
||||
use Carbon\Carbon;
|
||||
@@ -15,7 +16,7 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class PengurusBumdes extends Model
|
||||
{
|
||||
use SoftDeletes, CatatAktivitas;
|
||||
use CatatAktivitas, HasDeletedBy, SoftDeletes;
|
||||
|
||||
protected $table = 'bumdes_pengurus';
|
||||
|
||||
@@ -38,13 +39,33 @@ class PengurusBumdes extends Model
|
||||
'deleted_by',
|
||||
];
|
||||
|
||||
protected $casts = [
|
||||
'jenis_kelamin' => 'boolean',
|
||||
'tanggal_lahir' => 'date',
|
||||
'pendidikan_terakhir' => Pendidikan::class,
|
||||
'tanggal_mulai_menjabat' => 'date',
|
||||
'jabatan' => JabatanBumdes::class,
|
||||
];
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
'jenis_kelamin' => 'boolean',
|
||||
'tanggal_lahir' => 'date',
|
||||
'pendidikan_terakhir' => Pendidikan::class,
|
||||
'tanggal_mulai_menjabat' => 'date',
|
||||
'jabatan' => JabatanBumdes::class,
|
||||
];
|
||||
}
|
||||
|
||||
protected static function booted(): void
|
||||
{
|
||||
static::deleting(function (self $pengurus) {
|
||||
if (! $pengurus->isForceDeleting()) {
|
||||
$pengurus->kelembagaanAktor()->each(fn ($data) => $data->delete());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public function profilLengkap(): bool
|
||||
{
|
||||
return $this->exists && collect([
|
||||
'nama', 'tempat_lahir', 'tanggal_lahir', 'pendidikan_terakhir', 'alamat',
|
||||
'desa_kelurahan_id', 'jabatan', 'lama_menjabat_tahun',
|
||||
])->every(fn ($field) => filled($this->{$field})) && $this->jenis_kelamin !== null;
|
||||
}
|
||||
|
||||
public function getUsiaAttribute(): ?int
|
||||
{
|
||||
@@ -58,7 +79,7 @@ class PengurusBumdes extends Model
|
||||
public function getLamaMenjabatAttribute(): string
|
||||
{
|
||||
if (! is_null($this->lama_menjabat_tahun)) {
|
||||
return $this->lama_menjabat_tahun . ' tahun';
|
||||
return $this->lama_menjabat_tahun.' tahun';
|
||||
}
|
||||
|
||||
if (! $this->tanggal_mulai_menjabat) {
|
||||
@@ -75,15 +96,15 @@ class PengurusBumdes extends Model
|
||||
$bagian = [];
|
||||
|
||||
if ($selisih->y > 0) {
|
||||
$bagian[] = $selisih->y . ' tahun';
|
||||
$bagian[] = $selisih->y.' tahun';
|
||||
}
|
||||
|
||||
if ($selisih->m > 0) {
|
||||
$bagian[] = $selisih->m . ' bulan';
|
||||
$bagian[] = $selisih->m.' bulan';
|
||||
}
|
||||
|
||||
if (empty($bagian)) {
|
||||
return $selisih->d . ' hari';
|
||||
return $selisih->d.' hari';
|
||||
}
|
||||
|
||||
return implode(' ', $bagian);
|
||||
|
||||
Reference in New Issue
Block a user