| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 | 
							- <?php
 - 
 - namespace Database\Seeders;
 - 
 - use App\Models\Setting\Category;
 - use Illuminate\Database\Seeder;
 - use Illuminate\Support\Facades\DB;
 - 
 - class CategorySeeder extends Seeder
 - {
 -     /**
 -      * Run the database seeds.
 -      */
 -     public function run(): void
 -     {
 -         $companyId = DB::table('companies')->first()->id;
 -         $userId = DB::table('users')->first()->id;
 - 
 -         $incomeCategories = [
 -             'Salary',
 -             'Bonus',
 -             'Interest',
 -             'Dividends',
 -             'Rentals',
 -         ];
 - 
 -         $expenseCategories = [
 -             'Rent',
 -             'Utilities',
 -             'Food',
 -             'Transportation',
 -             'Entertainment',
 -         ];
 - 
 -         // Merge and shuffle the sales and purchase taxes
 -         $shuffledCategories = [
 -             ...array_map(static fn($name) => ['name' => $name, 'type' => 'income'], $incomeCategories),
 -             ...array_map(static fn($name) => ['name' => $name, 'type' => 'expense'], $expenseCategories)
 -         ];
 - 
 -         shuffle($shuffledCategories);
 - 
 -         $allCategories = $shuffledCategories;
 - 
 -         // Create each category
 -         foreach ($allCategories as $category) {
 -             Category::factory()->create([
 -                 'company_id' => $companyId,
 -                 'name' => $category['name'],
 -                 'type' => $category['type'],
 -                 'enabled' => false,
 -                 'created_by' => $userId,
 -                 'updated_by' => $userId,
 -             ]);
 -         }
 - 
 -         // Set the first income category as enabled
 -         Category::where('type', 'income')
 -             ->where('company_id', $companyId)
 -             ->first()
 -             ->update(['enabled' => true]);
 - 
 -         // Set the first expense category as enabled
 -         Category::where('type', 'expense')
 -             ->where('company_id', $companyId)
 -             ->first()
 -             ->update(['enabled' => true]);
 -     }
 - }
 
 
  |