|
@@ -312,7 +312,14 @@
|
|
|
<el-form-item label="民族" prop="ethnic"
|
|
|
:rules="[
|
|
|
]">
|
|
|
- <el-input v-model="inputForm.ethnic" placeholder="请填写民族" clearable></el-input>
|
|
|
+ <el-select v-model="inputForm.ethnic" placeholder="请选择民族" style="width:100%;">
|
|
|
+ <el-option
|
|
|
+ v-for="item in $dictUtils.getDictList('ethnic')"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
@@ -451,7 +458,7 @@
|
|
|
<el-input v-model="inputForm.email" placeholder="请填写个人邮箱" clearable></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="21">
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="备注" prop="remarks"
|
|
|
:rules="[
|
|
|
]">
|
|
@@ -801,11 +808,11 @@
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="职位描述" :prop="'rosterWorkDTOList[' + index_work + '].postDescription'"
|
|
|
:rules="[
|
|
|
]">
|
|
|
- <el-input v-model="inputForm.rosterWorkDTOList[index_work].postDescription" placeholder="请填写职位描述" clearable></el-input>
|
|
|
+ <el-input type="textarea" v-model="inputForm.rosterWorkDTOList[index_work].postDescription" placeholder="请填写职位描述" clearable></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="24" style="text-align: center">
|
|
@@ -922,15 +929,14 @@
|
|
|
<el-form-item label="证书类型" :prop="'rosterCertificateDTOList[' + index_certificate + '].certType'"
|
|
|
:rules="[
|
|
|
]">
|
|
|
- <el-input v-model="inputForm.rosterCertificateDTOList[index_certificate].certType" placeholder="请填写证书类型" clearable></el-input>
|
|
|
-<!-- <el-select v-model="inputForm.rosterCertificateDTOList[index_certificate].relationship" placeholder="请选择关系" style="width: 100%;">-->
|
|
|
-<!-- <el-option-->
|
|
|
-<!-- v-for="item in $dictUtils.getDictList('family_relationship')"-->
|
|
|
-<!-- :key="item.value"-->
|
|
|
-<!-- :label="item.label"-->
|
|
|
-<!-- :value="item.value">-->
|
|
|
-<!-- </el-option>-->
|
|
|
-<!-- </el-select>-->
|
|
|
+ <el-select v-model="inputForm.rosterCertificateDTOList[index_certificate].certType" placeholder="请选择证书类型" style="width: 100%;">
|
|
|
+ <el-option
|
|
|
+ v-for="item in $dictUtils.getDictList('cert_type')"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
@@ -1013,7 +1019,7 @@
|
|
|
<el-input v-model="inputForm.rosterCertificateDTOList[index_certificate].level" placeholder="请填写级别" clearable></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="24">
|
|
|
<el-form-item label="描述" :prop="'rosterCertificateDTOList[' + index_certificate + '].description'"
|
|
|
:rules="[
|
|
|
]">
|
|
@@ -1034,11 +1040,42 @@
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
-<!-- 附件-->
|
|
|
- <UpLoadComponent
|
|
|
- ref="uploadComponent">
|
|
|
- </UpLoadComponent>
|
|
|
+ <el-divider content-position="left"><i class="el-icon-document"></i> 直属领导</el-divider>
|
|
|
+ <el-row :gutter="15">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="汇报类型" prop="rosterLeadershipDTO.debriefType"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-select v-model="inputForm.rosterLeadershipDTO.debriefType" style="width:100%" placeholder="请选择汇报类型">
|
|
|
+ <el-option
|
|
|
+ v-for="item in $dictUtils.getDictList('debrief_type')"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="汇报对象" prop="rosterLeadershipDTO.supervisorId"
|
|
|
+ :rules="[
|
|
|
+ ]">
|
|
|
+ <el-select v-model="inputForm.rosterLeadershipDTO.supervisorId" style="width:100%" placeholder="请选择汇报对象">
|
|
|
+ <el-option
|
|
|
+ v-for="item in supervisorList"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
</el-form>
|
|
|
+ <!-- 附件-->
|
|
|
+ <UpLoadComponent
|
|
|
+ ref="uploadComponent">
|
|
|
+ </UpLoadComponent>
|
|
|
<el-image-viewer v-if="showViewer" :on-close="closeViewer" :url-list="[url]" :zIndex=9999></el-image-viewer>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button size="small" @click="close()" icon="el-icon-circle-close">关闭</el-button>
|
|
@@ -1125,15 +1162,22 @@
|
|
|
rosterCertificateDTOList: [],
|
|
|
rosterFilesDTOList: [],
|
|
|
headshot: '',
|
|
|
- headshotLsUrl: ''
|
|
|
+ headshotLsUrl: '',
|
|
|
+ rosterLeadershipDTO: {
|
|
|
+ baseId: '',
|
|
|
+ debriefType: '',
|
|
|
+ supervisorId: ''
|
|
|
+ }
|
|
|
},
|
|
|
jobPositionList: [],
|
|
|
positionList: [],
|
|
|
rankList: [],
|
|
|
+ supervisorList: [],
|
|
|
showViewer: false,
|
|
|
url: '',
|
|
|
rules: {
|
|
|
- idCard: [{required: true, message: '证件号不能为空', trigger: 'blur'},
|
|
|
+ idCard: [
|
|
|
+ {required: true, message: '证件号不能为空', trigger: 'blur'},
|
|
|
{validator: checkIdCard, trigger: 'change'},
|
|
|
{validator: checkIdCard, trigger: 'blur'}
|
|
|
],
|
|
@@ -1197,6 +1241,7 @@
|
|
|
methods: {
|
|
|
init (method, id) {
|
|
|
this.queryAllPosition()
|
|
|
+ this.queryAllSupervisor()
|
|
|
this.method = method
|
|
|
this.inputForm = {
|
|
|
name: '',
|
|
@@ -1256,7 +1301,12 @@
|
|
|
rosterCertificateDTOList: [],
|
|
|
rosterFilesDTOList: [],
|
|
|
headshot: '',
|
|
|
- headshotLsUrl: ''
|
|
|
+ headshotLsUrl: '',
|
|
|
+ rosterLeadershipDTO: {
|
|
|
+ baseId: '',
|
|
|
+ debriefType: '',
|
|
|
+ supervisorId: ''
|
|
|
+ }
|
|
|
}
|
|
|
this.inputForm.id = id
|
|
|
if (method === 'add') {
|
|
@@ -1316,6 +1366,11 @@
|
|
|
this.positionList = JSON.parse(JSON.stringify(data))
|
|
|
})
|
|
|
},
|
|
|
+ queryAllSupervisor () {
|
|
|
+ this.rosterService.queryAllSupervisor().then(({data}) => {
|
|
|
+ this.supervisorList = JSON.parse(JSON.stringify(data))
|
|
|
+ })
|
|
|
+ },
|
|
|
getJobPositionByOff () {
|
|
|
const id = this.inputForm.officeId
|
|
|
if (id !== null && id !== undefined && id !== '') {
|
|
@@ -1438,14 +1493,6 @@
|
|
|
}
|
|
|
this.inputForm.rosterCertificateDTOList.push(certificate)
|
|
|
}
|
|
|
- if (val === 'files') {
|
|
|
- const files = {
|
|
|
- id: '',
|
|
|
- baseId: '',
|
|
|
- url: ''
|
|
|
- }
|
|
|
- this.inputForm.rosterFilesDTOList.push(files)
|
|
|
- }
|
|
|
},
|
|
|
delRow (index, val) {
|
|
|
if (val === 'bank') {
|
|
@@ -1463,9 +1510,6 @@
|
|
|
if (val === 'certificate') {
|
|
|
this.inputForm.rosterCertificateDTOList.splice(index, 1)
|
|
|
}
|
|
|
- if (val === 'files') {
|
|
|
- this.inputForm.rosterFilesDTOList.splice(index, 1)
|
|
|
- }
|
|
|
},
|
|
|
handleAvatarSuccess (res, file, fileList, index, val) {
|
|
|
if (val === 'head') {
|
|
@@ -1558,8 +1602,14 @@
|
|
|
this.inputForm.sex = info.sex
|
|
|
callback()
|
|
|
}
|
|
|
+ } else {
|
|
|
+ callback()
|
|
|
}
|
|
|
+ } else {
|
|
|
+ callback()
|
|
|
}
|
|
|
+ } else {
|
|
|
+ callback()
|
|
|
}
|
|
|
}
|
|
|
}
|