diff --git a/app/Console/Commands/updateAdminMenu.php b/app/Console/Commands/updateAdminMenu.php
index 4c9a459b5..8d8db249a 100644
--- a/app/Console/Commands/updateAdminMenu.php
+++ b/app/Console/Commands/updateAdminMenu.php
@@ -37,6 +37,7 @@ public function handle()
setPermissionsTeamId($team->id);
if ($team) {
$team->menu = Modul::Menu;
+ $team->menu_order = null;
$team->save();
$role = Role::firstOrCreate(
diff --git a/app/Enums/Modul.php b/app/Enums/Modul.php
index 97342d912..94f4f98ed 100644
--- a/app/Enums/Modul.php
+++ b/app/Enums/Modul.php
@@ -54,6 +54,12 @@ final class Modul extends Enum
'url' => 'bantuan',
'permission' => 'bantuan',
],
+ [
+ 'text' => 'Kelembagaan',
+ 'icon' => 'far fa-fw fa-circle',
+ 'url' => 'lembaga',
+ 'permission' => 'lembaga',
+ ],
],
],
[
diff --git a/app/Http/Controllers/LembagaController.php b/app/Http/Controllers/LembagaController.php
new file mode 100644
index 000000000..24d3db9c3
--- /dev/null
+++ b/app/Http/Controllers/LembagaController.php
@@ -0,0 +1,20 @@
+ $request->getQueryString()]);
+ }
+}
diff --git a/catatan_rilis.md b/catatan_rilis.md
index 841b34586..1ab793bd4 100644
--- a/catatan_rilis.md
+++ b/catatan_rilis.md
@@ -11,6 +11,7 @@ Di rilis ini, versi 2508.0.0 berisi penambahan dan perbaikan yang diminta penggu
7. [#797](https://github.com/OpenSID/OpenKab/issues/797) Penambahan kolom nama desa pada halaman ketenagakerjaan di OpenKab.
8. [#798](https://github.com/OpenSID/OpenKab/issues/798) Penambahan kolom nama desa pada beberapa halaman pendidikan di OpenKab.
9. [#798](https://github.com/OpenSID/OpenKab/issues/798) Penambahan kolom nama desa pada beberapa halaman pendidikan di OpenKab.
+10. [#794](https://github.com/OpenSID/OpenKab/issues/794) Penambahan menu kelembagaan yang di ambil dari OpenSID.
#### Perbaikan BUG
diff --git a/database/migrations/2025_08_20_091023_update_menu_admin.php b/database/migrations/2025_08_20_091023_update_menu_admin.php
new file mode 100644
index 000000000..865477b81
--- /dev/null
+++ b/database/migrations/2025_08_20_091023_update_menu_admin.php
@@ -0,0 +1,26 @@
+ 'filter_kabupaten',
+ 'kecamatanId' => 'filter_kecamatan',
+ 'desaId' => 'filter_desa',
+ 'filterButtonId' => 'bt_filter',
+ 'clearButtonId' => 'bt_clear_filter',
+ 'onFilterChange' => null,
+ 'apiUrl' => '',
+ 'apiHeaders' => '{}',
+ 'loadOnInit' => true,
+])
+
+@once
+ @push('js')
+
+ @endpush
+@endonce
diff --git a/resources/views/components/wilayah-filter.blade.php b/resources/views/components/wilayah-filter.blade.php
new file mode 100644
index 000000000..8fac8f8e1
--- /dev/null
+++ b/resources/views/components/wilayah-filter.blade.php
@@ -0,0 +1,84 @@
+@props([
+ 'showKabupaten' => true,
+ 'showKecamatan' => true,
+ 'showDesa' => true,
+ 'showButtons' => true,
+ 'kabupatenLabel' => '',
+ 'kecamatanLabel' => 'Kecamatan',
+ 'desaLabel' => '',
+ 'filterButtonText' => 'TAMPILKAN',
+ 'clearButtonText' => 'HAPUS FILTER',
+ 'containerClass' => 'row',
+ 'columnClass' => 'col-md-3',
+ 'buttonColumnClass' => 'col-md-3',
+ 'kabupatenId' => 'filter_kabupaten',
+ 'kecamatanId' => 'filter_kecamatan',
+ 'desaId' => 'filter_desa',
+ 'filterButtonId' => 'bt_filter',
+ 'clearButtonId' => 'bt_clear_filter',
+ 'includeJs' => true,
+])
+
+@php
+ $kabupatenLabelFinal = $kabupatenLabel ?: config('app.sebutanKab');
+ $desaLabelFinal = $desaLabel ?: config('app.sebutanDesa');
+@endphp
+
+
+ @if ($showKabupaten)
+
+
+
+
+
+
+ @endif
+
+ @if ($showKecamatan)
+
+
+
+
+
+
+ @endif
+
+ @if ($showDesa)
+
+
+
+
+
+
+ @endif
+
+ @if ($showButtons)
+
+ @endif
+
+
+@if ($includeJs)
+ @include('components.wilayah_filter_js')
+@endif
diff --git a/resources/views/lembaga/cetak.blade.php b/resources/views/lembaga/cetak.blade.php
new file mode 100644
index 000000000..705ff021b
--- /dev/null
+++ b/resources/views/lembaga/cetak.blade.php
@@ -0,0 +1,117 @@
+@extends('layouts.cetak.index')
+
+@section('title', 'Data Lembaga')
+
+@section('content')
+ @include('partials.breadcrumbs')
+
+
+
+
+
+ Memuat data...
+
+
+
+
+
+
+
+
+
+
+ | No |
+ Nama {{ config('app.sebutanDesa') }} |
+ Kode Lembaga |
+ Nama Lembaga |
+ Ketua Lembaga |
+ Kategori Lembaga |
+ Jumlah Anggota Lembaga |
+
+
+
+
+
+ |
+ |
+ |
+ |
+
+ |
+ |
+ |
+
+
+
+
+
+
+@stop
diff --git a/resources/views/lembaga/index.blade.php b/resources/views/lembaga/index.blade.php
new file mode 100644
index 000000000..35e8cd8ba
--- /dev/null
+++ b/resources/views/lembaga/index.blade.php
@@ -0,0 +1,216 @@
+@extends('layouts.index')
+
+@section('title', $title)
+
+@section('content_header')
+ {{ $title }}
+@stop
+
+@push('css')
+
+@endpush
+
+@section('content')
+ @include('partials.breadcrumbs')
+
+
+
+
+
+
+
+
+
+
+ | No |
+ Nama {{ config('app.sebutanDesa') }} |
+ Kode Lembaga |
+ Nama Lembaga |
+ Ketua Lembaga |
+ Kategori Lembaga |
+ Jumlah Anggota Lembaga |
+
+
+
+
+
+
+
+
+
+@endsection
+
+@section('js')
+
+@endsection
diff --git a/routes/web.php b/routes/web.php
index 993952325..67c5a38ac 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -55,6 +55,7 @@
Route::get('catatan-rilis', CatatanRilis::class);
Route::get('/dasbor', [DasborController::class, 'index'])->name('dasbor');
Route::get('dasbor-demografi', [DasborDemografiController::class, 'index'])->name('dasbor-demografi');
+
Route::get('password.change', [ChangePasswordController::class, 'showResetForm'])->name('password.change');
Route::post('password.change', [ChangePasswordController::class, 'reset'])->name('password.change');
Route::get('users/list', [UserController::class, 'getUsers'])->name('users.list');
@@ -154,6 +155,12 @@
Route::get('/detail/{id}', 'show')->name('bantuan.detail');
});
+ // Lembaga routes
+ Route::middleware(['permission:lembaga-read'])->prefix('lembaga')->group(function () {
+ Route::get('/', [App\Http\Controllers\LembagaController::class, 'index'])->name('lembaga.index');
+ Route::get('/detail', [App\Http\Controllers\LembagaController::class, 'detail'])->name('lembaga.detail');
+ Route::get('/cetak', [App\Http\Controllers\LembagaController::class, 'cetak'])->name('lembaga.cetak');
+ });
// Data Pokok
Route::middleware(['permission:datapresisi-read'])->controller(DataPokokController::class)
->prefix('data-pokok')
@@ -173,6 +180,7 @@
Route::middleware(['permission:datapokok-agama-adat-read'])->get('/agama/detail', 'detail_agama')->name('detail_agama');
Route::middleware(['permission:datapokok-agama-adat-read'])->get('/agama/cetak', 'cetak_agama')->name('cetak_agama');
Route::middleware(['permission:datapokok-infrastruktur-read'])->get('/infrastruktur', 'infrastruktur')->name('infrastruktur');
+
Route::middleware(['permission:datapokok-sandang-read'])->get('/sandang', 'sandang')->name('datasandang');
Route::middleware(['permission:datapokok-sandang-read'])->get('/sandang/detail', 'detail_sandang')->name('detail_datasandang');
Route::middleware(['permission:datapokok-sandang-read'])->get('/sandang/cetak', 'cetak_sandang')->name('cetak_datasandang');