webman迁移-优化

This commit is contained in:
2026-03-18 15:10:40 +08:00
parent ea77c7b3a1
commit e2ae55319e
70 changed files with 1278 additions and 137 deletions

View File

@@ -62,7 +62,7 @@ class Account extends Frontend
try {
Validator::make($data, [
'username' => 'required|string|regex:/^[a-zA-Z][a-zA-Z0-9_]{2,15}$/|unique:user,username,' . $this->auth->id,
'username' => 'required|string|regex:/^[a-zA-Z][a-zA-Z0-9_]{2,15}$/',
'nickname' => 'required|string|regex:/^[\x{4e00}-\x{9fa5}a-zA-Z0-9_-]+$/u',
'birthday' => 'nullable|date',
], [
@@ -72,6 +72,11 @@ class Account extends Frontend
return $this->error($e->getMessage());
}
$existUser = User::where('username', $data['username'])->where('id', '<>', $this->auth->id)->find();
if ($existUser) {
return $this->error(__('Username') . ' ' . __('already exists'));
}
$model->startTrans();
try {
$model->save($data);
@@ -126,11 +131,18 @@ class Account extends Frontend
}
if ($captcha->check($params['captcha'], $params[$params['type']] . "user_change_{$params['type']}")) {
$rules = $params['type'] == 'email'
? ['email' => 'required|email|unique:user,email']
: ['mobile' => 'required|regex:/^1[3-9]\d{9}$/|unique:user,mobile'];
try {
Validator::make($params, $rules)->validate();
if ($params['type'] == 'email') {
Validator::make($params, ['email' => 'required|email'])->validate();
if (User::where('email', $params['email'])->find()) {
return $this->error(__('Email') . ' ' . __('already exists'));
}
} else {
Validator::make($params, ['mobile' => 'required|regex:/^1[3-9]\d{9}$/'])->validate();
if (User::where('mobile', $params['mobile'])->find()) {
return $this->error(__('Mobile') . ' ' . __('already exists'));
}
}
} catch (ValidationException $e) {
return $this->error(__($e->getMessage()));
}