not self in list
This commit is contained in:
@@ -136,6 +136,15 @@ const pageResult = reactive<PageResult<ManagedUser>>({
|
|||||||
list: []
|
list: []
|
||||||
});
|
});
|
||||||
|
|
||||||
|
function isCurrentUser(item: ManagedUser): boolean {
|
||||||
|
const loginUserId = userStore.loginUser.user?.id || userStore.loginUser.id;
|
||||||
|
return !!loginUserId && (item.userId === loginUserId || item.user?.id === loginUserId);
|
||||||
|
}
|
||||||
|
|
||||||
|
function filterCurrentUser(list: ManagedUser[]): ManagedUser[] {
|
||||||
|
return list.filter(item => !isCurrentUser(item));
|
||||||
|
}
|
||||||
|
|
||||||
// ---------- 展示文案 ----------
|
// ---------- 展示文案 ----------
|
||||||
|
|
||||||
function getUserName(item: ManagedUser): string {
|
function getUserName(item: ManagedUser): string {
|
||||||
@@ -176,10 +185,11 @@ async function loadData(): Promise<void> {
|
|||||||
ManagedUserAPI.list(page, userListOptions.value),
|
ManagedUserAPI.list(page, userListOptions.value),
|
||||||
permissionStore.loadAll()
|
permissionStore.loadAll()
|
||||||
]);
|
]);
|
||||||
|
const list = userResult.list || [];
|
||||||
pageResult.total = userResult.total;
|
pageResult.total = userResult.total;
|
||||||
pageResult.list = userResult.list || [];
|
pageResult.list = filterCurrentUser(list);
|
||||||
page.index = 1;
|
page.index = 1;
|
||||||
isNoMore.value = pageResult.list.length >= pageResult.total || pageResult.list.length < page.size;
|
isNoMore.value = pageResult.list.length >= pageResult.total || list.length < page.size;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function refresh(): Promise<void> {
|
async function refresh(): Promise<void> {
|
||||||
@@ -203,10 +213,11 @@ async function fetch(): Promise<void> {
|
|||||||
isLoading.value = true;
|
isLoading.value = true;
|
||||||
try {
|
try {
|
||||||
const result = await ManagedUserAPI.list(page, userListOptions.value);
|
const result = await ManagedUserAPI.list(page, userListOptions.value);
|
||||||
|
const list = result.list || [];
|
||||||
pageResult.total = result.total;
|
pageResult.total = result.total;
|
||||||
pageResult.list = pageResult.list.concat(result.list || []);
|
pageResult.list = pageResult.list.concat(filterCurrentUser(list));
|
||||||
page.index += 1;
|
page.index += 1;
|
||||||
isNoMore.value = pageResult.list.length >= pageResult.total || (result.list || []).length < page.size;
|
isNoMore.value = pageResult.list.length >= pageResult.total || list.length < page.size;
|
||||||
} finally {
|
} finally {
|
||||||
isLoading.value = false;
|
isLoading.value = false;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user