<?php

declare(strict_types=1);

namespace Database\Seeders;

use App\Models\Offer;
use App\Models\Product;
use App\Models\Project;
use App\Models\User;
use Illuminate\Database\Seeder;

class OffersTableSeeder extends Seeder
{
    public function run(): void
    {
        $adminId = User::role('admin')->first()?->id;
        $user = User::role('user')->first();
        $product = Product::first();
        $project = Project::first();

        if (! $user) {
            return;
        }

        if ($product) {
            Offer::firstOrCreate(
                [
                    'user_id' => $user->id,
                    'product_id' => $product->id,
                    'name' => 'پیشنهاد خرید گاو هلشتاین',
                ],
                [
                    'description' => 'پیشنهاد خرید با قیمت مناسب و شرایط پرداخت اقساطی',
                    'price' => 140000000,
                    'quantity' => 1,
                    'unit' => 'راس',
                    'offer_date' => now(),
                    'status' => 'pending',
                    'created_by' => $adminId,
                    'updated_by' => $adminId,
                ]
            );
        }

        if ($project) {
            Offer::firstOrCreate(
                [
                    'user_id' => $user->id,
                    'project_id' => $project->id,
                    'name' => 'پیشنهاد انجام پروژه گاوداری',
                ],
                [
                    'description' => 'پیشنهاد انجام پروژه با تجربه و تیم متخصص',
                    'price' => 4500000000,
                    'offer_date' => now(),
                    'status' => 'pending',
                    'created_by' => $adminId,
                    'updated_by' => $adminId,
                ]
            );
        }
    }
}
