'boolean', 'status_sortasi' => StatusSortasiBumdes::class, 'status_pengeringan' => StatusPengeringanBumdes::class, 'status_fermentasi' => StatusFermentasiBumdes::class, 'model_fermentasi' => AsEnumCollection::of(ModelFermentasiBumdes::class), 'premium_harga_pascapanen' => 'decimal:2', 'melakukan_jual_beli' => 'boolean', 'sumber_pasokan' => AsEnumCollection::of(SumberPasokanBumdes::class), 'bentuk_produk_dibeli' => AsEnumCollection::of(BentukProdukBumdes::class), 'volume_pembelian' => 'array', 'saluran_penjualan' => AsEnumCollection::of(SaluranPenjualanBumdes::class), 'bentuk_produk_dijual' => AsEnumCollection::of(BentukProdukBumdes::class), 'volume_penjualan' => 'array', 'hubungan_petani_pemasok' => AsEnumCollection::of(HubunganPemasokBumdes::class), 'mekanisme_pembayaran_petani' => MekanismePembayaranBumdes::class, 'perjanjian_petani' => PerjanjianPetaniBumdes::class, 'harga_beli_petani' => 'array', 'penetapan_harga_beli' => PenetapanHargaBeliBumdes::class, 'status_pembukuan' => StatusPembukuanBumdes::class, 'format_pembukuan' => FormatPembukuanBumdes::class, 'pernah_audit' => 'boolean', 'sifat_audit' => AsEnumCollection::of(SifatAuditBumdes::class), 'tahun_audit' => 'integer', 'pertanggungjawaban_musdes' => PertanggungjawabanMusdesBumdes::class, 'tahun_laporan_musdes' => 'integer', 'kondisi_keuangan' => KondisiKeuanganBumdes::class, 'kontribusi_pades' => KontribusiPadesBumdes::class, 'nominal_kontribusi_pades' => 'decimal:2', 'cakupan_layanan' => CakupanLayananBumdes::class, 'jumlah_petani_desa_sendiri' => 'integer', 'jumlah_petani_desa_lain' => 'integer', 'pencatatan_petani' => PencatatanPetaniBumdes::class, 'layanan_petani' => AsEnumCollection::of(LayananPetaniBumdes::class), 'peran_rantai_nilai' => PeranRantaiNilaiBumdes::class, 'pengalaman_offtaker' => PengalamanOfftakerBumdes::class, 'tahun_mulai_offtaker' => 'integer', 'hambatan_usaha' => AsEnumCollection::of(HambatanUsahaBumdes::class), 'ada_alokasi_desa' => 'boolean', 'jumlah_alokasi_desa' => 'decimal:2', 'dukungan_desa' => AsEnumCollection::of(DukunganDesaBumdes::class), 'keterlibatan_koordinasi_desa' => KeterlibatanKoordinasiBumdes::class, 'kemitraan_eksternal' => AsEnumCollection::of(KemitraanEksternalBumdes::class), 'status_badan_hukum' => StatusBadanHukumBumdes::class, 'status_keaktifan' => StatusKeaktifanBumdes::class, 'status_unit_komoditas' => StatusUnitKomoditasBumdes::class, 'status_ad_art' => StatusAdArtBumdes::class, 'status_kepemilikan_aset' => StatusKepemilikanAsetBumdes::class, 'tahun_dasar_hukum' => 'integer', 'tahun_ad_art' => 'integer', 'unit_usaha' => AsEnumCollection::of(UnitUsahaBumdes::class), 'pengurus_inti' => 'array', 'memiliki_staf' => 'boolean', 'jumlah_staf' => 'integer', 'modal_awal' => 'decimal:2', 'tahun_modal_awal' => 'integer', 'pernah_penambahan_modal' => 'boolean', 'penambahan_modal' => 'array', 'aset_produktif' => 'array', 'infrastruktur_pascapanen' => 'array', ]; } public static function sectionFields(string $section): array { if ($section === 'rantai-nilai') { return [ 'melakukan_pengolahan_pascapanen', 'status_sortasi', 'kriteria_sortasi', 'status_pengeringan', 'cara_tempat_pengeringan', 'status_fermentasi', 'model_fermentasi', 'proses_fermentasi', 'premium_harga_pascapanen', 'melakukan_jual_beli', 'sumber_pasokan', 'sumber_pasokan_lainnya', 'bentuk_produk_dibeli', 'volume_pembelian', 'saluran_penjualan', 'saluran_penjualan_lainnya', 'bentuk_produk_dijual', 'volume_penjualan', 'hubungan_petani_pemasok', 'hubungan_petani_pemasok_lainnya', 'mekanisme_pembayaran_petani', 'mekanisme_pembayaran_lainnya', 'perjanjian_petani', 'harga_beli_petani', 'penetapan_harga_beli', 'penetapan_harga_beli_lainnya', ]; } if ($section === 'profil') { return [ 'status_keaktifan', 'alasan_tidak_aktif', 'pengurus_inti', 'memiliki_staf', 'jumlah_staf', 'unit_usaha_staf', ]; } return $section === 'operasional' ? [ 'modal_awal', 'tahun_modal_awal', 'pernah_penambahan_modal', 'penambahan_modal', 'aset_produktif', 'aset_produktif_lainnya', 'status_kepemilikan_aset', 'infrastruktur_pascapanen', 'infrastruktur_pascapanen_lainnya', 'ada_alokasi_desa', 'jumlah_alokasi_desa', 'dukungan_desa', 'dukungan_desa_lainnya', 'keterlibatan_koordinasi_desa', 'kemitraan_eksternal', 'kemitraan_eksternal_lainnya', 'status_pembukuan', 'format_pembukuan', 'pernah_audit', 'sifat_audit', 'pelaksana_audit', 'tahun_audit', 'pertanggungjawaban_musdes', 'tahun_laporan_musdes', 'kondisi_keuangan', 'kontribusi_pades', 'nominal_kontribusi_pades', 'cakupan_layanan', 'desa_lain_dilayani', 'jumlah_petani_desa_sendiri', 'jumlah_petani_desa_lain', 'pencatatan_petani', 'layanan_petani', 'layanan_petani_lainnya', 'peran_rantai_nilai', 'pengalaman_offtaker', 'nama_offtaker', 'tahun_mulai_offtaker', 'alasan_berhenti_offtaker', 'hambatan_usaha', 'hambatan_usaha_lainnya', ] : [ 'status_badan_hukum', 'nomor_dasar_hukum', 'tahun_dasar_hukum', 'unit_usaha', 'unit_usaha_jasa_lainnya', 'status_unit_komoditas', 'nama_unit_komoditas', 'status_ad_art', 'tahun_ad_art', ]; } public function pengurusBumdes(): BelongsTo { return $this->belongsTo(PengurusBumdes::class, 'pengurus_bumdes_id'); } public function creator(): BelongsTo { return $this->belongsTo(User::class, 'created_by'); } }