|
Server : LiteSpeed System : Linux barito.iixcp.rumahweb.net 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64 User : elvh3918 ( 1528) PHP Version : 8.2.31 Disable Function : mail Directory : /home/elvh3918/public_html/pmm/database/seeders/Master/ |
<?php
namespace Database\Seeders\Master;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Carbon\Carbon;
use Illuminate\Support\Facades\DB;
use App\Models\User;
class PartSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
$now = Carbon::now();
$project = config('app.project_app');
$supplier = DB::table('suppliers')->get();
$parts = array('Evaporator coil', 'Refrigerant', 'Blower fan', 'Air filter', 'Thermostat', 'Ductwork', 'Expansion valve', 'Damper', 'Supply and return vents', 'Condenser fan', 'Refrigerant line', 'Drain line/pan');
for ($i=0; $i < count($supplier); $i++) {
$id = $supplier[$i]->id;
$num = rand(1, 5);
for ($j=1; $j < $num; $j++) {
$code = substr(md5(microtime()), rand(0, 26), 5);
$part = array_rand($parts);
$part = $parts[$part];
DB::insert(
"INSERT INTO parts (code, name, supplier_id, created_at, updated_at) VALUES
('$code', '$part', $id, '$now', '$now')
;"
);
}
}
// register permissions
app()[\Spatie\Permission\PermissionRegistrar::class]->forgetCachedPermissions();
$now = Carbon::now();
DB::insert(
"INSERT INTO permissions (name, guard_name, created_at, updated_at) VALUES
(CONCAT('$project', '_master_parts_parts_view'), 'web', '$now', '$now'),
(CONCAT('$project', '_master_parts_parts_create'), 'web', '$now', '$now'),
(CONCAT('$project', '_master_parts_parts_edit'), 'web', '$now', '$now'),
(CONCAT('$project', '_master_parts_parts_delete'), 'web', '$now', '$now'),
(CONCAT('$project', '_master_parts_parts_print'), 'web', '$now', '$now')
;"
);
$admin = User::where('name', 'tenant')->first();
$admin->givePermissionTo($project.'_master_parts_parts_view', $project.'_master_parts_parts_create', $project.'_master_parts_parts_edit', $project.'_master_parts_parts_delete', $project.'_master_parts_parts_print');
$admin = User::where('name', 'admin')->first();
$admin->givePermissionTo($project.'_master_parts_parts_view', $project.'_master_parts_parts_create', $project.'_master_parts_parts_edit', $project.'_master_parts_parts_delete', $project.'_master_parts_parts_print');
}
}