fix: Fix AppUser Bo Requests email validation
This commit is contained in:
parent
8696765b7e
commit
3b93c4c49b
3 changed files with 5 additions and 19 deletions
|
|
@ -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',
|
||||
|
|
|
|||
|
|
@ -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',
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
*
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue