|
@@ -58,8 +58,8 @@
|
|
|
<div v-for="(val, i) in items" :key="i" :id="val.id">
|
|
|
<div class="time-box">{{ timesTampChange(+(val.timestamp.padEnd(13, '0'))) }}</div>
|
|
|
|
|
|
- <!-- <template v-if="val.payload.type === 102 && val.from_uid !== IM.uid"> -->
|
|
|
- <template v-if="val.payload.type === 102">
|
|
|
+ <!-- <template v-if="val.payload?.type === 102 && val.from_uid !== IM.uid"> -->
|
|
|
+ <template v-if="val.payload?.type === 102">
|
|
|
<v-card
|
|
|
color="teal"
|
|
|
variant="tonal"
|
|
@@ -69,12 +69,12 @@
|
|
|
:elevation="3"
|
|
|
>
|
|
|
<div class="pa-3">
|
|
|
- <div class="text-h6"> {{ val.payload.content.positionInfo.name }}</div>
|
|
|
- <div class="text-subtitle-2">薪酬待遇: {{ val.payload.content.positionInfo.payFrom }} - {{ val.payload.content.positionInfo.payTo }}</div>
|
|
|
+ <div class="text-h6"> {{ val.payload?.content.positionInfo.name }}</div>
|
|
|
+ <div class="text-subtitle-2">薪酬待遇: {{ val.payload?.content.positionInfo.payFrom }} - {{ val.payload?.content.positionInfo.payTo }}</div>
|
|
|
<div>
|
|
|
<v-chip
|
|
|
color="secondary"
|
|
|
- v-for="(v, i) in val.payload.content.positionInfo.enterprise.welfareList"
|
|
|
+ v-for="(v, i) in val.payload?.content.positionInfo.enterprise.welfareList"
|
|
|
:key="val.message_id + v + i"
|
|
|
x-small
|
|
|
class="mt-1 mr-1"
|
|
@@ -85,14 +85,14 @@
|
|
|
<v-divider class="my-3"></v-divider>
|
|
|
<div class="text-subtitle-2 text-right">
|
|
|
<v-avatar size="24">
|
|
|
- <v-img :src="val.payload.content.positionInfo.contact.avatar"></v-img>
|
|
|
+ <v-img :src="val.payload?.content.positionInfo.contact.avatar"></v-img>
|
|
|
</v-avatar>
|
|
|
- {{ val.payload.content.positionInfo.contact.name }}
|
|
|
- {{ val.payload.content.positionInfo.contact.postNameCn }}
|
|
|
- {{ val.payload.content.positionInfo.enterprise.name }}
|
|
|
+ {{ val.payload?.content.positionInfo.contact.name }}
|
|
|
+ {{ val.payload?.content.positionInfo.contact.postNameCn }}
|
|
|
+ {{ val.payload?.content.positionInfo.enterprise.name }}
|
|
|
</div>
|
|
|
<div class="text-subtitle-2 text-right">
|
|
|
- 地址:{{ val.payload.content.positionInfo.address }}
|
|
|
+ 地址:{{ val.payload?.content.positionInfo.address }}
|
|
|
</div>
|
|
|
</div>
|
|
|
</v-card>
|
|
@@ -109,36 +109,36 @@
|
|
|
</v-avatar>
|
|
|
</div>
|
|
|
<!-- 显示沟通职位 -->
|
|
|
- <template v-if="val.payload.type === 102">
|
|
|
+ <template v-if="val.payload?.type === 102">
|
|
|
<div class="message-text" :class="{ active: val.from_uid === IM.uid}">
|
|
|
- {{ val.payload.content.text }}
|
|
|
+ {{ val.payload?.content.text }}
|
|
|
</div>
|
|
|
</template>
|
|
|
<!-- 发起面试邀请 -->
|
|
|
- <div v-else-if="val.payload.type === 101">
|
|
|
+ <div v-else-if="val.payload?.type === 101">
|
|
|
<v-chip class="ma-2" color="teal" label>
|
|
|
<v-icon icon="mdi-email-newsletter" start></v-icon>
|
|
|
发起了面试邀请
|
|
|
</v-chip>
|
|
|
</div>
|
|
|
- <div v-else-if="val.payload.type === 103">
|
|
|
+ <div v-else-if="val.payload?.type === 103">
|
|
|
<v-chip class="ma-2" label color="error">
|
|
|
<v-icon icon="mdi-close" start></v-icon>
|
|
|
拒绝了面试邀请
|
|
|
</v-chip>
|
|
|
</div>
|
|
|
- <div v-else-if="val.payload.type === 104">
|
|
|
+ <div v-else-if="val.payload?.type === 104">
|
|
|
<v-chip class="ma-2" label color="primary">
|
|
|
<v-icon icon="mdi-check" start></v-icon>
|
|
|
接受了面试邀请
|
|
|
</v-chip>
|
|
|
</div>
|
|
|
<div v-else class="message-text" :class="{ active: val.from_uid === IM.uid}">
|
|
|
- {{ val.payload.content }}
|
|
|
+ {{ val.payload?.content }}
|
|
|
</div>
|
|
|
</div>
|
|
|
<!-- 插入个人-面试职位邀请:同意、拒绝 -->
|
|
|
- <div v-if="isEnterprise && val.payload.type === 101" class="d-flex justify-center">
|
|
|
+ <div v-if="isEnterprise && val.payload?.type === 101" class="d-flex justify-center">
|
|
|
<v-card
|
|
|
color="teal"
|
|
|
variant="tonal"
|
|
@@ -154,17 +154,17 @@
|
|
|
</div>
|
|
|
<div class=" d-flex justify-space-between">
|
|
|
<div class="text-h6 mb-1">
|
|
|
- {{ val.payload.content.positionInfo.data.name }}
|
|
|
+ {{ val.payload?.content.positionInfo.data.name }}
|
|
|
</div>
|
|
|
<div>
|
|
|
- {{ val.payload.content.positionInfo.data.payFrom }} -
|
|
|
- {{ val.payload.content.positionInfo.data.payTo }}
|
|
|
+ {{ val.payload?.content.positionInfo.data.payFrom }} -
|
|
|
+ {{ val.payload?.content.positionInfo.data.payTo }}
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <div class="text-caption">面试时间: {{ timesTampChange(val.payload.content?.time) }}</div>
|
|
|
- <div class="text-caption">面试地点: {{ val.payload.content.address }}</div>
|
|
|
- <div class="text-caption">联系电话: {{ val.payload.content.invitePhone }}</div>
|
|
|
+ <div class="text-caption">面试时间: {{ timesTampChange(val.payload?.content?.time) }}</div>
|
|
|
+ <div class="text-caption">面试地点: {{ val.payload?.content.address }}</div>
|
|
|
+ <div class="text-caption">联系电话: {{ val.payload?.content.invitePhone }}</div>
|
|
|
</div>
|
|
|
</v-card-item>
|
|
|
</v-card>
|