not self in list
This commit is contained in:
@@ -136,6 +136,15 @@ const pageResult = reactive<PageResult<ManagedUser>>({
|
||||
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 {
|
||||
@@ -176,10 +185,11 @@ async function loadData(): Promise<void> {
|
||||
ManagedUserAPI.list(page, userListOptions.value),
|
||||
permissionStore.loadAll()
|
||||
]);
|
||||
const list = userResult.list || [];
|
||||
pageResult.total = userResult.total;
|
||||
pageResult.list = userResult.list || [];
|
||||
pageResult.list = filterCurrentUser(list);
|
||||
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> {
|
||||
@@ -203,10 +213,11 @@ async function fetch(): Promise<void> {
|
||||
isLoading.value = true;
|
||||
try {
|
||||
const result = await ManagedUserAPI.list(page, userListOptions.value);
|
||||
const list = result.list || [];
|
||||
pageResult.total = result.total;
|
||||
pageResult.list = pageResult.list.concat(result.list || []);
|
||||
pageResult.list = pageResult.list.concat(filterCurrentUser(list));
|
||||
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 {
|
||||
isLoading.value = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user