diff --git a/main/manager-web/src/apis/module/admin.js b/main/manager-web/src/apis/module/admin.js
index 52468d6b..977437ab 100644
--- a/main/manager-web/src/apis/module/admin.js
+++ b/main/manager-web/src/apis/module/admin.js
@@ -5,16 +5,19 @@ import {getServiceUrl} from '../api'
export default {
// 用户列表
getUserList(callback) {
- RequestService.sendRequest().url(`${getServiceUrl()}/api/v1/admin/users`)
+ RequestService.sendRequest()
+ .url(`${getServiceUrl()}/api/v1/admin/users`)
.method('GET')
.success((res) => {
RequestService.clearRequestTime()
callback(res)
})
- .fail(() => {
+ .fail((err) => {
+ console.error('请求失败:', err)
RequestService.reAjaxFun(() => {
- this.getList()
+ this.getUserList(callback)
})
- }).send()
- },
+ })
+ .send()
+ }
}
diff --git a/main/manager-web/src/views/UserManagement.vue b/main/manager-web/src/views/UserManagement.vue
index da8012be..b89a08b3 100644
--- a/main/manager-web/src/views/UserManagement.vue
+++ b/main/manager-web/src/views/UserManagement.vue
@@ -22,10 +22,10 @@
重置密码
禁用
+ @click="disableUser(scope.row)">禁用账户
恢复
+ @click="restoreUser(scope.row)">恢复账号
删除用户
@@ -76,25 +76,16 @@ export default {
data() {
return {
searchPhone: '',
- userList: [
- { userId: '123456', phone: '13800138000', status: '正常', deviceCount: 10 },
- { userId: '123456', phone: '13800138000', status: '正常', deviceCount: 9 },
- { userId: '123456', phone: '13800138000', status: '正常', deviceCount: 7 },
- { userId: '123456', phone: '13800138000', status: '禁用', deviceCount: 7 }
- ],
+ userList: [],
currentPage: 1,
pageSize: 5,
total: 20
};
},
created() {
- adminApi.getUserList(({data}) => {
- //mock偶尔会返回-1导致出错,又会返回两个list,所以这里只取第一个
- this.userList = data.data[0].list;
- console.log('用户列表:', this.userList);
- })
+ this.fetchUsers();
},
- computed: {
+ computed: {
pageCount() {
return Math.ceil(this.total / this.pageSize);
},
@@ -115,9 +106,37 @@ export default {
}
},
methods: {
+ // 获取用户列表
+ fetchUsers() {
+ adminApi.getUserList(({data}) => {
+ if (data.code === 0) {
+ const responseData = data.data[0] || data.data
+
+ this.userList = responseData.list.map(user => ({
+ ...user,
+ status: user.status === '1' ? '正常' : '禁用'
+ }))
+
+ this.total = responseData.totalCount || 0
+ }
+ })
+ },
+
+ // 分页变化
+ handleCurrentChange(page) {
+ this.currentPage = page;
+ this.fetchUsers();
+ },
+
+ // 搜索
handleSearch() {
- // 模拟搜索逻辑
- console.log('执行查询,搜索号码:', this.searchPhone);
+ if (!this.searchPhone) {
+ this.fetchUsers()
+ return
+ }
+ this.userList = this.userList.filter(user =>
+ user.mobile.includes(this.searchPhone)
+ )
},
batchDelete() {
console.log('执行批量删除操作');
@@ -139,10 +158,6 @@ export default {
deleteUser(row) {
console.log('删除用户:', row);
},
- handleCurrentChange(page) {
- this.currentPage = page;
- console.log('当前页码:', page);
- },
handleSizeChange(val) {
this.pageSize = val;
console.log('每页条数:', val);