From 19a63710088a93587f3c0c5170b8fb97f4b423cf Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Tue, 29 Oct 2024 15:46:56 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=9B=BD=E9=99=85=E5=8C=96=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/export.js | 9 ++++ src/views/system/i18n/index.vue | 74 +++++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+) diff --git a/src/api/export.js b/src/api/export.js index 77d99a12..93067284 100644 --- a/src/api/export.js +++ b/src/api/export.js @@ -230,3 +230,12 @@ export function getCommonJudgeRatioList_Export(data) { data }) } +// 导出国际化列表 +export function GetInternationalizationList_Export(data) { + return requestDownload({ + url: `/ExcelExport/GetInternationalizationList_Export`, + responseType: 'blob', + method: 'post', + data + }) +} diff --git a/src/views/system/i18n/index.vue b/src/views/system/i18n/index.vue index ce1550f2..65cbc3c6 100644 --- a/src/views/system/i18n/index.vue +++ b/src/views/system/i18n/index.vue @@ -87,6 +87,30 @@ /> + + + + + + 查询 + + + {{ $t('common:button:reset') }} + 批量更新 + + {{ $t('common:button:export') }} + { SortField: '', PageIndex: 1, PageSize: 20, + BeginCreateTime: null, + EndCreatTime: null, + BeginUpdateTime: null, + EndUpdateTime: null, } } export default { @@ -327,6 +373,8 @@ export default { loading: false, PublishVersionList: [], selectTableList: [], + datetimerange_createTime: [], + datetimerange_updateTime: [], } }, mounted() { @@ -420,6 +468,8 @@ export default { // 重置列表查询 handleReset() { this.searchData = searchDataDefault() + this.datetimerange_createTime = [] + this.datetimerange_updateTime = [] this.getList() }, // 删除 @@ -459,6 +509,30 @@ export default { handleSelectionChange(val) { this.selectTableList = val }, + handleDatetimeChange(val, key) { + if (val) { + if (key === 'createTime') { + this.searchData.BeginCreateTime = val[0] + this.searchData.EndCreatTime = val[1] + } + if (key === 'updateTime') { + this.searchData.BeginUpdateTime = val[0] + this.searchData.EndUpdateTime = val[1] + } + } else { + if (key === 'createTime') { + this.searchData.BeginCreateTime = '' + this.searchData.EndCreatTime = '' + } + if (key === 'updateTime') { + this.searchData.BeginUpdateTime = '' + this.searchData.EndUpdateTime = '' + } + } + }, + exportTable() { + return GetInternationalizationList_Export(this.searchData) + }, }, } From 2a11d3f01266d93b35e42660e5d6e8c35f1d052f Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Tue, 29 Oct 2024 16:57:10 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E7=AE=80=E5=8E=86=E4=B8=B4=E5=BA=8A?= =?UTF-8?q?=E5=AE=9E=E9=AA=8C=E7=BB=8F=E5=8E=86=E5=8C=BA=E5=88=86=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E5=92=8C=E7=B3=BB=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/reviewers.js | 6 +- .../reviewers/components/TrialExperience.vue | 67 ++++++++++++++++--- .../components/info/clinicalTrials.vue | 49 +++++++++++--- 3 files changed, 98 insertions(+), 24 deletions(-) diff --git a/src/api/reviewers.js b/src/api/reviewers.js index 8f160acc..8fa8a272 100644 --- a/src/api/reviewers.js +++ b/src/api/reviewers.js @@ -138,13 +138,11 @@ export function addOrUpdateResearchPublication(param) { }) } -export function getTrialExperience(doctorId) { +export function getTrialExperience(data) { return request({ url: `/trialExperience/getTrialExperience`, method: 'post', - data: { - DoctorId: doctorId - } + data }) } diff --git a/src/views/reviewers/components/TrialExperience.vue b/src/views/reviewers/components/TrialExperience.vue index 6f926892..bf0676b3 100644 --- a/src/views/reviewers/components/TrialExperience.vue +++ b/src/views/reviewers/components/TrialExperience.vue @@ -72,7 +72,16 @@ prop="EvaluationContent" :label="$t('system:TrialExperience:Indication')" min-width="70" - /> + > + + - + - + + + + + + @@ -281,6 +303,7 @@ const getClinicalTrialDefault = () => { EndTime: null, OtherStages: '', OtherCriterion: '', + IndicationEnum: null, } } export default { @@ -320,6 +343,9 @@ export default { { required: true, message: 'Please specify', trigger: 'blur' }, { max: 300, message: 'The maximum length is 300' }, ], + IndicationEnum: [ + { required: true, message: 'Please select', trigger: 'blur' }, + ], StartTime: [ { required: true, message: 'Please specify', trigger: 'blur' }, ], @@ -351,6 +377,13 @@ export default { } }, computed: { + IndicationEnum_isOther() { + if (!this.clinicalTrialForm.IndicationEnum) return false + let value = this.$d.Indication.find( + (item) => item.value === this.clinicalTrialForm.IndicationEnum + ).label + return value === '其它' || value === 'Other' + }, Trial_Phase_isOther() { if (!this.clinicalTrialForm.PhaseId) return false let value = this.dictionaryList.Trial_Phase.find( @@ -368,10 +401,10 @@ export default { this.otherId ) }, - ReadingStandard() { - if (!this.dictionaryList.ReadingStandard) return [] + CriterionType() { + if (!this.dictionaryList.CriterionType) return [] return [ - ...this.dictionaryList.ReadingStandard, + ...this.dictionaryList.CriterionType, { Id: this.otherId, Value: 'Other', @@ -396,6 +429,11 @@ export default { this.clinicalTrialForm.OtherCriterion = null } }, + IndicationEnum_isOther() { + if (!this.IndicationEnum_isOther) { + this.form.EvaluationContent = null + } + }, }, created() { this.initForm() @@ -406,7 +444,13 @@ export default { const id = this.$route.query.Id || this.reviewerId if (id) { this.loading = true - getTrialExperience(id) + let data = { + DoctorId: id, + } + if (this.$route.query.trialId) { + data.TrialId = this.$route.query.trialId + } + getTrialExperience(data) .then((res) => { this.clinicalTrialList = res.Result.ClinicalTrialExperienceList this.GCP = res.Result.GCP @@ -422,7 +466,7 @@ export default { } }, getDicData() { - getBasicDataSelects(['Trial_Phase', 'ReadingStandard']).then((res) => { + getBasicDataSelects(['Trial_Phase', 'CriterionType']).then((res) => { this.dictionaryList = { ...res.Result } }) }, @@ -478,6 +522,9 @@ export default { 'YYYY' ) + '-01' } + if (this.$route.query.trialId) { + this.clinicalTrialForm.TrialId = this.$route.query.trialId + } addOrUpdateTrialExperience(this.clinicalTrialForm) .then((res) => { this.isDisabled = false diff --git a/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue b/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue index 8fe3a0ed..18be2ec1 100644 --- a/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue +++ b/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue @@ -48,6 +48,12 @@ prop="EvaluationContent" :label="$t('curriculumVitae:clinicalTrials:table:indication')" > + + {{ scope.row.EvaluationContent }} + + + {{ $fd('Indication', scope.row.IndicationEnum) }} + - {{ $fd('YesOrNo', scope.row.IsEnable) }} - {{ $fd('YesOrNo', scope.row.IsEnable) }} + {{ + $fd('YesOrNo', scope.row.IsEnable) + }} @@ -255,11 +300,20 @@ width="160" /> - + From 3633de8c35f4e012914b051220a3823615e8fe84 Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Wed, 30 Oct 2024 10:32:42 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E7=AE=80=E5=8E=86=E4=B8=B4=E5=BA=8A?= =?UTF-8?q?=E8=AF=95=E9=AA=8C=E7=BB=8F=E5=8E=86=E6=B7=BB=E5=8A=A0=E9=80=82?= =?UTF-8?q?=E5=BA=94=E7=97=87=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reviewers/components/TrialExperience.vue | 53 ++++++++++++++++-- .../components/info/clinicalTrials.vue | 56 ++++++++++++++++--- 2 files changed, 94 insertions(+), 15 deletions(-) diff --git a/src/views/reviewers/components/TrialExperience.vue b/src/views/reviewers/components/TrialExperience.vue index bf0676b3..5f761976 100644 --- a/src/views/reviewers/components/TrialExperience.vue +++ b/src/views/reviewers/components/TrialExperience.vue @@ -93,15 +93,16 @@ :disabled="$route.query.ReviewStatus === '1'" @click="handleEdit(scope.row)" > - {{ $t('common:button:edit') }} + {{ $t('common:button:edit') }} + {{ $t('common:button:delete') }} + {{ $t('common:button:delete') }} + @@ -250,13 +251,33 @@ :min="0" /> + + + + + + - + { OtherStages: '', OtherCriterion: '', IndicationEnum: null, + IndicationTypeId: null, } } export default { @@ -377,6 +399,17 @@ export default { } }, computed: { + IndicationOptions() { + if (!this.clinicalTrialForm.IndicationTypeId) return [] + let indicationGrouping = this.$d.IndicationType.filter( + (item) => item.id === this.clinicalTrialForm.IndicationTypeId + )[0].raw.ChildGroup + let arr = + this.$d.Indication.filter( + (item) => indicationGrouping === item.raw.ChildGroup + ) || [] + return arr + }, IndicationEnum_isOther() { if (!this.clinicalTrialForm.IndicationEnum) return false let value = this.$d.Indication.find( @@ -431,7 +464,7 @@ export default { }, IndicationEnum_isOther() { if (!this.IndicationEnum_isOther) { - this.form.EvaluationContent = null + this.clinicalTrialForm.EvaluationContent = null } }, }, @@ -487,6 +520,8 @@ export default { VisitReadingCount, OtherStages, OtherCriterion, + IndicationEnum, + IndicationTypeId, } = row this.clinicalTrialForm = Object.assign({}, getClinicalTrialDefault()) this.clinicalTrialDialogTitle = 'Edit' @@ -500,6 +535,8 @@ export default { this.clinicalTrialForm.EvaluationContent = EvaluationContent this.clinicalTrialForm.OtherStages = OtherStages this.clinicalTrialForm.OtherCriterion = OtherCriterion + this.clinicalTrialForm.IndicationEnum = IndicationEnum + this.clinicalTrialForm.IndicationTypeId = IndicationTypeId }, handleSave() { this.$refs.clinicalTrialForm.validate((valid) => { @@ -583,6 +620,10 @@ export default { } }) }, + handleIndicationTypeChange(val) { + this.clinicalTrialForm.EvaluationContent = null + this.clinicalTrialForm.IndicationEnum = null + }, }, } diff --git a/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue b/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue index 18be2ec1..fd809c46 100644 --- a/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue +++ b/src/views/reviewers/curriculumVitae/components/info/clinicalTrials.vue @@ -48,12 +48,14 @@ prop="EvaluationContent" :label="$t('curriculumVitae:clinicalTrials:table:indication')" > - - {{ scope.row.EvaluationContent }} - - - {{ $fd('Indication', scope.row.IndicationEnum) }} - + + + + + + + - + { OtherStages: '', OtherCriterion: '', IndicationEnum: null, + IndicationTypeId: null, } } const defaultCertificateForm = () => { @@ -624,6 +647,17 @@ export default { }, }, computed: { + IndicationOptions() { + if (!this.form.IndicationTypeId) return [] + let indicationGrouping = this.$d.IndicationType.filter( + (item) => item.id === this.form.IndicationTypeId + )[0].raw.ChildGroup + let arr = + this.$d.Indication.filter( + (item) => indicationGrouping === item.raw.ChildGroup + ) || [] + return arr + }, GCPData() { if (!this.DATA) return [] return [ @@ -927,6 +961,10 @@ export default { this.certificateForm = defaultCertificateForm() } }, + handleIndicationTypeChange(val) { + this.form.EvaluationContent = null + this.form.IndicationEnum = null + }, }, }