|
|
@@ -44,7 +44,7 @@
|
|
|
|
|
|
<el-descriptions-item label="职称">{{ employeeDetail.professionalTitle }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="照片">
|
|
|
- <img :src="employeeDetail.staffImg" style="width:80px;height: 80px;" v-if="employeeDetail.staffImg" alt="" />
|
|
|
+ <img :src="employeeDetail.staffImg" @click="preview(employeeDetail.staffImg)" class="cover" v-if="employeeDetail.staffImg" alt="" />
|
|
|
<div class="photo-placeholder" v-else></div>
|
|
|
</el-descriptions-item>
|
|
|
</el-descriptions>
|
|
|
@@ -77,6 +77,8 @@
|
|
|
<el-button @click="back">取消</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
+
|
|
|
+ <PreviewOnline ref="previewOnlineRef" />
|
|
|
</main>
|
|
|
</template>
|
|
|
|
|
|
@@ -93,7 +95,7 @@
|
|
|
import CommonTable from './commonTable.vue';
|
|
|
import CommonTable2 from './commonTable2.vue';
|
|
|
import ManageRule from './manageRule.vue';
|
|
|
-
|
|
|
+ import PreviewOnline from '@/views/disaster/components/PreviewOnline.vue';
|
|
|
const activeTab = ref(0);
|
|
|
|
|
|
const router = useRouter();
|
|
|
@@ -116,7 +118,6 @@
|
|
|
if (res) {
|
|
|
// 映射接口字段到表单字段
|
|
|
res.staffImg = res.staffImg ? JSON.parse(res.staffImg)[0].url : ''
|
|
|
- // console.log(res.staffImg)
|
|
|
Object.assign(employeeDetail, res);
|
|
|
}
|
|
|
} catch (e) {
|
|
|
@@ -124,7 +125,12 @@
|
|
|
ElMessage.error('获取详情失败');
|
|
|
}
|
|
|
};
|
|
|
-
|
|
|
+ const previewOnlineRef = ref<InstanceType<typeof PreviewOnline>>();
|
|
|
+ const preview = (url)=>{
|
|
|
+ if (url) {
|
|
|
+ previewOnlineRef.value?.open(url, 'image/*');
|
|
|
+ }
|
|
|
+ }
|
|
|
onMounted(() => {
|
|
|
getDetail();
|
|
|
});
|
|
|
@@ -165,4 +171,10 @@
|
|
|
display: flex;
|
|
|
justify-content: flex-end;
|
|
|
}
|
|
|
+ .cover {
|
|
|
+ width:80px;
|
|
|
+ height: 80px;
|
|
|
+ object-fit: cover;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
</style>
|