管理员重置密码

菜单滚动条BUG
START
鹿和sa0ChunLuyu 2 years ago
parent 158c08b441
commit 6ca2ceb64e

@ -20,6 +20,10 @@ const urlPick = () => {
}
}
urlPick()
export const AdminResetPasswordAction = async (data) => await $post({
url: `${url}/api/${app_name}/Admin/reset_password`,
data
}, true)
export const ConfigCreateAction = async (data) => await $post({
url: `${url}/api/${app_name}/Config/create`,
data

@ -41,44 +41,46 @@ const menuItemClick = (name) => {
<template>
<div>
<div class="aside_menu_wrapper">
<el-menu @select="menuItemClick" :default-active="default_active" :collapse="$collapsed"
background-color="#ffffff00">
<el-menu-item index="index">
<el-icon>
<Icon type="home"></Icon>
</el-icon>
<span>首页</span>
</el-menu-item>
<template v-for="(i,k) in menu_list">
<el-sub-menu v-if="i.children.length > 1" :index="i.name" :disabled="i.status === 2">
<template #title>
<el-scrollbar height="calc(100vh - 56px)">
<el-menu @select="menuItemClick" :default-active="default_active" :collapse="$collapsed"
background-color="#ffffff00">
<el-menu-item index="index">
<el-icon>
<Icon type="home"></Icon>
</el-icon>
<span>首页</span>
</el-menu-item>
<template v-for="(i,k) in menu_list">
<el-sub-menu v-if="i.children.length > 1" :index="i.name" :disabled="i.status === 2">
<template #title>
<el-icon>
<Icon :type="i.icon"></Icon>
</el-icon>
<span>{{ i.title }}</span>
</template>
<el-menu-item v-for="(ii,kk) in i.children" :index="ii.name" :key="kk" :disabled="ii.status === 2">
<el-icon>
<Icon :type="ii.icon"></Icon>
</el-icon>
<span>{{ ii.title }}</span>
</el-menu-item>
</el-sub-menu>
<el-menu-item v-if="i.children.length === 1" :index="i.children[0].name"
:disabled="i.status === 2 || i.children[0].status === 2">
<el-icon>
<Icon :type="i.icon"></Icon>
<Icon :type="i.children[0].icon"></Icon>
</el-icon>
<span>{{ i.title }}</span>
</template>
<el-menu-item v-for="(ii,kk) in i.children" :index="ii.name" :key="kk" :disabled="ii.status === 2">
<span>{{ i.children[0].title }}</span>
</el-menu-item>
<el-menu-item v-if="i.children.length === 0" :index="i.name" :disabled="i.status === 2">
<el-icon>
<Icon :type="ii.icon"></Icon>
<Icon :type="i.icon"></Icon>
</el-icon>
<span>{{ ii.title }}</span>
<span>{{ i.title }}</span>
</el-menu-item>
</el-sub-menu>
<el-menu-item v-if="i.children.length === 1" :index="i.children[0].name"
:disabled="i.status === 2 || i.children[0].status === 2">
<el-icon>
<Icon :type="i.children[0].icon"></Icon>
</el-icon>
<span>{{ i.children[0].title }}</span>
</el-menu-item>
<el-menu-item v-if="i.children.length === 0" :index="i.name" :disabled="i.status === 2">
<el-icon>
<Icon :type="i.icon"></Icon>
</el-icon>
<span>{{ i.title }}</span>
</el-menu-item>
</template>
</el-menu>
</template>
</el-menu>
</el-scrollbar>
</div>
</div>
</template>
@ -95,7 +97,7 @@ const menuItemClick = (name) => {
color: var(--el-menu-active-color);
}
.aside_menu_wrapper > .el-menu {
.aside_menu_wrapper .el-menu {
border: none;
}
</style>

@ -9,6 +9,7 @@ import {
AdminUpdateAction,
AdminDeleteAction,
AdminListAction,
AdminResetPasswordAction,
AdminAuthGroupSelectAction,
$image,
$response, $base64, UploadImageAction
@ -146,13 +147,13 @@ const AdminDelete = async () => {
}
const deleteClick = () => {
window.$box.confirm(
'是否确认删除该管理员?',
'提示',
{
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}
'是否确认删除该管理员?',
'提示',
{
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}
).then(() => {
AdminDelete()
}).catch(() => {
@ -190,6 +191,34 @@ ${copy_data.value.initial_password === 1 ? '请务必' : '建议'}在登录后
window.$message().success('内容已复制')
})
}
const resetPasswordClick = () => {
window.$box.confirm(
'是否确认重置该管理员的密码?',
'提示',
{
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}
).then(() => {
AdminResetPassword()
}).catch(() => {
})
}
const AdminResetPassword = async () => {
const response = await AdminResetPasswordAction({
id: edit_data.value.id
})
$response(response, () => {
copy_data.value = JSON.parse(JSON.stringify({
...edit_data.value,
password: response.data.password
}))
copy_show.value = true
})
}
</script>
<template>
<div>
@ -368,6 +397,7 @@ ${copy_data.value.initial_password === 1 ? '请务必' : '建议'}在登录后
<el-button @click="editClick(0)" type="primary">新建</el-button>
<el-button :disabled="edit_data.id === 0" @click="editClick(1)" type="success">编辑</el-button>
<el-button :disabled="edit_data.id === 0" @click="deleteClick()" type="danger">删除</el-button>
<el-button :disabled="edit_data.id === 0" @click="resetPasswordClick()" type="warning">重置密码</el-button>
</div>
<el-table row-class-name="cursor-pointer" mt-2 border :data="admin_list" highlight-current-row
style="width: 100%"

@ -15,6 +15,24 @@ use Illuminate\Support\Str;
class AdminController extends Controller
{
public function reset_password(Request $request)
{
Login::admin([5]);
$id = $request->post('id');
$admin = Admin::where('id', $id)->where('del', 2)->first();
if (!$admin) Yo::error_echo(100001, ['管理员']);
$admin_account = AdminAccount::where('admin', Login::$info->id)->where('del', 2)->first();
if (!$admin_account) Yo::error_echo(100001, ['管理员']);
$password = Str::password(16);
$admin->initial_password = 1;
$admin->save();
$admin_account->secret = bcrypt($password);
$admin_account->save();
return Yo::echo([
'password' => $password
]);
}
public function create(EditAdmin $request)
{
Login::admin([5]);

@ -16,6 +16,7 @@ $admin_path = 'Admin';
Route::get("open/Gzh/auth/{app_id}", [\App\Http\Controllers\WeChatController::class, 'auth']);
Route::post("api/Test/WeChat/login_test", [\App\Http\Controllers\WeChatController::class, 'login_test']);
Route::post("api/$admin_path/Admin/reset_password", [\App\Http\Controllers\AdminController::class, 'reset_password']);
Route::post("api/$admin_path/Config/create", [\App\Http\Controllers\ConfigController::class, 'create']);
Route::post("api/$admin_path/Config/update", [\App\Http\Controllers\ConfigController::class, 'update']);
Route::post("api/$admin_path/Config/delete", [\App\Http\Controllers\ConfigController::class, 'delete']);

@ -1,6 +1,6 @@
const config = [{
active: true,
url: 'http://lucode3.sa0.online',
url: 'http://127.0.0.1:8000',
gzh: {
id: '',
jump: 'http://127.0.0.1:5173/h5/#/pages/gzh/login/login?',

Loading…
Cancel
Save