账号问题新增

This commit is contained in:
杨志
2026-01-21 11:44:35 +08:00
parent bc622c6c34
commit 05d383e010
6 changed files with 368 additions and 33 deletions

View File

@@ -26,7 +26,7 @@ class Admin extends BaseController
// 对于API方法直接检查权限并设置响应头
$action = $this->request->action();
$apiActions = ['getUsers', 'getBaseUrl', 'addUser', 'deleteUser', 'setBaseUrl'];
$apiActions = ['getUsers', 'getBaseUrl', 'addUser', 'deleteUser', 'setBaseUrl', 'resetUserPassword'];
if (in_array($action, $apiActions)) {
// 检查登录状态
@@ -178,4 +178,20 @@ class Admin extends BaseController
return json($result);
}
/**
* 重置普通用户密码(管理员)
*/
public function resetUserPassword()
{
header('Content-Type: application/json; charset=utf-8');
$username = $this->request->param('username', '');
$newPassword = $this->request->param('new_password', '');
$service = new UserService();
$result = $service->resetUserPassword($username, $newPassword);
return json($result);
}
}

View File

@@ -7,6 +7,7 @@ use app\BaseController;
use app\middleware\Auth;
use app\service\CrawlerService;
use app\service\UserConfigService;
use app\service\UserService;
use think\facade\Session;
use think\facade\View;
@@ -87,6 +88,32 @@ class Crawler extends BaseController
}
}
/**
* 用户修改密码
*/
public function changePassword()
{
try {
$username = Session::get('username', '');
if (empty($username)) {
return json(['code' => 0, 'msg' => '未登录']);
}
$old = $this->request->param('old_password', '');
$new = $this->request->param('new_password', '');
if (empty($old) || empty($new)) {
return json(['code' => 0, 'msg' => '旧密码和新密码不能为空']);
}
$service = new UserService();
$result = $service->changeUserPassword($username, $old, $new);
return json($result);
} catch (\Exception $e) {
return json(['code' => 0, 'msg' => '修改失败: ' . $e->getMessage()]);
}
}
/**
* 保存用户配置
*/