优化会员限制

This commit is contained in:
kuaifan 2021-12-10 06:34:21 +08:00
parent 7ef966536d
commit 7e67fa3076
6 changed files with 42 additions and 9 deletions

View File

@ -5,6 +5,7 @@ namespace App\Exceptions;
use App\Module\Base;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Illuminate\Support\Facades\Log;
use Throwable;
class Handler extends ExceptionHandler
@ -57,4 +58,18 @@ class Handler extends ExceptionHandler
}
return parent::render($request, $e);
}
/**
* 重写report优雅记录laravel日志
* @param Throwable $e
* @throws Throwable
*/
public function report(Throwable $e)
{
if ($e instanceof ApiException) {
Log::error($e->getMessage(), ['exception' => ' at ' . $e->getFile() .':' . $e->getLine()]);
} else {
parent::report($e);
}
}
}

View File

@ -210,6 +210,7 @@ class UsersController extends AbstractController
{
$user = User::auth();
$data = Request::all();
$user->checkSystem(1);
//头像
if (Arr::exists($data, 'userimg')) {
$userimg = Request::input('userimg');
@ -267,6 +268,7 @@ class UsersController extends AbstractController
public function editpass()
{
$user = User::auth();
$user->checkSystem();
//
$oldpass = trim(Request::input('oldpass'));
$newpass = trim(Request::input('newpass'));
@ -279,15 +281,6 @@ class UsersController extends AbstractController
return Base::retError('新旧密码一致');
}
//
if (env("PASSWORD_ADMIN") == 'disabled') {
if ($user->userid == 1) {
return Base::retError('当前环境禁止修改密码');
}
}
if (env("PASSWORD_OWNER") == 'disabled') {
return Base::retError('当前环境禁止修改密码');
}
//
$verify = User::whereUserid($user->userid)->wherePassword(Base::md52($oldpass, User::token2encrypt()))->count();
if (empty($verify)) {
return Base::retError('请填写正确的旧密码');
@ -462,6 +455,7 @@ class UsersController extends AbstractController
if (empty($userInfo)) {
return Base::retError('会员不存在或已被删除');
}
$userInfo->checkSystem(1);
//
$upArray = [];
switch ($type) {

View File

@ -145,6 +145,24 @@ class User extends AbstractModel
}
}
/**
* 检查环境是否允许
* @param null $onlyUserid 仅指定会员
*/
public function checkSystem($onlyUserid = null)
{
if ($onlyUserid && $onlyUserid != $this->userid) {
return;
}
if (env("PASSWORD_ADMIN") == 'disabled') {
if ($this->userid == 1) {
throw new ApiException('当前环境禁止此操作');
}
}
if (env("PASSWORD_OWNER") == 'disabled') {
throw new ApiException('当前环境禁止此操作');
}
}
/** ***************************************************************************************** */
/** ***************************************************************************************** */

View File

@ -78,6 +78,8 @@ export default {
url: 'system/get/appinfo',
}).then(({data}) => {
this.downList = data.list;
}).catch(() => {
this.downList = [];
});
},

View File

@ -124,6 +124,8 @@ export default {
},
}).then(({data}) => {
this.read_list = data;
}).catch(() => {
this.read_list = [];
});
},

View File

@ -219,6 +219,8 @@ export default {
url: 'system/get/appinfo',
}).then(({data}) => {
this.downList = data.list;
}).catch(() => {
this.downList = [];
});
},