|
@@ -2,14 +2,13 @@
|
|
|
import { useQuery } from '@tanstack/vue-query'
|
|
|
import { getRecordsDetail } from '@/api/oa/staffRecords'
|
|
|
import { useUserStore } from '@/store/modules/user'
|
|
|
+import { formConfigList } from './index'
|
|
|
|
|
|
const userId = useUserStore().getUser.id // 当前登录的编号
|
|
|
|
|
|
const { data } = useQuery(['fetch-staff-detail', userId], async () => {
|
|
|
return await getRecordsDetail({ userId })
|
|
|
})
|
|
|
-/** 初始化 **/
|
|
|
-onMounted(() => {})
|
|
|
|
|
|
const tableData = [
|
|
|
// {
|
|
@@ -27,125 +26,81 @@ const tableData = [
|
|
|
]
|
|
|
</script>
|
|
|
<template>
|
|
|
- <div class="my-portrait">
|
|
|
- <!-- <ElResult title="加载中">
|
|
|
- </ElResult> -->
|
|
|
- <div>
|
|
|
- <div class="my-portrait-item">
|
|
|
+ <div class="my-portrait form-unable-edit">
|
|
|
+ <el-form ref="formRef" :model="data" label-width="150px" :disabled="true">
|
|
|
+ <div class="my-portrait-item" v-for="(item, index) in formConfigList" :key="index">
|
|
|
<div class="title">
|
|
|
<i></i>
|
|
|
- <span>基本信息</span>
|
|
|
- </div>
|
|
|
- <div class="my-portrait-card">
|
|
|
- <ul>
|
|
|
- <li>
|
|
|
- <span>出生日期</span>
|
|
|
- <span>{{ data?.birthday }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>户口性质</span>
|
|
|
- <span>{{ data?.hkxz }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>婚姻状况</span>
|
|
|
- <span>{{ data?.hyzk }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>民族</span>
|
|
|
- <span>{{ data?.nation }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>参加工作时间</span>
|
|
|
- <span>{{ data?.cjgzsj }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>政治面貌</span>
|
|
|
- <span>{{ data?.zzmm }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>现居住地址</span>
|
|
|
- <span>{{ data?.xjzdz }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>户口所在地</span>
|
|
|
- <span>{{ data?.hkszd }}</span>
|
|
|
- </li>
|
|
|
- </ul>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="my-portrait-item">
|
|
|
- <div class="title">
|
|
|
- <i></i>
|
|
|
- <span>教育信息</span>
|
|
|
+ <span>{{ item.title }}</span>
|
|
|
</div>
|
|
|
+
|
|
|
<div class="my-portrait-card">
|
|
|
<ul>
|
|
|
- <li>
|
|
|
- <span>毕业院校</span>
|
|
|
- <span>{{ data?.byxx }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>毕业时间</span>
|
|
|
- <span>{{ data?.bysj }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>最高学历</span>
|
|
|
- <span>{{ data?.zgxl }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>专业</span>
|
|
|
- <span>{{ data?.major }}</span>
|
|
|
+ <li v-for="(child, c) in item.children" :key="c">
|
|
|
+ <el-form-item :label="`${child.title}`" :prop="child.name">
|
|
|
+ <el-date-picker
|
|
|
+ v-if="child.type === 'time'"
|
|
|
+ v-model="data[child?.name]"
|
|
|
+ style="width: 100%"
|
|
|
+ placeholder=""
|
|
|
+ type="date"
|
|
|
+ />
|
|
|
+
|
|
|
+ <el-select
|
|
|
+ v-if="child.type === 'select'"
|
|
|
+ v-model="data[child?.name]"
|
|
|
+ style="width: 100%"
|
|
|
+ placeholder="-"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="opt in child.options"
|
|
|
+ :key="opt.value"
|
|
|
+ :label="opt.label"
|
|
|
+ :value="opt.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+
|
|
|
+ <el-input
|
|
|
+ v-if="child?.type === undefined"
|
|
|
+ v-model="data[child?.name]"
|
|
|
+ placeholder=""
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
</li>
|
|
|
+ <li></li>
|
|
|
</ul>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="my-portrait-item">
|
|
|
- <div class="title">
|
|
|
- <i></i>
|
|
|
- <span>紧急联系人信息</span>
|
|
|
- </div>
|
|
|
- <div class="my-portrait-card">
|
|
|
- <ul>
|
|
|
- <li>
|
|
|
- <span>紧急联系人姓名</span>
|
|
|
- <span>{{ data?.jjlxrxm }}</span>
|
|
|
- </li>
|
|
|
- <li>
|
|
|
- <span>紧急联系人电话</span>
|
|
|
- <span>{{ data?.jjlxrhm }}</span>
|
|
|
- </li>
|
|
|
- </ul>
|
|
|
- </div>
|
|
|
+ </el-form>
|
|
|
+
|
|
|
+ <div class="my-portrait-item" style="height: 200px">
|
|
|
+ <div class="title">
|
|
|
+ <i></i>
|
|
|
+ <span>技能证书</span>
|
|
|
</div>
|
|
|
- <div class="my-portrait-item" style="height: 200px">
|
|
|
- <div class="title">
|
|
|
- <i></i>
|
|
|
- <span>技能证书</span>
|
|
|
- </div>
|
|
|
|
|
|
- <div>
|
|
|
- <el-table
|
|
|
- :header-cell-style="{
|
|
|
- background: '#F2F4F8',
|
|
|
- color: '#2D333C',
|
|
|
- height: '46px'
|
|
|
- }"
|
|
|
- style="width: 100%; height: 100%"
|
|
|
- :data="tableData"
|
|
|
- height="150px"
|
|
|
- >
|
|
|
- <el-table-column type="index" width="50" />
|
|
|
- <el-table-column prop="name" label="证书名称" />
|
|
|
- <el-table-column prop="level" label="证书等级" />
|
|
|
- <el-table-column prop="date" label="获得时间" />
|
|
|
- <el-table-column prop="organization" label="发证机构" />
|
|
|
- <el-table-column fixed="right" label="操作" width="120">
|
|
|
- <template #default>
|
|
|
- <el-button link type="primary" size="small">查看</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
+ <div>
|
|
|
+ <el-table
|
|
|
+ :header-cell-style="{
|
|
|
+ background: '#F2F4F8',
|
|
|
+ color: '#2D333C',
|
|
|
+ height: '46px'
|
|
|
+ }"
|
|
|
+ style="width: 100%; height: 100%"
|
|
|
+ :data="tableData"
|
|
|
+ height="150px"
|
|
|
+ >
|
|
|
+ <el-table-column type="index" width="50" />
|
|
|
+ <el-table-column prop="name" label="证书名称" />
|
|
|
+ <el-table-column prop="level" label="证书等级" />
|
|
|
+ <el-table-column prop="date" label="获得时间" />
|
|
|
+ <el-table-column prop="organization" label="发证机构" />
|
|
|
+ <el-table-column fixed="right" label="操作" width="120">
|
|
|
+ <template #default>
|
|
|
+ <el-button link type="primary" size="small">查看</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -192,7 +147,6 @@ const tableData = [
|
|
|
|
|
|
li {
|
|
|
width: 50%;
|
|
|
- margin: 10px 0;
|
|
|
|
|
|
span {
|
|
|
display: inline-block;
|
|
@@ -211,5 +165,37 @@ const tableData = [
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ :deep(.el-form) {
|
|
|
+ .el-input.is-disabled .el-input__wrapper {
|
|
|
+ background-color: unset;
|
|
|
+ box-shadow: none;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-input.is-disabled .el-input__inner {
|
|
|
+ color: #2d333c;
|
|
|
+ -webkit-text-fill-color: #2d333c;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-form-item__label {
|
|
|
+ font-size: 16px;
|
|
|
+ color: #455773;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-form-item--default {
|
|
|
+ margin-bottom: 10px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-input__inner {
|
|
|
+ font-family: 'Microsoft YaHei';
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #2d333c;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-input__suffix {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
</style>
|