Skip to content
Snippets Groups Projects
isSKUAvailable.php 598 B
Newer Older
<?php

declare (strict_types = 1);

namespace App\Rules;

use App\Models\Product;
use Illuminate\Contracts\Validation\Rule;

class isSKUAvailable implements Rule
{

    public ?int $retailer_id;
Shizuco's avatar
Shizuco committed

    public function __construct(?int $retailer_id)
    {
        $this->retailer_id = $retailer_id;
    }

    public function passes($attribute, $value)
    {
        $product = Product::where('sku', $value)->where('retailer_id', $this->retailer_id)->first();
        return (!$product) ? true : false;

    }

    public function message()
    {
        return 'This sku is already in use.';
    }
}