137 lines
3.5 KiB
PHP
137 lines
3.5 KiB
PHP
<?php
|
|
|
|
namespace App\Models\Pertanian;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|
use Illuminate\Database\Eloquent\Relations\HasMany;
|
|
|
|
use App\Models\Wilayah\DesaKelurahan;
|
|
|
|
class KelompokTani extends Model
|
|
{
|
|
use HasFactory, SoftDeletes;
|
|
|
|
protected $table = 'survey_kelompok_tani';
|
|
|
|
protected $fillable = [
|
|
'uid',
|
|
|
|
// Data Responden
|
|
'nama_responden',
|
|
'jabatan_responden',
|
|
'kontak_responden',
|
|
|
|
// Identitas Kelompok Tani
|
|
'nama_kelompok',
|
|
'desa_kelurahan_id',
|
|
'dusun',
|
|
'tahun_berdiri',
|
|
'jenis_kelompok',
|
|
'nama_gapoktan',
|
|
'komoditas_id',
|
|
|
|
// Pengurus & Anggota Kelompok
|
|
'jumlah_pengurus',
|
|
'jumlah_pengurus_aktif',
|
|
'jumlah_anggota_terdaftar',
|
|
'jumlah_anggota_aktif',
|
|
'jumlah_pengurus_laki_laki',
|
|
'jumlah_pengurus_perempuan',
|
|
'jumlah_anggota_laki_laki',
|
|
'jumlah_anggota_perempuan',
|
|
'jumlah_anggota_pemuda_laki_laki',
|
|
'jumlah_anggota_pemuda_perempuan',
|
|
|
|
// Cakupan Wilayah Kelompok
|
|
'cakupan_wilayah',
|
|
'nama_wilayah_cakupan',
|
|
|
|
// Status Legalitas Kelompok
|
|
'status_legalitas',
|
|
'nomor_sk',
|
|
'tanggal_tahun_penerbitan_sk',
|
|
|
|
// Kualitas Kepemimpinan
|
|
'tingkat_keaktifan_ketua',
|
|
'status_pembagian_peran',
|
|
'status_dokumentasi_rapat',
|
|
|
|
// Frekuensi Pertemuan Rutin
|
|
'frekuensi_pertemuan',
|
|
'tanggal_pertemuan_terakhir',
|
|
|
|
// Kegiatan Konkret yang Sudah Berjalan
|
|
'kegiatan_terlaksana',
|
|
'estimasi_panen_minimal',
|
|
'estimasi_panen_maksimal',
|
|
'satuan_hasil_panen',
|
|
'tindakan_hasil_panen',
|
|
|
|
// Peran & Fungsi Kelompok
|
|
'fungsi_kelompok_bagi_anggota',
|
|
|
|
// Kapasitas Pengelolaan Kas/Simpan Pinjam
|
|
'pembukuan_kas',
|
|
'pengelola_kas',
|
|
'masalah_pengelolaan_kas_simpan_pinjam',
|
|
'deskripsi_masalah_pengelolaan_kas_simpan_pinjam',
|
|
|
|
// Keterlibatan Perempuan
|
|
'partisipasi_perempuan',
|
|
|
|
// Konflik Internal
|
|
'konflik_kelompok',
|
|
'topik_konflik',
|
|
'penyelesaian_konflik',
|
|
|
|
// Pengalaman Bantuan
|
|
'pernah_mendapatkan_bantuan',
|
|
|
|
// Postensi Sebagai Mitra Agregasi/Pengolahan Kolektif
|
|
'potensi_kelompok',
|
|
'alasan_penilaian_potensi',
|
|
|
|
// Audit
|
|
'created_by',
|
|
'updated_by',
|
|
'deleted_by',
|
|
];
|
|
|
|
protected $casts = [
|
|
'komoditas_id' => 'array',
|
|
'tindakan_hasil_panen' => 'array',
|
|
'fungsi_kelompok_bagi_anggota' => 'array',
|
|
'kegiatan_terlaksana' => 'array',
|
|
|
|
'pernah_mendapatkan_bantuan' => 'boolean',
|
|
|
|
'tanggal_pertemuan_terakhir' => 'date',
|
|
|
|
'estimasi_panen_minimal' => 'decimal:2',
|
|
'estimasi_panen_maksimal' => 'decimal:2',
|
|
];
|
|
|
|
public function desaKelurahan()
|
|
{
|
|
return $this->belongsTo(DesaKelurahan::class, 'desa_kelurahan_id');
|
|
}
|
|
|
|
public function pengurus()
|
|
{
|
|
return $this->hasMany(PengurusKelompokTani::class, 'survey_kelompok_tani_id');
|
|
}
|
|
|
|
public function aset()
|
|
{
|
|
return $this->hasMany(AsetKelompokTani::class, 'survey_kelompok_tani_id');
|
|
}
|
|
|
|
public function bantuan()
|
|
{
|
|
return $this->hasMany(BantuanKelompokTani::class, 'survey_kelompok_tani_id');
|
|
}
|
|
}
|