diff --git a/database/migrations/2026_08_03_091716_grant_point_audit_additional_roles.php b/database/migrations/2026_08_03_091716_grant_point_audit_additional_roles.php new file mode 100644 index 0000000..70e7f5e --- /dev/null +++ b/database/migrations/2026_08_03_091716_grant_point_audit_additional_roles.php @@ -0,0 +1,40 @@ +where('key', 'view-point-audit')->value('id'); + if (! $permissionId) { + return; + } + + foreach (['ketua_tim', 'kepala_sekolah', 'wali_kelas', 'staff'] as $role) { + DB::table('role_permissions')->updateOrInsert( + ['role' => $role, 'permission_id' => $permissionId], + ['created_at' => now(), 'updated_at' => now()] + ); + } + } + + public function down(): void + { + $permissionId = DB::table('permissions')->where('key', 'view-point-audit')->value('id'); + if (! $permissionId) { + return; + } + + DB::table('role_permissions') + ->where('permission_id', $permissionId) + ->whereIn('role', ['ketua_tim', 'kepala_sekolah', 'wali_kelas', 'staff']) + ->delete(); + } +};