|
@@ -13,7 +13,7 @@
|
|
|
offset-y="33"
|
|
|
:color="baseInfo?.sex ? (baseInfo?.sex === '1' ? '#1867c0' : 'error') : 'error'"
|
|
|
:icon="baseInfo?.sex ? (baseInfo?.sex === '1' ? 'mdi-gender-male' : 'mdi-gender-female') : 'mdi-gender-female'">
|
|
|
- <v-avatar size=80 :image="baseInfo.avatar || 'https://minio.citupro.com/dev/menduner/7.png'">
|
|
|
+ <v-avatar size=80 :image="baseInfo?.avatar || 'https://minio.citupro.com/dev/menduner/7.png'">
|
|
|
</v-avatar>
|
|
|
<div v-show="showIcon" @click="openFileInput" v-bind="$attrs" class="mdi mdi-camera-outline">
|
|
|
<input
|
|
@@ -55,48 +55,48 @@
|
|
|
</div>
|
|
|
<!-- 展示 -->
|
|
|
<div v-else>
|
|
|
- <span style="font-size: 20px; font-weight: 600;color: #666;">{{ baseInfo.name }}</span>
|
|
|
+ <span style="font-size: 20px; font-weight: 600;color: #666;">{{ baseInfo?.name }}</span>
|
|
|
<div class="mt-3 d-flex">
|
|
|
<div class="listBox" :style="{ height: isExpand ? 'auto' : '68px' }">
|
|
|
<div>
|
|
|
<span class="mdi mdi-map-marker-outline"></span>
|
|
|
- <span>{{ baseInfo.areaName || '暂无' }}</span>
|
|
|
+ <span>{{ baseInfo?.areaName || '暂无' }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="mdi mdi-phone-outline"></span>
|
|
|
- <span>{{ baseInfo.phone }}</span>
|
|
|
+ <span>{{ baseInfo?.phone }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="mdi mdi-email-outline"></span>
|
|
|
- <span>{{ baseInfo.email }}</span>
|
|
|
+ <span>{{ baseInfo?.email }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="mdi mdi-calendar-blank-outline"></span>
|
|
|
- <span>{{ baseInfo.expTypeText }}</span>
|
|
|
+ <span>{{ baseInfo?.expTypeText }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="mdi mdi-school-outline"></span>
|
|
|
- <span>{{ baseInfo.eduTypeText }}</span>
|
|
|
+ <span>{{ baseInfo?.eduTypeText }}</span>
|
|
|
</div>
|
|
|
<!-- <div>
|
|
|
<span class="mdi mdi-briefcase-outline"></span>
|
|
|
- <span>{{ baseInfo.jobTypeText }}</span>
|
|
|
+ <span>{{ baseInfo?.jobTypeText }}</span>
|
|
|
</div> -->
|
|
|
<div>
|
|
|
<span class="mdi mdi-tag-outline"></span>
|
|
|
- <span>{{ baseInfo.jobStatusText }}</span>
|
|
|
+ <span>{{ baseInfo?.jobStatusText }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="mdi mdi-cake-variant-outline"></span>
|
|
|
- <span>{{ baseInfo.birthdayText }}</span>
|
|
|
+ <span>{{ baseInfo?.birthdayText }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="mdi mdi-account-heart"></span>
|
|
|
- <span>{{ baseInfo.maritalText }}</span>
|
|
|
+ <span>{{ baseInfo?.maritalText }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span>{{ $t('resume.firstWorkTime') }}:</span>
|
|
|
- <span>{{ baseInfo.firstWorkTimeText }}</span>
|
|
|
+ <span>{{ baseInfo?.firstWorkTimeText }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="ml-3">
|
|
@@ -137,7 +137,7 @@ const isExpand = ref(false)
|
|
|
const welfareList = ref(['热情活泼', '理性冷静', '富有创新', '热爱生活', '有幽默感'])
|
|
|
let baseInfo = ref({})
|
|
|
const getBasicInfo = () => { // 获取基础信息
|
|
|
- baseInfo.value = JSON.parse(localStorage.getItem('baseInfo')) // 人才信息
|
|
|
+ baseInfo.value = JSON.parse(localStorage.getItem('baseInfo')) || {} // 人才信息
|
|
|
}
|
|
|
getBasicInfo()
|
|
|
|
|
@@ -161,7 +161,7 @@ const handleUploadFile = async (e) => {
|
|
|
Snackbar.success(t('common.uploadSucMsg'))
|
|
|
// 保存信息
|
|
|
await saveResumeBasicInfo({ ...baseInfo.value, avatar: data })
|
|
|
- await userStore.getUserBaseInfos(baseInfo.value.userId)
|
|
|
+ if (baseInfo.value.userId) await userStore.getUserBaseInfos(baseInfo.value.userId)
|
|
|
getBasicInfo()
|
|
|
}
|
|
|
|
|
@@ -333,7 +333,7 @@ const handleSave = async () => {
|
|
|
Snackbar.success(t('common.saveMsg'))
|
|
|
isEdit.value = false
|
|
|
// 获取当前登录账户信息
|
|
|
- await userStore.getUserBaseInfos(baseInfo.value.userId)
|
|
|
+ if (baseInfo.value.userId) await userStore.getUserBaseInfos(baseInfo.value.userId)
|
|
|
await getBasicInfo()
|
|
|
}
|
|
|
|
|
@@ -363,11 +363,12 @@ formItems.value.options.forEach((e, index) => {
|
|
|
if ((index + 2) % 2 === 0) e.flexStyle = 'mr-3'
|
|
|
if (e.dictTypeName) getDictData(e.dictTypeName) // 查字典set options
|
|
|
// formItems回显
|
|
|
- if (baseInfo.value[e.key]) e.value = baseInfo.value[e.key]
|
|
|
+ const infoExist = baseInfo.value && Object.keys(baseInfo.value).length
|
|
|
+ if (infoExist && baseInfo.value[e.key]) e.value = baseInfo.value[e.key]
|
|
|
// 日期相关
|
|
|
if (e.type === 'datepicker') e.value = timesTampChange(e.value).slice(0, 10)
|
|
|
// 所在城市回显
|
|
|
- if (e.nameKey) e[e.nameKey] = baseInfo.value[e.nameKey]
|
|
|
+ if (infoExist && e.nameKey) e[e.nameKey] = baseInfo.value[e.nameKey]
|
|
|
})
|
|
|
</script>
|
|
|
|