From b051f008e007a335948cd8f3b78c1f7629a4d6ac Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期一, 31 八月 2026 13:00:05 +0800
Subject: [PATCH] fix: 菜单高亮间歇性失效根因(el-menu 同路由导航回滚 activeIndex)——default-active 绑定路由+select 后宏任务纠正;feat: 修改密码(用户自改)+ admin 重置他人密码为 123456
---
traffic-audit-web/src/views/UserManage.vue | 26 +++++++++++++++++---------
1 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/traffic-audit-web/src/views/UserManage.vue b/traffic-audit-web/src/views/UserManage.vue
index 6f9cc03..4c2651a 100644
--- a/traffic-audit-web/src/views/UserManage.vue
+++ b/traffic-audit-web/src/views/UserManage.vue
@@ -1,9 +1,9 @@
<template>
- <el-container>
- <el-header>浜ら�氱粺璁℃姤琛ㄥ鏍哥郴缁� - 鐢ㄦ埛绠$悊</el-header>
+ <el-container direction="vertical">
+ <app-header title="浜ら�氱粺璁℃姤琛ㄥ鏍哥郴缁� - 鐢ㄦ埛绠$悊"></app-header>
<el-container>
<el-aside width="200px">
- <el-menu router :default-active="activeMenu">
+ <el-menu ref="sideMenu" router :default-active="$route.path" @select="onMenuSelect">
<el-menu-item index="/dashboard">宸ヤ綔鍙�</el-menu-item>
<el-menu-item index="/import">鏁版嵁瀵煎叆</el-menu-item>
<el-menu-item index="/data">鏁版嵁鏌ョ湅</el-menu-item>
@@ -12,7 +12,6 @@
<el-menu-item index="/report">鎶ヨ〃鐢熸垚</el-menu-item>
<el-menu-item index="/rules">瑙勫垯绠$悊</el-menu-item>
<el-menu-item index="/users">鐢ㄦ埛绠$悊</el-menu-item>
- <el-menu-item index="/login" @click="logout">閫�鍑虹櫥褰�</el-menu-item>
</el-menu>
</el-aside>
<el-main>
@@ -44,6 +43,7 @@
<el-table-column label="鎿嶄綔" width="140" align="center">
<template slot-scope="{ row }">
<el-button type="text" size="mini" @click="openEdit(row)">缂栬緫</el-button>
+ <el-button v-if="isAdmin" type="text" size="mini" @click="resetPwd(row)">閲嶇疆瀵嗙爜</el-button>
<el-button type="text" size="mini" style="color:#f56c6c" @click="removeUser(row)">鍒犻櫎</el-button>
</template>
</el-table-column>
@@ -89,6 +89,7 @@
</template>
<script>
import api from '@/api'
+import AppHeader from '@/components/AppHeader.vue'
const MODULE_OPTIONS = [
{ key: 'freight', label: '璐ц繍鎶ヨ〃' },
{ key: 'passenger', label: '鍏矾鏃呭鎶ヨ〃' },
@@ -97,10 +98,10 @@
{ key: 'cityPassenger', label: '鍩庡競瀹㈣繍鎶ヨ〃' }
]
export default {
+ components: { AppHeader },
name: 'UserManage',
data() {
return {
- activeMenu: '/users',
keyword: '',
list: [],
loading: false,
@@ -114,12 +115,13 @@
}
}
},
+ computed: {
+ isAdmin() {
+ return sessionStorage.getItem('username') === 'admin'
+ }
+ },
mounted() { this.loadList() },
methods: {
- logout() {
- localStorage.removeItem('token'); localStorage.removeItem('username'); localStorage.removeItem('realName'); localStorage.removeItem('modules')
- this.$router.push('/login')
- },
loadList() {
this.loading = true
api.get('/user/list', { params: { keyword: this.keyword } })
@@ -171,6 +173,12 @@
.finally(() => { this.saving = false })
})
},
+ resetPwd(row) {
+ this.$confirm('纭畾灏嗙敤鎴枫��' + (row.realName || row.username) + '銆嶇殑瀵嗙爜閲嶇疆涓� 123456 鍚楋紵', '閲嶇疆瀵嗙爜', { type: 'warning' })
+ .then(() => api.post('/user/reset-password', { id: row.id }))
+ .then(() => { this.$message.success('宸查噸缃负 123456'); this.loadList() })
+ .catch(() => {})
+ },
removeUser(row) {
this.$confirm('纭畾鍒犻櫎鐢ㄦ埛銆�' + (row.realName || row.username) + '銆嶅悧锛�', '鍒犻櫎纭', { type: 'warning' })
.then(() => api.post('/user/delete', null, { params: { id: row.id } }))
--
Gitblit v1.9.1