- Created a new SQL file `query_mig_users.sql` to select and transform user data. - The query retrieves user details including user ID, name, email, and various flags. - Includes a commented-out query to count total users per group.
34 lines
957 B
PHP
34 lines
957 B
PHP
<?php
|
|
|
|
namespace Modules\Usermanagement\Database\Seeders;
|
|
|
|
use Illuminate\Database\Seeder;
|
|
use Illuminate\Support\Facades\Hash;
|
|
use Modules\Usermanagement\Models\User;
|
|
use Spatie\Permission\Models\Role;
|
|
|
|
class MigAssignRoleEOAppraisalSeeder extends Seeder
|
|
{
|
|
/**
|
|
* Run the database seeds.
|
|
*/
|
|
public function run(): void
|
|
{
|
|
// $this->call([]);
|
|
// Pada LPJ OLD = KEPALA BAGIAN (003)
|
|
// Pada LPJ NEW = EO Appraisal (role_id=8)
|
|
$users = User::where('mig_kd_group', '003')->get();
|
|
|
|
|
|
// Update password langsung tanpa loop
|
|
User::where('mig_kd_group', '003')->update([
|
|
'password' => Hash::make('2Wsx1Qaz'),
|
|
]);
|
|
|
|
// Loop hanya untuk assignRole()
|
|
$users->each(fn($user) => $user->assignRole('EO Appraisal'));
|
|
|
|
$this->command->info("Role 'EO Appraisal' berhasil diberikan ke " . $users->count() . " user.");
|
|
}
|
|
}
|