Compare commits

..

No commits in common. "c1bcaa7e5d0f59bdb6f75062781fefa0745ea416" and "cf943ea3280b9fce3117a0130353005d27fb0a27" have entirely different histories.

4 changed files with 68 additions and 68 deletions

View File

@ -22,13 +22,7 @@
</div> </div>
<el-table :data="questionForm[question.Id]"> <el-table :data="questionForm[question.Id]">
<el-table-column v-for="item of question.TableQuestions" :key="item.Id" :prop="item.Id" <el-table-column v-for="item of question.TableQuestions" :key="item.Id" :prop="item.Id"
:label="item.QuestionName" min-width="100" show-overflow-tooltip> :label="item.QuestionName" min-width="100" show-overflow-tooltip />
<template slot-scope="scope">
{{ scope.row[item.Id] && Array.isArray(scope.row[item.Id]) ?
scope.row[item.Id].join(" | ")
: scope.row[item.Id] }}
</template>
</el-table-column>
<el-table-column :label="$t('common:action:action')" min-width="100" show-overflow-tooltip> <el-table-column :label="$t('common:action:action')" min-width="100" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" size="mini" @click="openAddTableCol(question, scope.$index)"> <el-button type="text" size="mini" @click="openAddTableCol(question, scope.$index)">

View File

