diff --git a/app/Http/Requests/Bo/AppUser/StoreAppUserRequest.php b/app/Http/Requests/Bo/AppUser/StoreAppUserRequest.php index fccb312..fe5a141 100644 --- a/app/Http/Requests/Bo/AppUser/StoreAppUserRequest.php +++ b/app/Http/Requests/Bo/AppUser/StoreAppUserRequest.php @@ -4,6 +4,7 @@ namespace App\Http\Requests\Bo\AppUser; use App\Enums\AppUserRolesEnum; use App\Models\AppUser; +use Illuminate\Database\Query\Builder; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Support\Facades\Gate; use Illuminate\Support\Str; @@ -49,7 +50,7 @@ class StoreAppUserRequest extends FormRequest 'email' => [ 'required', 'email:rfc,strict,dns,spoof,filter', - Rule::unique('app_users', 'email')->where('tenant_id', tenant('id')) + Rule::unique('app_users', 'email')->where(fn (Builder $query) => $query->where('tenant_id', tenant('id'))) ], 'password' => [ 'required', diff --git a/app/Http/Requests/Bo/AppUser/UpdateAppUserRequest.php b/app/Http/Requests/Bo/AppUser/UpdateAppUserRequest.php index 3a4be8a..67cf4ab 100644 --- a/app/Http/Requests/Bo/AppUser/UpdateAppUserRequest.php +++ b/app/Http/Requests/Bo/AppUser/UpdateAppUserRequest.php @@ -5,6 +5,7 @@ namespace App\Http\Requests\Bo\AppUser; use Illuminate\Support\Facades\Gate; use Illuminate\Validation\Rule; use Illuminate\Validation\Rules\Password; +use Illuminate\Database\Query\Builder; class UpdateAppUserRequest extends StoreAppUserRequest { @@ -32,8 +33,8 @@ class UpdateAppUserRequest extends StoreAppUserRequest 'max:255', 'email:rfc,dns', Rule::unique('app_users', 'email') - ->where('tenant_id', tenant('id')) - ->ignore($this->route('app_user')->getKey()), + ->where(fn (Builder $query) => $query->where('tenant_id', tenant('id'))) + ->ignore($this->route('app_user')->getKey()) ], 'password' => [ 'sometimes', 'nullable', 'required_with:password_confirmation', 'confirmed', 'max:255', diff --git a/app/Models/AppUser.php b/app/Models/AppUser.php index fda6505..b60e63d 100644 --- a/app/Models/AppUser.php +++ b/app/Models/AppUser.php @@ -7,7 +7,6 @@ use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Support\Facades\Hash; use Stancl\Tenancy\Database\Concerns\BelongsToTenant; -use Uwil\LaravelCommon\Helpers\ToolboxHelper; /** * @property integer $id App user id. @@ -70,7 +69,6 @@ class AppUser extends Model protected static function booted(): void { static::creating(function (self $model) { - self::assertFieldIsUnique('email', $model->email); self::setOrder($model); self::updatePassword($model); }); @@ -94,20 +92,6 @@ class AppUser extends Model } } - /** - * Asserts using validation that the field is unique. - * - * @param string $nameField - * @param string $valueField - * @param integer|null $id - * @return void - */ - private static function assertFieldIsUnique(string $nameField, string $valueField, ?int $id = null): void - { - $table = (new self())->getTable(); - ToolboxHelper::assertFieldIsUnique($table, $nameField, $valueField, $id); - } - /** * Set order after the last element of the list. *