Update Koperasi

This commit is contained in:
2026-11-06 22:38:45 +07:00
parent 6232b28e11
commit cb36682d9e
79 changed files with 4639 additions and 1378 deletions
@@ -0,0 +1,46 @@
<?php
namespace App\Services\Koperasi;
use App\Enums\Koperasi\AlasanPinjamanKoperasi;
use App\Enums\Koperasi\BentukPembayaranKoperasi;
use App\Enums\Koperasi\JawabanYaTidakKoperasi;
use App\Enums\Koperasi\JenisKoperasi;
use App\Enums\Koperasi\KetersediaanKoperasi;
use App\Models\Koperasi\PengurusKoperasi;
class SosialEkonomiKoperasiService extends KoperasiSurveyService
{
public function context(?PengurusKoperasi $model): array
{
return ['jenis_koperasi' => $model?->jenis_koperasi];
}
public function dependencies(): array
{
$when = fn (string $field, array $values, string $source = 'form') => [
'field' => $field, 'values' => $values, 'source' => $source,
];
$simpanPinjam = $when('jenis_koperasi', [JenisKoperasi::SIMPAN_PINJAM->value], 'profile');
return [
'alasan_pinjaman' => [$simpanPinjam],
'alasan_pinjaman_lainnya' => [$when('alasan_pinjaman', [AlasanPinjamanKoperasi::LAINNYA->value])],
'pembayaran_selain_uang' => [$simpanPinjam],
'bentuk_pembayaran_barang' => [$when('pembayaran_selain_uang', [KetersediaanKoperasi::ADA->value])],
'bentuk_pembayaran_lainnya' => [$when('bentuk_pembayaran_barang', [BentukPembayaranKoperasi::LAINNYA->value])],
'perhitungan_harga_pasar' => [$when('bentuk_pembayaran_barang', [BentukPembayaranKoperasi::HASIL_BUMI->value])],
'alasan_bukan_harga_pasar' => [$when('perhitungan_harga_pasar', [JawabanYaTidakKoperasi::TIDAK->value])],
];
}
public function requiredFields(): array
{
return ['alasan_pinjaman_lainnya', 'bentuk_pembayaran_barang', 'bentuk_pembayaran_lainnya', 'perhitungan_harga_pasar', 'alasan_bukan_harga_pasar'];
}
protected function arrayFields(): array
{
return ['alasan_pinjaman', 'bentuk_pembayaran_barang'];
}
}