@ -1,30 +1,52 @@
<template> <template>
<div v-loading="loading" style="min-height: 500px;"> <div v-loading="loading" style="min-height: 500px;">
<el-form v-if="isRender" data-viewport-uid="lc" ref="questions" size="small" :model="questionForm" <el-form
:disabled="openType === 'look'"> v-if="isRender"
data-viewport-uid="lc"
ref="questions"
size="small"
:model="questionForm"
:disabled="openType === 'look'"
>
<template> <template>
<QuestionFormItem class="father" v-for="question of questions" :key="question.Id" :question="question" <QuestionFormItem
:question-form="questionForm" :trial-clinical-id="trialClinicalId" @resetFormItemData="resetFormItemData" class="father"
@setFormItemData="setFormItemData" /> v-for="question of questions"
:key="question.Id"
:question="question"
:question-form="questionForm"
:trial-clinical-id="trialClinicalId"
@resetFormItemData="resetFormItemData"
@setFormItemData="setFormItemData"
/>
</template> </template>
</el-form> </el-form>
<div class="base-dialog-footer" v-if="!isViewer && openType !== 'look' && [2, 3].includes(clinicalDataLevel)" <div class="base-dialog-footer" v-if="!isViewer && openType !== 'look' && [2, 3].includes(clinicalDataLevel)" style="text-align:right;margin-top:10px;">
style="text-align:right;margin-top:10px;"> <!-- 取消 -->
<!-- 取消 --> <el-button
<el-button size="small" type="primary" @click="close" size="small"
v-show="$route.path !== '/trials/trials-panel/visit/crc-upload' && $route.path !== '/trials/trials-panel/visit/crc-question'"> type="primary"
{{ $t('common:button:cancel') }} @click="close"
</el-button> v-show="$route.path !== '/trials/trials-panel/visit/crc-upload'&&$route.path!=='/trials/trials-panel/visit/crc-question'"
<!-- 保存 --> >
<el-button size="small" type="primary" @click="submitClinicalForm"> {{ $t('common:button:cancel') }}
{{ $t('common:button:save') }} </el-button>
</el-button> <!-- 保存 -->
<el-button size="small" type="primary" @click="submitClinicalForm">
{{ $t('common:button:save') }}
</el-button>
</div> </div>
<el-dialog v-if="signVisible" :visible.sync="signVisible" :close-on-click-modal="false" width="600px" append-to-body <el-dialog
custom-class="base-dialog-wrapper"> v-if="signVisible"
:visible.sync="signVisible"
:close-on-click-modal="false"
width="600px"
append-to-body
custom-class="base-dialog-wrapper"
>
<div slot="title"> <div slot="title">
<span style="font-size:18px;">{{ $t('common:dialogTitle:sign') }}</span> <span style="font-size:18px;">{{ $t('common:dialogTitle:sign') }}</span>
<span style="font-size:12px;margin-left:5px">{{ `(${$t('common:label:sign')}${currentUser})` }}</span> <span style="font-size:12px;margin-left:5px">{{ `(${$t('common:label:sign')}${ currentUser })` }}</span>
</div> </div>
<SignForm ref="signForm" :sign-code-enum="signCode" @closeDialog="closeSignDialog" /> <SignForm ref="signForm" :sign-code-enum="signCode" @closeDialog="closeSignDialog" />
</el-dialog> </el-dialog>
@ -84,7 +106,7 @@ export default {
}, },
data: { data: {
type: Object, type: Object,
default: () => { } default: () => {}
}, },
trialClinicalId: { trialClinicalId: {
type: String, type: String,
@ -144,7 +166,7 @@ export default {
let item = this.questionForm[v] let item = this.questionForm[v]
if (item instanceof Array) { if (item instanceof Array) {
let TableQuestionAnswers = item.map(o => { let TableQuestionAnswers = item.map(o => {
if (o instanceof Object) { if (o instanceof Object) {
return Object.keys(o).map(x => { return Object.keys(o).map(x => {
return { return {
TableQuestionId: x, TableQuestionId: x,
@ -229,7 +251,7 @@ export default {
if (item instanceof Array) { if (item instanceof Array) {
let isCheckBox = false let isCheckBox = false
let TableQuestionAnswers = item.map(o => { let TableQuestionAnswers = item.map(o => {
if (o instanceof Object) { if (o instanceof Object) {
return Object.keys(o).map(x => { return Object.keys(o).map(x => {
return { return {
TableQuestionId: x, TableQuestionId: x,
@ -365,12 +387,12 @@ export default {
} }
if (i.ClinicalQuestionType === 'table') { if (i.ClinicalQuestionType === 'table') {
this.$set(this.questionForm, i.Id, i.TableAnswer) this.$set(this.questionForm, i.Id, i.TableAnswer)
} else if (i.ClinicalQuestionType === 'checkbox') { } else if (i.ClinicalQuestionType === 'checkbox') {
this.$set(this.questionForm, i.Id, i.Answer ? i.Answer.split(',') : []) this.$set(this.questionForm, i.Id, i.Answer ? i.Answer.split(',') : [])
console.log(i.Answer ? i.Answer.split(',') : []) console.log(i.Answer ? i.Answer.split(',') : [])
console.log(this.questionForm) console.log(this.questionForm)
} else if (i.ClinicalQuestionType === 'number') { } else if (i.ClinicalQuestionType === 'number') {
this.$set(this.questionForm, i.Id, i.Answer || i.DefaultValue) this.$set(this.questionForm, i.Id, i.Answer)
} else if (i.Childrens && i.Childrens.length > 0) { } else if (i.Childrens && i.Childrens.length > 0) {
this.setChild(i.Childrens) this.setChild(i.Childrens)
} }
@ -383,7 +405,7 @@ export default {
this.questionForm[v] = 0 this.questionForm[v] = 0
} else if (qs.ClinicalQuestionType === 'checkbox') { } else if (qs.ClinicalQuestionType === 'checkbox') {
this.questionForm[v] = [] this.questionForm[v] = []
} else { } else{
this.questionForm[v] = '' this.questionForm[v] = ''
} }
}, },
@ -404,26 +426,23 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 7px; width: 7px;
height: 7px; height: 7px;
} }
::-webkit-scrollbar-thumb {
::-webkit-scrollbar-thumb { border-radius: 10px;
border-radius: 10px; background: #d0d0d0;
background: #d0d0d0; }
} .tabContent{
height:300px;
.tabContent {
height: 300px;
overflow-y: auto; overflow-y: auto;
} }
.father:after{
.father:after {
content: ""; content: "";
display: block; display: block;
height: 0; height: 0;
clear: both; clear:both;
visibility: hidden; visibility: hidden;
} }
</style> </style>

View File

@ -14,11 +14,6 @@
<el-form-item :label="$t('trials:readingUnit:qsList:title:qNameEn')" prop="QuestionEnName"> <el-form-item :label="$t('trials:readingUnit:qsList:title:qNameEn')" prop="QuestionEnName">
<el-input v-model="form.QuestionEnName" /> <el-input v-model="form.QuestionEnName" />
</el-form-item> </el-form-item>
<!--默认值-->
<el-form-item :label="$t('trials:readingUnit:qsList:title:defaultValue')" prop="DefaultValue"
v-if="form.ClinicalQuestionType === 'number'">
<el-input v-model="form.DefaultValue" />
</el-form-item>
<el-form-item <el-form-item
v-if="form.ClinicalQuestionType === 'select' || form.ClinicalQuestionType === 'radio' || form.ClinicalQuestionType === 'checkbox'" v-if="form.ClinicalQuestionType === 'select' || form.ClinicalQuestionType === 'radio' || form.ClinicalQuestionType === 'checkbox'"
:label="$t('trials:qcCfg:table:typeValue')" prop="TypeValue"> :label="$t('trials:qcCfg:table:typeValue')" prop="TypeValue">
@ -279,8 +274,7 @@ export default {
GroupId: null, GroupId: null,
CustomCalculateMark: -1, CustomCalculateMark: -1,
RelevanceId: '', RelevanceId: '',
RelevanceValue: '', RelevanceValue: ''
DefaultValue: ''
}, },
rules: { rules: {
ClinicalQuestionType: [ ClinicalQuestionType: [
@ -332,8 +326,8 @@ export default {
watch: { watch: {
data: { data: {
handler() { handler() {
if (this.data.CustomCalculateMark) { if (this.data.ClinicalQuestionType) {
this.getClinicalCalculateQuestions(this.data.CustomCalculateMark) this.getClinicalCalculateQuestions(this.data.ClinicalQuestionType)
} }
}, },
deep: true, deep: true,
@ -341,10 +335,10 @@ export default {
} }
}, },
methods: { methods: {
getClinicalCalculateQuestions(CustomCalculateMark = null) { getClinicalCalculateQuestions(type = null) {
getClinicalCalculateQuestions({ getClinicalCalculateQuestions({
TrialClinicalId: this.clinicalId, TrialClinicalId: this.clinicalId,
ClinicalQuestionType: [1, 2, 3, 4].includes(CustomCalculateMark) ? 'number' : 'time' ClinicalQuestionType: type || 'time'
}).then(res => { }).then(res => {
this.Questions = res.Result this.Questions = res.Result
}) })
@ -362,7 +356,6 @@ export default {
CustomCalculateMarkChange() { CustomCalculateMarkChange() {
this.isShow = false this.isShow = false
console.log(this.form.CustomCalculateMark) console.log(this.form.CustomCalculateMark)
this.getClinicalCalculateQuestions(this.form.CustomCalculateMark)
if (this.form.CustomCalculateMark < 0) { if (this.form.CustomCalculateMark < 0) {
this.form.CalculateQuestions = [] this.form.CalculateQuestions = []
return return
@ -539,7 +532,7 @@ export default {
} else { } else {
data.LesionType = null data.LesionType = null
} }
// this.getClinicalCalculateQuestions(val) this.getClinicalCalculateQuestions(val)
data.TypeValue = '' data.TypeValue = ''
data.ValueType = '' data.ValueType = ''
data.Unit = '' data.Unit = ''

View File

@ -715,16 +715,10 @@ export default {
}, },
methods: { methods: {
selectableStudyName(row) { selectableStudyName(row) {
let select = this.trialStudyNameList.filter((item) => item.IsChoose) return !this.form.StudyUseStudyNameList.includes(row.Name) || !this.form.StudyUseStudyNameList.includes(row.EnName)
return (!this.form.StudyUseStudyNameList.includes(row.Name) && !this.form.StudyUseStudyNameList.includes(row.EnName)) || (!select.includes(row) && (this.form.StudyUseStudyNameList.includes(row.EnName) || this.form.StudyUseStudyNameList.includes(row.Name)))
}, },
selectableModality(row) { selectableModality(row) {
var a = this.$d.Modality.filter((v) => { return !this.form.StudyUseModalityList.includes(row.value)
return !!this.form.ModalityList.find((v1) => {
return v1 === v.value
})
})
return !this.form.StudyUseModalityList.includes(row.value) || (!a.includes(row) && this.form.StudyUseModalityList.includes(row.value))
}, },
selectableBodyPart(row) { selectableBodyPart(row) {
return !row.IsStudyUse return !row.IsStudyUse