belongsTo('App\Models\Dataset','dataset_id');
    }
    public static function dataChart($modelClass,$datasetId,$templateId){
        $datasets = \App\Models\Dataset::where('template_id', $templateId)
            ->orderBy('tahun', 'asc')
            ->get()
            ->map(function ($dataset) use ($modelClass) {
                $dataset->items = (new $modelClass)->where('dataset_id', $dataset->id)->get();
                return $dataset;
            });
        $years  = $datasets->pluck('tahun')->toArray();
        $model = self::with('dataset')->whereHas('dataset',function($query) use ($years){
            $query->whereIn('tahun',$years);
        })->where('dataset_id',$datasetId)->get();
        
        $result = [];
        foreach ($model as $row) {
            $lokasi = $row->lokasi ?? 'Unknown';
            if (!isset($result[$lokasi])) {
                $result[$lokasi] = [
                    'luas' => [],
                    'persen' => []
                ];
            }
            $result[$lokasi]['luas'][]   = (float) $row->luas;
            $result[$lokasi]['persen'][] = (float) $row->persentase_area_kerusakan;
        }
        return [
            'title'     => 'Luas & Persentase Area Kerusakan per Wilayah',
            'years'     => $years,
            'yTitle'    => 'Luas (Ha)',
            'yOpposite'    => 'Persentase (%)',
            'series'    => collect($result)->flatMap(function ($item, $lokasi) {
                return [
                    [
                        'name' => "Luas - {$lokasi}",
                        'type' => 'column',
                        'data' => $item['luas']
                    ],
                    [
                        'name' => "Persentase - {$lokasi}",
                        'type' => 'line',
                        'data' => $item['persen']
                    ]
                ];
            })->values()
        ];
    }
    public static function legend() {
        $html = "
            Keterangan:
            Berdasarkan Keputusan Menteri Lingkungan Hidup Nomor 200 Tahun 2004 tentang Kriteria Baku Kerusakan dan Pedoman
            Penentuan Status Padang Lamun
            
            Sumber: Dinas Ketahanan Pangan, Kelautan dan Pertanian Provinsi DKI Jakarta
            
            Penjelasan Isi Tabel:
            (1) Nomor urut diisi dengan angka 1,2,3, dst
            (2) Diisi dengan provinsi/kabupaten/kota yang ada di provinsi penyusun laporan
            (3) Diisi dengan angka luas padang lamun dalam satuan hektar
            (4) Diisi dengan persentase area kerusakan
        ";
        return $html;
    }
}