ultimatepos/database/migrations/2026_07_07_280000_enterprise_modules_permissions.php

36 lines
1.2 KiB
PHP

<?php
use Illuminate\Database\Migrations\Migration;
use Spatie\Permission\Models\Permission;
use Spatie\Permission\Models\Role;
return new class extends Migration
{
public function up(): void
{
$permissions = [
'qms.access', 'qms.ncr.view', 'qms.ncr.create', 'qms.ncr.update',
'qms.capa.view', 'qms.capa.create', 'qms.capa.update',
'qms.fmea.view', 'qms.fmea.create', 'qms.spc.view', 'qms.spc.create',
'qms.calibration.view', 'qms.calibration.create', 'qms.calibration.update',
'qms.audit.view', 'qms.audit.create', 'qms.document.view', 'qms.document.create',
'shopfloor.access', 'shopfloor.view', 'shopfloor.production.create',
'shopfloor.downtime.create', 'shopfloor.oee.view', 'shopfloor.instructions.view',
'ie.cpq.view', 'ie.cpq.create',
];
foreach ($permissions as $name) {
Permission::firstOrCreate(['name' => $name, 'guard_name' => 'web']);
}
foreach (Role::where('name', 'like', 'Admin#%')->get() as $role) {
$role->givePermissionTo($permissions);
}
}
public function down(): void
{
//
}
};