|
@@ -36,7 +36,7 @@
|
|
|
|
|
|
<v-window v-model="tab" class="mt-1">
|
|
|
<v-window-item v-for="k in tabList" :value="k.value" :key="k.value">
|
|
|
- <TablePage :items="items" :total="total" :pageInfo="query" :tab="k.value" :statusList="statusList" @refresh="getList" @page="handleChangePage"></TablePage>
|
|
|
+ <TablePage v-loading="loading" :items="items" :total="total" :pageInfo="query" :tab="k.value" :statusList="statusList" @refresh="getList" @page="handleChangePage"></TablePage>
|
|
|
</v-window-item>
|
|
|
</v-window>
|
|
|
</v-card>
|
|
@@ -92,30 +92,36 @@ getDict('menduner_interview_invite_status').then(({data}) => {
|
|
|
})
|
|
|
|
|
|
// 获取牛人列表
|
|
|
+const loading = ref(false)
|
|
|
const items = ref([])
|
|
|
const getList = async () => {
|
|
|
- const api = tabList.value[tab.value].api
|
|
|
- if (tab.value !== 0) {
|
|
|
- query.value.conversationStatus = tabList.value[tab.value].status
|
|
|
- delete query.value.status
|
|
|
- delete query.value.type
|
|
|
+ try {
|
|
|
+ loading.value = true
|
|
|
+ const api = tabList.value[tab.value].api
|
|
|
+ if (tab.value !== 0) {
|
|
|
+ query.value.conversationStatus = tabList.value[tab.value].status
|
|
|
+ delete query.value.status
|
|
|
+ delete query.value.type
|
|
|
+ }
|
|
|
+
|
|
|
+ const { list, total: number } = await api(query.value)
|
|
|
+ if (!list.length) {
|
|
|
+ items.value = []
|
|
|
+ total.value = 0
|
|
|
+ return
|
|
|
+ }
|
|
|
+ total.value = number
|
|
|
+ items.value = list.map(e => {
|
|
|
+ let obj = e
|
|
|
+ obj.jobClosed = e?.job?.status === '1' || false // 职位已关闭
|
|
|
+ if (e.person) obj.person = Object.assign(e.person, dealDictObjData({}, e.person))
|
|
|
+ obj.job = Object.assign(e.job, dealDictObjData({}, e.job))
|
|
|
+ obj.createTime = timesTampChange(e.createTime, 'Y-M-D h:m')
|
|
|
+ return obj
|
|
|
+ })
|
|
|
+ } finally {
|
|
|
+ loading.value = false
|
|
|
}
|
|
|
-
|
|
|
- const { list, total: number } = await api(query.value)
|
|
|
- if (!list.length) {
|
|
|
- items.value = []
|
|
|
- total.value = 0
|
|
|
- return
|
|
|
- }
|
|
|
- total.value = number
|
|
|
- items.value = list.map(e => {
|
|
|
- let obj = e
|
|
|
- obj.jobClosed = e?.job?.status === '1' || false // 职位已关闭
|
|
|
- if (e.person) obj.person = Object.assign(e.person, dealDictObjData({}, e.person))
|
|
|
- obj.job = Object.assign(e.job, dealDictObjData({}, e.job))
|
|
|
- obj.createTime = timesTampChange(e.createTime, 'Y-M-D h:m')
|
|
|
- return obj
|
|
|
- })
|
|
|
}
|
|
|
// 没有带id时一进来才刷新,带id由组件传值刷新
|
|
|
if (!route.query?.id) getList()
|