1
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
8be1b41295
commit
dbe73eda87
|
@ -7,25 +7,28 @@
|
|||
border
|
||||
size="small"
|
||||
>
|
||||
<template slot="empty">
|
||||
<span></span>
|
||||
</template>
|
||||
<el-table-column type="index" label="No." width="50" />
|
||||
|
||||
<el-table-column
|
||||
prop="TrialCode"
|
||||
label="Trial ID"
|
||||
:label="$t('resumeInfo:label:TrialCode')"
|
||||
min-width="50"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column prop="Type" label="File Type" min-width="80" show-overflow-tooltip />
|
||||
<el-table-column prop="Type" :label="$t('resumeInfo:label:Type')" min-width="80" show-overflow-tooltip />
|
||||
<el-table-column
|
||||
prop="FileName"
|
||||
label="File Name"
|
||||
:label="$t('resumeInfo:label:FileName')"
|
||||
min-width="100"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
|
||||
<el-table-column
|
||||
prop="CreateTime"
|
||||
label="Upload Time"
|
||||
:label="$t('resumeInfo:label:CreateTime')"
|
||||
min-width="60"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
|
@ -36,7 +39,7 @@
|
|||
size="small"
|
||||
type="text"
|
||||
@click="preview(scope.$index, scope.row)"
|
||||
>View</el-button>
|
||||
>{{$t('resumeInfo:button:view')}}</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
|
|
@ -3,23 +3,23 @@
|
|||
<el-form :inline="true" :model="basicInfo" class="demo-form-inline" size="small">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Name:">
|
||||
<el-form-item :label="$t('resumeInfo:label:BlindName')">
|
||||
<span>{{ basicInfo.BlindName }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Name CN:">
|
||||
<el-form-item :label="$t('resumeInfo:label:ChineseName')">
|
||||
<span>{{ basicInfo.BlindNameCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Gender:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Sex')">
|
||||
<span v-if="isEnglish">{{ basicInfo.Sex === 0?'Male':'Female' }}</span>
|
||||
<span v-else>{{ basicInfo.Sex === 0?'男':'女' }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Title:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Title')">
|
||||
<span v-if="isEnglish">
|
||||
{{ (Array.isArray(basicInfo.Title)&& basicInfo.Title.length > 0) ? basicInfo.TitleList.join(', ') : '' }}
|
||||
</span>
|
||||
|
|
|
@ -1,48 +1,48 @@
|
|||
<template>
|
||||
<div class="comment-info">
|
||||
<el-form :model="statusList" class="demo-form-inline" size="small">
|
||||
<el-form-item label="Comment:">
|
||||
<el-input
|
||||
v-model="statusList.AdminComment"
|
||||
type="textarea"
|
||||
autosize
|
||||
readonly
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
||||
export default {
|
||||
props: {
|
||||
statusList: {
|
||||
type: Object,
|
||||
default() {
|
||||
return {}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.comment-info{
|
||||
padding:5px 15px;
|
||||
font-size:13px;
|
||||
.el-form-item--mini.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item--small.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item__content{
|
||||
font-size: 13px;
|
||||
}
|
||||
.el-form-item__label{
|
||||
font-size: 13px;
|
||||
color: #303133;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<template>
|
||||
<div class="comment-info">
|
||||
<el-form :model="statusList" class="demo-form-inline" size="small">
|
||||
<el-form-item :label="$t('resumeInfo:label:Comment')">
|
||||
<el-input
|
||||
v-model="statusList.AdminComment"
|
||||
type="textarea"
|
||||
autosize
|
||||
readonly
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
||||
export default {
|
||||
props: {
|
||||
statusList: {
|
||||
type: Object,
|
||||
default() {
|
||||
return {}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.comment-info{
|
||||
padding:5px 15px;
|
||||
font-size:13px;
|
||||
.el-form-item--mini.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item--small.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item__content{
|
||||
font-size: 13px;
|
||||
}
|
||||
.el-form-item__label{
|
||||
font-size: 13px;
|
||||
color: #303133;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="education-info">
|
||||
<div class="btn-wrapper">
|
||||
<el-button style="margin-left:auto" size="small" :disabled="checkID.length==0" @click="downloadAttachement">Download</el-button>
|
||||
<el-button style="margin-left:auto" size="small" :disabled="checkID.length==0" @click="downloadAttachement">{{$t('resumeInfo:button:Download')}}</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
:data="tblList"
|
||||
|
@ -9,31 +9,37 @@
|
|||
size="small"
|
||||
@selection-change="selectMore"
|
||||
>
|
||||
<template slot="empty">
|
||||
<span></span>
|
||||
</template>
|
||||
<el-table-column type="selection" align="left" width="50" />
|
||||
<el-table-column type="index" label="No." width="50" />
|
||||
<el-table-column prop="Type" label="Type" min-width="50" show-overflow-tooltip />
|
||||
<el-table-column type="index" :label="$t('resumeInfo:label:No')" width="50" />
|
||||
<el-table-column prop="Type" :label="$t('resumeInfo:label:Type')" min-width="50" show-overflow-tooltip />
|
||||
<el-table-column
|
||||
prop="FileName"
|
||||
label="File Name"
|
||||
:label="$t('resumeInfo:label:FileName')"
|
||||
min-width="80"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="CreateTime"
|
||||
label="Upload Time"
|
||||
:label="$t('resumeInfo:label:CreateTime')"
|
||||
min-width="50"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column label="Action" min-width="150">
|
||||
<el-table-column :label="$t('common:action:action')" min-width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click="preview(scope.$index, scope.row)">View</el-button>
|
||||
<el-button type="text" size="small" @click="preview(scope.$index, scope.row)">{{$t('resumeInfo:button:view')}}</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { downloadByAttachmentId } from '@/api/reviewers'
|
||||
import { getDoctorAttachment } from '@/api/reviewers'
|
||||
import axios from "axios";
|
||||
import JSZip from "jszip";
|
||||
import { saveAs } from 'file-saver'
|
||||
export default {
|
||||
props: {
|
||||
attachmentList: {
|
||||
|
@ -101,12 +107,57 @@ export default {
|
|||
}
|
||||
return list
|
||||
},
|
||||
getFileData(fileUrl) {
|
||||
return new Promise((resolve, reject) => {
|
||||
axios(fileUrl, {
|
||||
method: 'GET',
|
||||
responseType: 'blob' // 返回的数据会被强制转为blob类型 ,转换成arraybuffer 也行
|
||||
}).then((res) => {
|
||||
console.log('res', res)
|
||||
resolve(res)
|
||||
}).catch(error => {
|
||||
reject(error)
|
||||
})
|
||||
})
|
||||
},
|
||||
async handleBatchDown(dataSource) {
|
||||
return new Promise(resolve => {
|
||||
const zip = new JSZip() // 创建实例对象
|
||||
const promises = []
|
||||
dataSource.FileList.forEach((item) => {
|
||||
console.log(this.OSSclientConfig.basePath + item.Path)
|
||||
const promise = this.getFileData(this.OSSclientConfig.basePath + item.Path).then((res) => {
|
||||
const fileName = item.FileName + ''
|
||||
// 创建文件用file(),创建文件夹用 floder()
|
||||
zip.file(fileName, res.data, {binary: true})
|
||||
})
|
||||
promises.push(promise)
|
||||
})
|
||||
console.log(promises)
|
||||
// 生成 zip 文件
|
||||
Promise.all(promises).then(() => {
|
||||
// 生成zip 文件
|
||||
zip.generateAsync({
|
||||
type: 'blob',
|
||||
compression: 'DEFLATE', // STORE: 默认不压缩, DEFLATE:需要压缩
|
||||
compressionOptions: {
|
||||
level: 9 // 压缩等级 1~9 1 压缩速度最快, 9 最优压缩方式
|
||||
}
|
||||
}).then((res) => {
|
||||
saveAs(res, dataSource.ReviewerCode + '_Credentials.zip') // 使用FileSaver.saveAs保存文件,文件名可自定义
|
||||
resolve()
|
||||
})
|
||||
}).catch(reason => {
|
||||
resolve()
|
||||
})
|
||||
})
|
||||
},
|
||||
downloadAttachement() {
|
||||
downloadByAttachmentId(this.doctorId, this.checkID).then(res => {
|
||||
if (res.IsSuccess) {
|
||||
var fullPath = res.Result.FullFilePath
|
||||
window.open(fullPath)
|
||||
}
|
||||
getDoctorAttachment({
|
||||
DoctorId: this.doctorId,
|
||||
AttachmentIdList: this.checkID
|
||||
}).then(res => {
|
||||
this.handleBatchDown(res.Result)
|
||||
})
|
||||
},
|
||||
preview(index, row) {
|
||||
|
|
|
@ -1,188 +1,194 @@
|
|||
<template>
|
||||
<div class="education-info">
|
||||
<div class="title">Education (in chronological order)</div>
|
||||
<el-table :data="educationList" border style="width: 100%;margin-top:10px;" size="small">
|
||||
<el-table-column type="index" label="No." width="45" />
|
||||
<el-table-column
|
||||
prop="BeginDateStr"
|
||||
label="Start"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="EndDateStr"
|
||||
label="End"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column prop="Degree" label="Degree" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Degree">
|
||||
{{ isEnglish?scope.row.Degree:scope.row.DegreeCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="Major" label="Major" min-width="130" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Major">
|
||||
{{ isEnglish?scope.row.Major:scope.row.MajorCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Organization"
|
||||
label="Institution"
|
||||
min-width="150"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Organization">
|
||||
{{ isEnglish?scope.row.Organization:scope.row.OrganizationCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="City" label="City" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.City">
|
||||
{{ isEnglish?scope.row.City:scope.row.CityCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Province"
|
||||
label="State/Province"
|
||||
min-width="80"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Province">
|
||||
{{ isEnglish?scope.row.Province:scope.row.ProvinceCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="Country" label="Country" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Country">
|
||||
{{ isEnglish?scope.row.Country:scope.row.CountryCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<div class="title">Postgraduate Training (in chronological order)</div>
|
||||
<el-table :data="postgraduateList" border style="width: 100%" size="small">
|
||||
<el-table-column type="index" label="No." width="45" />
|
||||
<el-table-column
|
||||
prop="BeginDateStr"
|
||||
label="Start"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="EndDateStr"
|
||||
label="End"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column prop="Training" label="Training" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Training">
|
||||
{{ isEnglish?scope.row.Training:scope.row.TrainingCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Major"
|
||||
label="Specialty / Research Field"
|
||||
min-width="140"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Major">
|
||||
{{ isEnglish?scope.row.Major:scope.row.MajorCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column prop="Hospital" label="Hospital" min-width="110" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Hospital">
|
||||
{{ isEnglish?scope.row.Hospital:scope.row.HospitalCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="School" label="University" min-width="120" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.School">
|
||||
{{ isEnglish?scope.row.School:scope.row.SchoolCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="City" label="City" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.City">
|
||||
{{ isEnglish?scope.row.City:scope.row.CityCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Province"
|
||||
label="State/Province"
|
||||
min-width="90"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Province">
|
||||
{{ isEnglish?scope.row.Province:scope.row.ProvinceCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="Country" label="Country" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Country">
|
||||
{{ isEnglish?scope.row.Country:scope.row.CountryCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
educationList: {
|
||||
type: Array,
|
||||
default() {
|
||||
return []
|
||||
}
|
||||
},
|
||||
postgraduateList: {
|
||||
type: Array,
|
||||
default() {
|
||||
return []
|
||||
}
|
||||
},
|
||||
isEnglish: {
|
||||
type: Boolean
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.education-info{
|
||||
padding:5px 15px;
|
||||
font-size:13px;
|
||||
.title{
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
background-color: #9c9fa6;
|
||||
font-size: 14px;
|
||||
padding-left: 10px;
|
||||
color: #fff;
|
||||
margin: 10px 0;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<template>
|
||||
<div class="education-info">
|
||||
<div class="title">{{ $t('resumeInfo:label:Education') }}</div>
|
||||
<el-table :data="educationList" border style="width: 100%;margin-top:10px;" size="small">
|
||||
<template slot="empty">
|
||||
<span></span>
|
||||
</template>
|
||||
<el-table-column type="index" :label="$t('resumeInfo:label:No')" width="45" />
|
||||
<el-table-column
|
||||
prop="BeginDateStr"
|
||||
:label="$t('resumeInfo:label:BeginDateStr')"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="EndDateStr"
|
||||
:label="$t('resumeInfo:label:EndDateStr')"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column prop="Degree" :label="$t('resumeInfo:label:Degree')" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Degree">
|
||||
{{ isEnglish?scope.row.Degree:scope.row.DegreeCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="Major" :label="$t('resumeInfo:label:Major')" min-width="130" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Major">
|
||||
{{ isEnglish?scope.row.Major:scope.row.MajorCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Organization"
|
||||
:label="$t('resumeInfo:label:Institution')"
|
||||
min-width="150"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Organization">
|
||||
{{ isEnglish?scope.row.Organization:scope.row.OrganizationCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="City" :label="$t('resumeInfo:label:City')" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.City">
|
||||
{{ isEnglish?scope.row.City:scope.row.CityCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Province"
|
||||
:label="$t('resumeInfo:label:Province')"
|
||||
min-width="80"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Province">
|
||||
{{ isEnglish?scope.row.Province:scope.row.ProvinceCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="Country" :label="$t('resumeInfo:label:Country')" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Country">
|
||||
{{ isEnglish?scope.row.Country:scope.row.CountryCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<div class="title">{{$t('resumeInfo:label:PostgraduateTraining')}}</div>
|
||||
<el-table :data="postgraduateList" border style="width: 100%" size="small">
|
||||
<template slot="empty">
|
||||
<span></span>
|
||||
</template>
|
||||
<el-table-column type="index" :label="$t('resumeInfo:label:No')" width="45" />
|
||||
<el-table-column
|
||||
prop="BeginDateStr"
|
||||
:label="$t('resumeInfo:label:BeginDateStr')"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="EndDateStr"
|
||||
:label="$t('resumeInfo:label:EndDateStr')"
|
||||
min-width="55"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column prop="Training" :label="$t('resumeInfo:label:Training')" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Training">
|
||||
{{ isEnglish?scope.row.Training:scope.row.TrainingCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Major"
|
||||
:label="$t('resumeInfo:label:Specialty')"
|
||||
min-width="140"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Major">
|
||||
{{ isEnglish?scope.row.Major:scope.row.MajorCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column prop="Hospital" :label="$t('resumeInfo:label:Hospital')" min-width="110" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Hospital">
|
||||
{{ isEnglish?scope.row.Hospital:scope.row.HospitalCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="School" :label="$t('resumeInfo:label:University')" min-width="120" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.School">
|
||||
{{ isEnglish?scope.row.School:scope.row.SchoolCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="City" :label="$t('resumeInfo:label:City')" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.City">
|
||||
{{ isEnglish?scope.row.City:scope.row.CityCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="Province"
|
||||
:label="$t('resumeInfo:label:StateProvince')"
|
||||
min-width="90"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Province">
|
||||
{{ isEnglish?scope.row.Province:scope.row.ProvinceCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="Country" :label="$t('resumeInfo:label:Country')" min-width="70" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span v-show="scope.row.Country">
|
||||
{{ isEnglish?scope.row.Country:scope.row.CountryCN }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
educationList: {
|
||||
type: Array,
|
||||
default() {
|
||||
return []
|
||||
}
|
||||
},
|
||||
postgraduateList: {
|
||||
type: Array,
|
||||
default() {
|
||||
return []
|
||||
}
|
||||
},
|
||||
isEnglish: {
|
||||
type: Boolean
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.education-info{
|
||||
padding:5px 15px;
|
||||
font-size:13px;
|
||||
.title{
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
background-color: #9c9fa6;
|
||||
font-size: 14px;
|
||||
padding-left: 10px;
|
||||
color: #fff;
|
||||
margin: 10px 0;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -3,25 +3,25 @@
|
|||
<el-form :inline="true" :model="employment" class="demo-form-inline" size="small">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Department:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Department')">
|
||||
<span v-if="isEnglish">{{ employment.Department }}</span>
|
||||
<span v-else>{{ employment.DepartmentCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Rank:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Rank')">
|
||||
<span v-if="isEnglish">{{ employment.Rank }}</span>
|
||||
<span v-else>{{ employment.RankCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Physician:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Physician')">
|
||||
<span v-if="isEnglish">{{ employment.Physician }}</span>
|
||||
<span v-else>{{ employment.PhysicianCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Position:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Position')">
|
||||
<span v-if="isEnglish">{{ employment.Position }}</span>
|
||||
<span v-else>{{ employment.PositionCN }}</span>
|
||||
</el-form-item>
|
||||
|
@ -30,31 +30,31 @@
|
|||
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Hospital:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Hospital')">
|
||||
<span v-if="isEnglish">{{ employment.HospitalName }}</span>
|
||||
<span v-else>{{ employment.HospitalNameCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Affiliated University:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Affiliated')">
|
||||
<span v-if="isEnglish">{{ employment.UniversityAffiliated }}</span>
|
||||
<span v-else>{{ employment.UniversityAffiliatedCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="City:">
|
||||
<el-form-item :label="$t('resumeInfo:label:City')">
|
||||
<span v-if="isEnglish">{{ employment.City }}</span>
|
||||
<span v-else>{{ employment.CityCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="State/Province:">
|
||||
<el-form-item :label="$t('resumeInfo:label:StateProvince')">
|
||||
<span v-if="isEnglish">{{ employment.Province }}</span>
|
||||
<span v-else>{{ employment.ProvinceCN }}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Country:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Country:')">
|
||||
<span v-if="isEnglish">{{ employment.Country }}</span>
|
||||
<span v-else>{{ employment.CountryCN }}</span>
|
||||
</el-form-item>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="research-info">
|
||||
<el-form :model="researchInfo" class="demo-form-inline" size="small">
|
||||
<el-form-item label="Field of Research:">
|
||||
<el-form-item :label="$t('resumeInfo:label:FieldofResearch')" prop="FieldofResearch">
|
||||
<el-input
|
||||
v-if="isEnglish"
|
||||
v-model="researchInfo.Research"
|
||||
|
@ -18,7 +18,7 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="Grants:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Grants')" prop="Grants">
|
||||
<el-input
|
||||
v-if="isEnglish"
|
||||
v-model="researchInfo.Grants"
|
||||
|
@ -35,7 +35,7 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="Publications:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Publications')" prop="BlindPublications">
|
||||
<el-input
|
||||
v-model="auditView.BlindPublications"
|
||||
type="textarea"
|
||||
|
@ -44,7 +44,7 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="Awards & Honors:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Awards&Honors')" prop="AwardsHonors">
|
||||
<el-input
|
||||
v-if="isEnglish"
|
||||
v-model="researchInfo.AwardsHonors"
|
||||
|
|
|
@ -1,24 +1,26 @@
|
|||
<template>
|
||||
<div class="resume-info">
|
||||
<el-table :data="list" style="margin-top:10px;" size="small">
|
||||
<el-table-column type="index" label="No." width="50" />
|
||||
|
||||
<template slot="empty">
|
||||
<span></span>
|
||||
</template>
|
||||
<el-table-column type="index" :label="$t('resumeInfo:label:No')" width="50" />
|
||||
<el-table-column
|
||||
prop="FileName"
|
||||
label="File Name"
|
||||
:label="$t('resumeInfo:label:FileName')"
|
||||
min-width="60"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="Isoffical"
|
||||
label="Offical"
|
||||
:label="$t('resumeInfo:label:Isoffical')"
|
||||
min-width="50"
|
||||
:formatter="officalFormatter"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="Language"
|
||||
label="Language"
|
||||
:label="$t('resumeInfo:label:Language')"
|
||||
min-width="50"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
|
@ -28,13 +30,13 @@
|
|||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="CreateTime"
|
||||
label="Upload Time"
|
||||
:label="$t('resumeInfo:label:CreateTime')"
|
||||
min-width="60"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column label="Action" min-width="150">
|
||||
<el-table-column :label="$t('common:action:action')" min-width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click="preview(scope.$index, scope.row)">Download</el-button>
|
||||
<el-button type="text" size="small" @click="preview(scope.$index, scope.row)">{{ $t('common:button:download') }}</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -73,6 +75,7 @@ export default {
|
|||
preview(index, row) {
|
||||
const filePath = row.FullPath
|
||||
if (filePath) {
|
||||
console.log(this.OSSclientConfig.basePath + filePath)
|
||||
window.open(this.OSSclientConfig.basePath + filePath, '_blank')
|
||||
}
|
||||
},
|
||||
|
|
|
@ -1,58 +1,58 @@
|
|||
<template>
|
||||
<div class="specialty-info">
|
||||
<el-form :model="specialty" class="demo-form-inline" size="small">
|
||||
<el-form-item label="Specialty:">
|
||||
<span v-if="isEnglish">{{ specialty.Speciality }}</span>
|
||||
<span v-else>{{ specialty.SpecialityCN }}</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="Subspeciality:">
|
||||
<span v-if="isEnglish">{{ specialty.Subspeciality }}</span>
|
||||
<span v-else>{{ specialty.SubspecialityCNList }}</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="Modality:">
|
||||
<span v-if="isEnglish">{{ specialty.ReadingType }}</span>
|
||||
<span v-else>{{ specialty.ReadingTypeCNList }}</span>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
||||
export default {
|
||||
props: {
|
||||
specialty: {
|
||||
type: Object,
|
||||
default() {
|
||||
return {}
|
||||
}
|
||||
},
|
||||
isEnglish: {
|
||||
type: Boolean
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.specialty-info{
|
||||
padding:5px 15px;
|
||||
font-size:13px;
|
||||
.el-form-item--mini.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item--small.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item__content{
|
||||
font-size: 13px;
|
||||
}
|
||||
.el-form-item__label{
|
||||
font-size: 13px;
|
||||
color: #303133;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<template>
|
||||
<div class="specialty-info">
|
||||
<el-form :model="specialty" class="demo-form-inline" size="small">
|
||||
<el-form-item :label="$t('resumeInfo:label:Speciality')">
|
||||
<span v-if="isEnglish">{{ specialty.Speciality }}</span>
|
||||
<span v-else>{{ specialty.SpecialityCN }}</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('resumeInfo:label:Subspeciality')">
|
||||
<span v-if="isEnglish">{{ specialty.Subspeciality }}</span>
|
||||
<span v-else>{{ specialty.SubspecialityCNList }}</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('resumeInfo:label:ReadingType')">
|
||||
<span v-if="isEnglish">{{ specialty.ReadingType }}</span>
|
||||
<span v-else>{{ specialty.ReadingTypeCNList }}</span>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
||||
export default {
|
||||
props: {
|
||||
specialty: {
|
||||
type: Object,
|
||||
default() {
|
||||
return {}
|
||||
}
|
||||
},
|
||||
isEnglish: {
|
||||
type: Boolean
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.specialty-info{
|
||||
padding:5px 15px;
|
||||
font-size:13px;
|
||||
.el-form-item--mini.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item--small.el-form-item{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.el-form-item__content{
|
||||
font-size: 13px;
|
||||
}
|
||||
.el-form-item__label{
|
||||
font-size: 13px;
|
||||
color: #303133;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<el-form :inline="true" :model="basicInfo" class="demo-form-inline" size="small">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Pending:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Pending')">
|
||||
<span v-if="statusList.Submitted" style="color:#428bca">
|
||||
<router-link
|
||||
:to="{
|
||||
|
@ -17,7 +17,7 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Approved:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Approved')">
|
||||
<span v-if="statusList.Approved" style="color:#428bca">
|
||||
<router-link
|
||||
:to="{
|
||||
|
@ -31,7 +31,7 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="Reading:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Reading')">
|
||||
<span v-if="statusList.Reading" style="color:#428bca">
|
||||
<router-link
|
||||
:to="{
|
||||
|
@ -44,19 +44,19 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="On Vacation:">
|
||||
<el-form-item :label="$t('resumeInfo:label:Vacation')">
|
||||
<span style="font-size:12px;margin-right:20px;">{{ holiday }}</span>
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click="initHolidayList"
|
||||
>Planned Vacation</el-button>
|
||||
>{{ $t('resumeInfo:label:PlannedVacation') }}</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-dialog
|
||||
title="Vacation"
|
||||
:title="$t('resumeInfo:label:Vacation')"
|
||||
:visible.sync="dialogVisible"
|
||||
width="35%"
|
||||
:close-on-click-modal="false"
|
||||
|
@ -65,13 +65,13 @@
|
|||
<el-table-column type="index" />
|
||||
<el-table-column
|
||||
property="StartDate"
|
||||
label="Beginning Date"
|
||||
:label="$t('resumeInfo:label:BeginningDate')"
|
||||
min-width="120"
|
||||
:formatter="beginTimeFormatter"
|
||||
/>
|
||||
<el-table-column
|
||||
property="EndDate"
|
||||
label="End Date"
|
||||
:label="$t('resumeInfo:label:EndDate')"
|
||||
min-width="120"
|
||||
:formatter="endTimeFormatter"
|
||||
/>
|
||||
|
|
|
@ -1,12 +1,15 @@
|
|||
<template>
|
||||
<div class="trialExperience-info">
|
||||
<div class="title">Clinical Trial Experience</div>
|
||||
<div class="title">{{$t('resumeInfo:title:ClinicalTrialExperience')}}</div>
|
||||
<el-table :data="GCPList" border style="width: 100%" size="small">
|
||||
<el-table-column type="index" label="No." width="50" />
|
||||
<el-table-column prop="Phase" label="Phase" min-width="20" show-overflow-tooltip />
|
||||
<template slot="empty">
|
||||
<span></span>
|
||||
</template>
|
||||
<el-table-column type="index" :label="$t('resumeInfo:label:No')" width="50" />
|
||||
<el-table-column prop="Phase" :label="$t('resumeInfo:label:Phase')" min-width="20" show-overflow-tooltip />
|
||||
<el-table-column
|
||||
prop="EvaluationCriteriaList"
|
||||
label="Review Criteria"
|
||||
:label="$t('resumeInfo:label:ReviewCriteria')"
|
||||
min-width="40"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
|
@ -16,24 +19,30 @@
|
|||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="VisitReadingCount"
|
||||
label="Visit Reading Count"
|
||||
:label="$t('resumeInfo:label:VisitReadingCount')"
|
||||
min-width="150"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
prop="EvaluationContent"
|
||||
label="Indication"
|
||||
:label="$t('resumeInfo:label:EvaluationContent')"
|
||||
min-width="150"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
</el-table>
|
||||
|
||||
<el-form :model="form" class="demo-form-inline" size="small">
|
||||
<el-form-item label="GCP Certificate:">
|
||||
<el-form-item :label="$t('resumeInfo:label:GCPCertificate')">
|
||||
<span>{{ GCP }}</span>
|
||||
<a
|
||||
v-if="form.GCP"
|
||||
href="#"
|
||||
class="view"
|
||||
@click.prevent="previewGCP()"
|
||||
>View</a>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="Other Relevant Experience:">
|
||||
<el-form-item :label="$t('resumeInfo:label:OtherRelevantExperience')">
|
||||
<el-input
|
||||
v-if="isEnglish"
|
||||
v-model="form.OtherClinicalExperience"
|
||||
|
|
|
@ -16,36 +16,24 @@
|
|||
|
||||
<div style="flex:1;margin-top:50px;overflow-y: auto;">
|
||||
<el-collapse v-model="activeNames">
|
||||
<el-collapse-item title="Basic Info" name="1">
|
||||
<el-collapse-item :title="$t('resumeInfo:title:BasicInfo')" name="1">
|
||||
<basic-info :basic-info="doctorInfo.BasicInfoView" :is-english="isEnglish" />
|
||||
</el-collapse-item>
|
||||
<el-collapse-item title="Employment" name="2">
|
||||
<el-collapse-item :title="$t('resumeInfo:title:Employment')" name="2">
|
||||
<Employment :employment="workInfo" :is-english="isEnglish" />
|
||||
</el-collapse-item>
|
||||
<el-collapse-item title="Specialty" name="3">
|
||||
<el-collapse-item :title="$t('resumeInfo:title:Specialty')" name="3">
|
||||
<Specialty :specialty="specialtyList" :is-english="isEnglish" />
|
||||
</el-collapse-item>
|
||||
<el-collapse-item title="Education & Training" name="4">
|
||||
<el-collapse-item :title="$t('resumeInfo:title:Education&Training')" name="4">
|
||||
<education-training :education-list="doctorInfo.EducationList" :postgraduate-list="doctorInfo.PostgraduateList" :is-english="isEnglish" />
|
||||
</el-collapse-item>
|
||||
<el-collapse-item title="Research & Publication" name="5">
|
||||
<el-collapse-item :title="$t('resumeInfo:title:Research&Publication')" name="5">
|
||||
<research-publication :research-info="doctorInfo.ResearchPublicationView" :audit-view="doctorInfo.AuditView" :is-english="isEnglish" />
|
||||
</el-collapse-item>
|
||||
<el-collapse-item title="Trial Experience" name="6">
|
||||
<el-collapse-item :title="$t('resumeInfo:title:TrialExperience')" name="6">
|
||||
<trial-experience v-if="doctorInfo.TrialExperienceView" :trial-experience="doctorInfo.TrialExperienceView" :is-english="isEnglish" />
|
||||
</el-collapse-item>
|
||||
<!-- <el-collapse-item title="Credentials" name="7">-->
|
||||
<!-- <Credentials v-if="doctorInfo.AttachmentList" :attachment-list="doctorInfo.AttachmentList" :doctor-id="doctorId" />-->
|
||||
<!-- </el-collapse-item>-->
|
||||
<!-- <el-collapse-item title="Resume" name="8">-->
|
||||
<!-- <Resume v-if="doctorInfo.AttachmentList" :resume-list="doctorInfo.AttachmentList" />-->
|
||||
<!-- </el-collapse-item>-->
|
||||
<!-- <el-collapse-item title="Agreements" name="9">-->
|
||||
<!-- <Agreements v-if="doctorInfo.AttachmentList" :doctor-info="doctorInfo" />-->
|
||||
<!-- </el-collapse-item>-->
|
||||
<!-- <el-collapse-item title="Comment" name="10">-->
|
||||
<!-- <Comment :status-list="statusList" />-->
|
||||
<!-- </el-collapse-item>-->
|
||||
</el-collapse>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="research-info">
|
||||
<el-form :model="researchInfo" class="demo-form-inline" size="small">
|
||||
<el-form-item :label="$t('resumeInfo:label:FieldofResearch')">
|
||||
<el-form-item :label="$t('resumeInfo:label:FieldofResearch')" prop="FieldofResearch">
|
||||
<el-input
|
||||
v-if="isEnglish"
|
||||
v-model="researchInfo.Research"
|
||||
|
@ -18,7 +18,7 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('resumeInfo:label:Grants')">
|
||||
<el-form-item :label="$t('resumeInfo:label:Grants')" prop="Grants">
|
||||
<el-input
|
||||
v-if="isEnglish"
|
||||
v-model="researchInfo.Grants"
|
||||
|
@ -35,7 +35,7 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('resumeInfo:label:Publications')">
|
||||
<el-form-item :label="$t('resumeInfo:label:Publications')" prop="Publications">
|
||||
<el-input
|
||||
v-model="researchInfo.Publications"
|
||||
type="textarea"
|
||||
|
@ -44,7 +44,7 @@
|
|||
/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('resumeInfo:label:Awards&Honors')">
|
||||
<el-form-item :label="$t('resumeInfo:label:Awards&Honors')" prop="AwardsHonors">
|
||||
<el-input
|
||||
v-if="isEnglish"
|
||||
v-model="researchInfo.AwardsHonors"
|
||||
|
|
Loading…
Reference in New Issue