sebelum membaca ini pastikan user telah melakukan context prompt idrolesnya dan gmenu dan dmenu yang di perlukan untuk role tersebut, dan juga akses apa aja yang di butuhkan.

berikut adalah cara bagaimana melakukan seeding untuk sys_auth

context:

- seeder ini dibuat untuk Framework atau CMS like app yang menjadi base dari project kali ini.
- fungsinya adalah menyimpan data yang di butuhkan oleh sistem agar sistem bisa memberi akses menu ke user sesuai dengan role yang di milikinya.

untuk membuatnya:

1. dimulai dengan membuat seeder dengan auth_<idroles>.php
2. di dalamnya kurang lebih, contoh pada auth_admins.php:

    <?php

        namespace Database\Seeders;

        use Illuminate\Database\Console\Seeds\WithoutModelEvents;
        use Illuminate\Database\Seeder;
        use Illuminate\Support\Facades\DB;

        class auth_admins extends Seeder
        {
            /**
            * Run the database seeds.
            */
            public function run(): void
            {
                //insert tabel sys_auth        
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'blankx',
                    'dmenu' => 'dashbr',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'usersx',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'rolesx',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'authxx',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'tablex',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'setupx',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'gmenux',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'dmenux',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'sysidx',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'system',
                    'dmenu' => 'syscnt',
                    'add' => '0',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'master',
                    'dmenu' => 'msenum',
                    'add' => '1',
                    'edit' => '1',
                    'delete' => '1'
                ]);
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins',
                    'gmenu' => 'report',
                    'dmenu' => 'rsyslg',
                    'add' => '1',
                    'edit' => '0',
                    'delete' => '0'
                ]);

            }
        }

3. berikut detail perdata yang di masukkan:
                DB::table('sys_auth')->insert([
                    'idroles' => 'admins', // sesuaikan dengan idroles yang telah di buat pada context prompt idroles
                    'gmenu' => 'report', // sesuaikan dengan gmenu yang telah di buat pada context prompt gmenu
                    'dmenu' => 'rsyslg', // sesuaikan dengan dmenu yang telah di buat pada context prompt dmenu
                    'add' => '1', // 1 jika boleh menambah, 0 jika tidak
                    'edit' => '0', // 1 jika boleh mengedit, 0 jika tidak
                    'delete' => '0' // 1 jika boleh menghapus, 0 jika tidak
                ]);

4. setelah seeder di buat, selesai, developer akan mengecek dan menjalankan seeder ini di projectnya (JANGAN menjalankan by default, dev harus melakukan review).
