|
@@ -64,7 +64,6 @@
|
|
<div class="d-flex">
|
|
<div class="d-flex">
|
|
<div class="mr-10">{{ item.subTitle }}</div>
|
|
<div class="mr-10">{{ item.subTitle }}</div>
|
|
<div class="mr-10">首次工作时间: {{ timesTampChange(item.firstWorkTime, 'Y-M-D') }}</div>
|
|
<div class="mr-10">首次工作时间: {{ timesTampChange(item.firstWorkTime, 'Y-M-D') }}</div>
|
|
- <!-- <div class="mr-10">所在城市: {{ item.areaName }}</div> -->
|
|
|
|
<div v-if="item.interestedList?.length" class="mr-10 d-flex flex-wrap">
|
|
<div v-if="item.interestedList?.length" class="mr-10 d-flex flex-wrap">
|
|
<div>求职意向:</div>
|
|
<div>求职意向:</div>
|
|
<div
|
|
<div
|
|
@@ -89,121 +88,16 @@
|
|
<span v-if="j.endTimeStr"> - {{ j.endTimeStr }}</span>
|
|
<span v-if="j.endTimeStr"> - {{ j.endTimeStr }}</span>
|
|
<span v-if="j.year"> ({{ j.year }})</span>
|
|
<span v-if="j.year"> ({{ j.year }})</span>
|
|
</div>
|
|
</div>
|
|
- <div v-ellipse-tooltip class="timeline-item-name mx-3">{{ j.enterpriseName }}</div>
|
|
|
|
- <div v-ellipse-tooltip class="timeline-item-name">{{ j.positionName }}</div>
|
|
|
|
|
|
+ <div v-ellipse-tooltip class="timeline-item-name mx-3">{{ formatName(j.enterpriseName) || '' }}</div>
|
|
|
|
+ <div v-ellipse-tooltip class="timeline-item-name">{{ formatName(j.positionName) || '' }}</div>
|
|
</div>
|
|
</div>
|
|
</v-timeline-item>
|
|
</v-timeline-item>
|
|
</v-timeline>
|
|
</v-timeline>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
- <!-- <div style="padding-left: 84px;" class="pb-5 d-flex align-center">
|
|
|
|
- <div class="d-flex align-center mr-10">
|
|
|
|
- <div class="mr-3">最新职位:</div>
|
|
|
|
- <div>
|
|
|
|
- <v-chip
|
|
|
|
- class="mr-3"
|
|
|
|
- color="primary"
|
|
|
|
- >{{ item.workList[0]?.positionName ?? '暂无' }}</v-chip>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
-
|
|
|
|
- <div class="d-flex align-center">
|
|
|
|
- <div class="mr-3">求职意向:</div>
|
|
|
|
- <v-chip
|
|
|
|
- v-for="interested in item.interestedList"
|
|
|
|
- :key="interested.id"
|
|
|
|
- class="mr-3"
|
|
|
|
- color="primary"
|
|
|
|
- >{{ positionData.find(e => e.id === interested.positionId)?.nameCn ?? '暂无' }}</v-chip>
|
|
|
|
- </div>
|
|
|
|
- </div> -->
|
|
|
|
- <!-- <v-divider></v-divider> -->
|
|
|
|
- <!-- <v-card-text class="d-flex mb-10"> -->
|
|
|
|
- <!-- <div style="width: 50%;" class="d-flex align-center">
|
|
|
|
- <div class="mr-3">最新职位:</div>
|
|
|
|
- <div class="mr-10">
|
|
|
|
- <v-chip
|
|
|
|
- class="mr-3"
|
|
|
|
- color="primary"
|
|
|
|
- >{{ item.workList[0]?.positionName ?? '暂无' }}</v-chip>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
-
|
|
|
|
- <div style="width: 50%;" class="d-flex align-center">
|
|
|
|
- <div class="mr-3">求职意向</div>
|
|
|
|
- <v-chip
|
|
|
|
- v-for="interested in item.interestedList"
|
|
|
|
- :key="interested.id"
|
|
|
|
- class="mr-3"
|
|
|
|
- color="primary"
|
|
|
|
- >{{ positionData.find(e => e.id === interested.positionId)?.nameCn ?? '暂无' }}</v-chip>
|
|
|
|
- </div> -->
|
|
|
|
-
|
|
|
|
- <!-- <v-timeline truncate-line="both" side="end" class="justify-start">
|
|
|
|
- <v-timeline-item
|
|
|
|
- dot-color="primary"
|
|
|
|
- size="x-small"
|
|
|
|
- v-for="work in item.workList"
|
|
|
|
- :key="work.id"
|
|
|
|
- >
|
|
|
|
- <div class="d-flex">
|
|
|
|
- <div style="width: 200px;">
|
|
|
|
- {{ timesTampChange(work.startTime, 'Y.M.D') || '暂无' }}
|
|
|
|
- -
|
|
|
|
- {{ timesTampChange(work.endTime, 'Y.M.D') || timesTampChange(work.startTime, 'Y.M.D') ? '至今' : '暂无' }}
|
|
|
|
- </div>
|
|
|
|
- <div class="pr-3" style="min-width: 200px;">{{ work.enterpriseName }}</div>
|
|
|
|
- <div>{{ work.positionName }}</div>
|
|
|
|
- </div>
|
|
|
|
-
|
|
|
|
- </v-timeline-item>
|
|
|
|
- </v-timeline> -->
|
|
|
|
-
|
|
|
|
- <!-- <div style="width: 50%;">
|
|
|
|
- <div class="pa-3">求职意向</div>
|
|
|
|
- <v-chip
|
|
|
|
- v-for="interested in item.interestedList"
|
|
|
|
- :key="interested.id"
|
|
|
|
- class="mr-3"
|
|
|
|
- color="primary"
|
|
|
|
- >{{ positionData.find(e => e.id === interested.positionId)?.nameCn ?? '暂无' }}</v-chip>
|
|
|
|
- </div> -->
|
|
|
|
- <!-- </v-card-text> -->
|
|
|
|
</v-card>
|
|
</v-card>
|
|
</div>
|
|
</div>
|
|
<CtPagination :total="total" :page="query.pageNo" :limit="query.pageSize" @handleChange="handleChangePage"></CtPagination>
|
|
<CtPagination :total="total" :page="query.pageNo" :limit="query.pageSize" @handleChange="handleChangePage"></CtPagination>
|
|
- <!-- <CtTable
|
|
|
|
- :items="items"
|
|
|
|
- :headers="headers"
|
|
|
|
- :loading="loading"
|
|
|
|
- :elevation="0"
|
|
|
|
- :isTools="false"
|
|
|
|
- :showPage="true"
|
|
|
|
- :total="total"
|
|
|
|
- :page-info="query"
|
|
|
|
- itemKey="id"
|
|
|
|
- @pageHandleChange="handleChangePage"
|
|
|
|
- >
|
|
|
|
- <template #name="{ item }">
|
|
|
|
- <div class="d-flex align-center cursor-pointer" @click="handleToPersonDetail(item)">
|
|
|
|
- <v-badge
|
|
|
|
- v-if="item?.sex === '1' || item?.sex === '2'"
|
|
|
|
- bordered
|
|
|
|
- offset-y="6"
|
|
|
|
- :color="badgeColor(item)"
|
|
|
|
- :icon="badgeIcon(item)">
|
|
|
|
- <v-avatar size="40" :image="getUserAvatar(item.avatar, item.sex)"></v-avatar>
|
|
|
|
- </v-badge>
|
|
|
|
- <v-avatar v-else size="40" :image="getUserAvatar(item.avatar, item.sex)"></v-avatar>
|
|
|
|
- <span class="defaultLink ml-3 mt-2">{{ item?.name }}</span>
|
|
|
|
- </div>
|
|
|
|
- </template>
|
|
|
|
- <template #actions="{ item }">
|
|
|
|
- <v-btn color="primary" variant="text" @click="handleInvite(item)">邀请面试</v-btn>
|
|
|
|
- <v-btn color="primary" variant="text" @click="handleCommunicate(item)">立即沟通</v-btn>
|
|
|
|
- </template>
|
|
|
|
- </CtTable> -->
|
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<CtDialog :visible="showInvite" :widthType="4" titleClass="text-h6" title="邀请面试" @close="showInvite = false" @submit="handleSubmit">
|
|
<CtDialog :visible="showInvite" :widthType="4" titleClass="text-h6" title="邀请面试" @close="showInvite = false" @submit="handleSubmit">
|
|
@@ -231,6 +125,7 @@ import { useRouter } from 'vue-router'; const router = useRouter()
|
|
import InvitePage from '@/views/recruit/enterprise/interviewManagement/components/invite'
|
|
import InvitePage from '@/views/recruit/enterprise/interviewManagement/components/invite'
|
|
import { getDict } from '@/hooks/web/useDictionaries'
|
|
import { getDict } from '@/hooks/web/useDictionaries'
|
|
import { getTimeDifferenceInChinese } from '@/utils/date'
|
|
import { getTimeDifferenceInChinese } from '@/utils/date'
|
|
|
|
+import { formatName } from '@/utils/getText'
|
|
|
|
|
|
const textItem = ref({
|
|
const textItem = ref({
|
|
type: 'text',
|
|
type: 'text',
|