diff --git a/src/api/admin.js b/src/api/admin.js index 05e82744..dbd9acf4 100644 --- a/src/api/admin.js +++ b/src/api/admin.js @@ -309,3 +309,11 @@ export function rePublishEvent(params) { params }) } +// userId获取doctorId +export function useUserIDGetDoctorID(data) { + return request({ + url: `/TrialSiteSurvey/useUserIDGetDoctorID`, + method: 'post', + data + }) +} diff --git a/src/api/reviewers.js b/src/api/reviewers.js index e1fda283..d7b084f1 100644 --- a/src/api/reviewers.js +++ b/src/api/reviewers.js @@ -321,4 +321,12 @@ export function addOrUpdateResearchPublicationInfo(param) { method: 'post', data: param }) +} +// 发送简历采集邮件 +export function doctorSendEmail(param) { + return request({ + url: `/Doctor/sendEmail`, + method: 'post', + data: param + }) } \ No newline at end of file diff --git a/src/styles/index.scss b/src/styles/index.scss index 9700fe12..375cad02 100644 --- a/src/styles/index.scss +++ b/src/styles/index.scss @@ -149,6 +149,7 @@ body .el-table th.gutter { } .el-dialog__body { + margin-top: 15px; height: calc(100% - 70px); padding: 0 20px; @@ -347,6 +348,7 @@ body .el-table th.gutter { background: #000; z-index: 3999; } -.el-message-box__wrapper{ + +.el-message-box__wrapper { z-index: 9999 !important; } \ No newline at end of file diff --git a/src/views/dictionary/institutions/components/SiteForm.vue b/src/views/dictionary/institutions/components/SiteForm.vue index f348b047..b86d9ff3 100644 --- a/src/views/dictionary/institutions/components/SiteForm.vue +++ b/src/views/dictionary/institutions/components/SiteForm.vue @@ -14,11 +14,17 @@ - + - + @@ -46,7 +52,7 @@ v-model="form.HospitalId" clearable placeholder="Please select" - style="width:100%;" + style="width: 100%" > - - +
+ +
@@ -241,6 +243,10 @@ export default { if (sessionStorage.getItem('reviewerId')) { this.reviewerId = sessionStorage.getItem('reviewerId') this.getDetail() + } else if (this.$route.query.id) { + this.reviewerId = this.$route.query.id + sessionStorage.setItem('reviewerId', this.reviewerId) + this.getDetail() } }, mounted() { diff --git a/src/views/reviewers/curriculumVitae/preview.vue b/src/views/reviewers/curriculumVitae/preview.vue index aa343ce8..7febb76d 100644 --- a/src/views/reviewers/curriculumVitae/preview.vue +++ b/src/views/reviewers/curriculumVitae/preview.vue @@ -224,7 +224,9 @@
-
{{ $t('curriculumVitae:continuingTraining:title') }}
+
+ {{ $t('curriculumVitae:continuingTraining:title') }} +
-
+
{{ $t('curriculumVitae:clinicalTrials:otherTitle') }}
- - + + +
+ +
+
diff --git a/src/views/trials/trials-myinfo/index.vue b/src/views/trials/trials-myinfo/index.vue index cf993e8b..869f4ddb 100644 --- a/src/views/trials/trials-myinfo/index.vue +++ b/src/views/trials/trials-myinfo/index.vue @@ -41,7 +41,7 @@ import mine from './mine.vue' import account from './account.vue' import loginLog from '@/views/trials/trials-panel/trial-summary/login-log' -import { getUserTypeList, getUser } from '@/api/admin.js' +import { getUserTypeList, getUser, useUserIDGetDoctorID } from '@/api/admin.js' import store from '@/store' import { mapGetters } from 'vuex' @@ -66,19 +66,34 @@ export default { this.getUserTypeList() }, methods: { - handleSelect(index) { + async handleSelect(index) { if (index === '4') { if (this.open) { this.open.close() } + let id = await this.useUserIDGetDoctorID() const routeData = this.$router.resolve({ - path: `/curriculumVitae?lang=${this.$i18n.locale}`, + path: `/curriculumVitae?id=${id}&&lang=${this.$i18n.locale}`, }) this.open = window.open(routeData.href, '_blank') } else { this.activeIndex = index } }, + async useUserIDGetDoctorID() { + try { + let res = await useUserIDGetDoctorID({ + UserID: this.$store.state.user.userId, + }) + if (res.IsSuccess) { + return res.Result.DoctorID + } + return false + } catch (err) { + return false + console.log(err) + } + }, getUserInfo() { const loading = this.$loading({ fullscreen: false, diff --git a/src/views/trials/trials-panel/attachments/enrollment/components/Selection.vue b/src/views/trials/trials-panel/attachments/enrollment/components/Selection.vue index 74cfc268..0958b4fd 100644 --- a/src/views/trials/trials-panel/attachments/enrollment/components/Selection.vue +++ b/src/views/trials/trials-panel/attachments/enrollment/components/Selection.vue @@ -371,6 +371,7 @@ - + { return { TrialId: '', @@ -467,6 +475,10 @@ export default { this.$alert(this.$t('trials:researchRecord:message:copyFailed')) }) }, + beforeClose() { + this.getList() + this.visible = false + }, // 简历采集 resumeCollection() { this.shareLink = `${location.protocol}//${location.host}/ReviewersResearch?lang=${this.$store.getters.language}` @@ -474,8 +486,23 @@ export default { this.share_model.visible = true }, // 发送邮件 - sendEmail() { - this.$message.success('123') + async sendEmail() { + var pattern = + /^([A-Za-z0-9_\-\.\u4e00-\u9fa5])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,8})$/ + if (!pattern.test(this.email)) + return this.$message.warning(this.$t('rules:email')) + this.emailLoading = true + let res = await doctorSendEmail({ + Email: this.email, + Url: `ReviewersResearch?lang=${this.$store.getters.language}`, + }) + this.emailLoading = false + if (res.IsSuccess) { + this.$message.success( + this.$t('trials:researchStaff:message:sendEmalil') + ) + this.share_model.visible = false + } }, // 打开新增或修改简历弹框 openViewer(type, row) { diff --git a/src/views/trials/trials-panel/enrolled-reviewers/resume/index.vue b/src/views/trials/trials-panel/enrolled-reviewers/resume/index.vue index de47099d..750d9467 100644 --- a/src/views/trials/trials-panel/enrolled-reviewers/resume/index.vue +++ b/src/views/trials/trials-panel/enrolled-reviewers/resume/index.vue @@ -1,21 +1,33 @@