const getAsyncResolveStatus = (row: SiteData) => {
row.resolve_loading = true
return site_resolve_status({ id: row.id })
.then(res => {
row.resolve_status = res.resolving_status
})
.finally(() => (row.resolve_loading = false))
}
const getList = () => {
if (isGettingList.value) {
return
}
isGettingList.value = true
stateInfo.listLoading = true
site_list({ ...state, ...stateInfo.pagination })
.then((res: any) => {
stateInfo.list = res?.list ?? []
stateInfo.list.forEach((item: any) => {
item.loading = false
item.resolve_loading = false
item.resolve_status = 0
})
stateInfo.pagination.total = +res?.total ?? 0
Promise.all(stateInfo.list.map((v, i) => getAsyncResolveStatus(v, i)))
})
.finally(async () => {
stateInfo.listLoading = false
for (let i = 0; i < stateInfo.list.length; i++) {
await getAsyncResolveStatus(stateInfo.list[i] as any)
}
isGettingList.value = false
})
}