Compare commits

..

No commits in common. "8896737a9e8342fde3391702a98a27d67830f73d" and "d74c0028f6ffab4ea100c729bcefa8b8a5eeb147" have entirely different histories.

14 changed files with 306 additions and 425 deletions

View File

@ -8,14 +8,13 @@
:rules="rules"
>
<div class="base-dialog-body">
<!-- 标准名称 -->
<el-form-item :label="$t('trials:auditRecord:table:criterion')" prop="CriterionName">
<el-form-item label="标准名称" prop="CriterionName">
<el-input
v-model="form.CriterionName"
/>
</el-form-item>
<!-- 标准类型 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:criterionType')" prop="CriterionType">
<el-form-item label="标准类型" prop="CriterionType">
<el-select v-model="form.CriterionType">
<el-option
v-for="item of $d.CriterionType"
@ -25,8 +24,7 @@
/>
</el-select>
</el-form-item>
<!-- 标准分组 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:criterionGroup')" prop="CriterionGroup">
<el-form-item label="标准分组" prop="CriterionGroup">
<el-select v-model="form.CriterionGroup">
<el-option
v-for="item of $d.CriterionGroup"
@ -36,26 +34,23 @@
/>
</el-select>
</el-form-item>
<!-- 是否配置完成 -->
<el-form-item v-if="form.Id !== ''" :label="$t('dictionary:template:criterionConfig:table:isCompleteConfig')">
<el-form-item v-if="form.Id !== ''" label="是否配置完成">
<el-switch v-model="form.IsCompleteConfig" />
</el-form-item>
<!-- 描述 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:description')">
<el-form-item label="描述">
<el-input
v-model="form.Description"
/>
</el-form-item>
<!-- 显示序号 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:showOrder')" prop="ShowOrder">
<el-form-item label="显示序号: " prop="ShowOrder">
<el-input-number v-model="form.ShowOrder" :min="0" style="width:100%;" />
</el-form-item>
<!-- 是否启用 -->
<el-form-item v-if="form.Id !== ''" :label="$t('dictionary:template:criterionConfig:table:isEnable')">
<el-form-item v-if="form.Id !== ''" label="是否启用">
<el-switch v-model="form.IsEnable" />
</el-form-item>
<!-- eICRF仅展示阅片Tab -->
<el-form-item v-if="form.Id !== ''" :label="$t('dictionary:template:criterionConfig:table:isECRFShowInDicomReading')">
<el-form-item v-if="form.Id !== ''" label="eICRF仅展示阅片Tab">
<el-switch v-model="form.IseCRFShowInDicomReading" />
</el-form-item>
</div>

View File

@ -25,7 +25,7 @@
:prop="question.Id"
:rules="[
{ required: (question.IsRequired === 0 || (question.IsRequired ===1 && question.RelevanceId && question.RelevanceValueList.includes(questionForm[question.RelevanceId]))) && question.Type!=='group' && question.Type!=='summary',
message: this.$t('common:ruleMessage:specify'), trigger: ['blur', 'change']},
message: '请注明', trigger: ['blur', 'change']},
]"
:class="[question.Type==='group'?'mb':question.Type==='upload'?'uploadWrapper':'']"
>

View File

@ -11,7 +11,7 @@
<div class="base-dialog-body" style="height: 550px; display:flex;flex-direction: column;">
<div style="height: 150px;">
<!-- 类型 -->
<el-form-item :label="$t('trials:readingUnit:qsList:title:type')" prop="Type">
<el-form-item label="类型" prop="Type">
<el-select
v-model="form.Type"
clearable
@ -33,23 +33,22 @@
<!-- 分组名称 -->
<el-form-item
v-if="form.Type === 'group'"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')"
label="分组名称"
prop="GroupName"
>
<el-input v-model="form.GroupName" />
</el-form-item>
<!-- 分组名称EN -->
<el-form-item
v-if="form.Type === 'group'"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')"
label="分组名称EN"
prop="GroupEnName"
>
<el-input v-model="form.GroupEnName" />
</el-form-item>
<!-- 问题名称 -->
<el-form-item
v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')"
label="问题名称"
prop="QuestionName"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
@ -58,10 +57,10 @@
>
<el-input v-model="form.QuestionName" />
</el-form-item>
<!-- 问题名称EN -->
<el-form-item
v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')"
label="问题名称EN"
prop="QuestionEnName"
:rules="[
{ max: form.Type === 'summary' ? 300 : 100, message: `${this.$t('common:ruleMessage:maxLength')} ${form.Type === 'summary' ? 300 : 100}` }
@ -71,12 +70,10 @@
</el-form-item>
</div>
<div style="flex: 1;overflow-y:auto;">
<!-- 公有属性 -->
<el-divider content-position="left">{{$t('trials:readingUnit:title:publicProperties')}}</el-divider>
<!-- 问题分组 -->
<el-divider content-position="left">公有属性</el-divider>
<el-form-item
v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:qsGroupName')"
label="问题分组"
:rules="[
{ required: form.ShowQuestion === 1 ? false : true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
]"
@ -94,10 +91,9 @@
/>
</el-select>
</el-form-item>
<!-- 是否显示 -->
<el-form-item
v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:isShow')"
label="是否显示"
prop="ShowQuestion"
>
<el-radio-group
@ -121,7 +117,7 @@
<!-- 显示时依赖父问题 -->
<el-form-item
v-if="form.Type !== 'group' && form.ShowQuestion === 1"
:label="$t('trials:readingUnit:qsList:title:parentId')"
label="显示依赖父问题"
prop="ParentId"
>
<el-select
@ -144,7 +140,7 @@
<!-- 显示时依赖父问题触发值 -->
<el-form-item
v-if="form.ParentId && form.ShowQuestion === 1"
:label="$t('trials:readingUnit:qsList:title:parentTriggerValueList')"
label="显示触发值"
prop="ParentTriggerValueList"
>
<el-select v-model="form.ParentTriggerValueList" clearable multiple>
@ -156,10 +152,10 @@
/>
</el-select>
</el-form-item>
<!-- 是否必填 -->
<el-form-item
v-if="form.Type !== 'group' && form.Type !== 'table' && form.Type !== 'basicTable' && form.Type !== 'summary'"
:label="$t('trials:readingUnit:qsList:title:isRequired')" prop="IsRequired"
label="是否必填"
prop="IsRequired"
>
<el-radio-group
v-model="form.IsRequired"
@ -180,10 +176,10 @@
</el-radio-group>
</el-form-item>
<!-- 必填依赖父问题 -->
<!-- 父问题 -->
<el-form-item
v-if="form.Type !== 'group' && form.IsRequired === 1"
:label="$t('trials:readingUnit:qsList:title:relevanceId')"
label="必填依赖父问题"
prop="RelevanceId"
>
<el-select
@ -203,10 +199,10 @@
/>
</el-select>
</el-form-item>
<!-- 必填触发值 -->
<!-- 必填依赖的父问题触发值 -->
<el-form-item
v-if="form.RelevanceId && form.IsRequired === 1"
:label="$t('trials:readingUnit:qsList:title:relevanceValueList')"
label="必填触发值"
prop="RelevanceValueList"
>
<el-select v-model="form.RelevanceValueList" clearable multiple>
@ -218,7 +214,6 @@
/>
</el-select>
</el-form-item>
<!-- 是否裁判问题 -->
<el-form-item
v-if="
form.Type === 'select' ||
@ -226,7 +221,7 @@
form.Type === 'calculation' ||
form.Type === 'number'
"
:label="$t('trials:readingUnit:qsList:title:isJudgeQuestion')"
label="是否裁判问题"
prop="IsJudgeQuestion"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
@ -268,9 +263,8 @@
</el-radio>
</el-radio-group>
</el-form-item> -->
<!-- 导出结果 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:ExportResult')"
label="导出结果"
v-if="form.Type === 'radio' || form.Type === 'select' || form.Type === 'input' || form.Type === 'textarea' || form.Type === 'number' || form.Type === 'class' || form.Type === 'calculation'"
>
<el-select v-model="form.ExportResult" multiple>
@ -283,9 +277,9 @@
</el-option>
</el-select>
</el-form-item>
<!-- 限制编辑 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:limitEdit')"
label="限制编辑"
v-if="form.Type === 'radio' || form.Type === 'select' || form.Type === 'input' || form.Type === 'textarea' || form.Type === 'upload' || form.Type === 'number' || form.Type === 'screenshot'"
prop="LimitEdit"
:rules="[
@ -301,9 +295,8 @@
>
</el-radio-group>
</el-form-item>
<!-- 全局阅片是否显示 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:globalReadingShowType')"
label="全局阅片是否显示"
prop="GlobalReadingShowType"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
@ -318,9 +311,8 @@
>
</el-radio-group>
</el-form-item>
<!-- 问题标识 -->
<el-form-item
:label="$t('dictionary:template:criterionConfig:table:questionType')"
label="问题标识"
v-if="form.Type !== 'group' && form.Type !== 'summary'"
prop="QuestionType"
>
@ -333,9 +325,8 @@
/>
</el-select>
</el-form-item>
<!-- 是否在阅片页面显示 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:isShowInDicom')"
label="是否在阅片页面显示"
prop="IsShowInDicom"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
@ -350,16 +341,14 @@
>
</el-radio-group>
</el-form-item>
<!-- 注释 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:Remark')"
label="注释"
prop="Remark"
>
<el-input v-model="form.Remark" />
</el-form-item>
<!-- 序号 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:order')"
label="序号"
prop="ShowOrder"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
@ -372,8 +361,7 @@
/>
</el-form-item>
<!-- 适用于Lugano 2014标准 -->
<!-- 问题分类 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:questionClassify')" v-if="form.Type !== 'group' && criterionType === 2">
<el-form-item label="问题分类" v-if="form.Type !== 'group' && criterionType === 2">
<el-select v-model="form.QuestionClassify" clearable>
<el-option
v-for="item of $d.QuestionClassify"
@ -384,8 +372,7 @@
</el-select>
</el-form-item>
<!-- 适用于iRECST标准 -->
<!-- 转化显示类型 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:convertType')" prop="ConvertShowType" v-if="criterionType === 3">
<el-form-item label="转化显示类型" prop="ConvertShowType" v-if="criterionType === 3">
<el-radio-group v-model="form.ConvertShowType">
<el-radio
v-for="item of $d.ConvertShowType"
@ -396,18 +383,16 @@
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 私有属性 -->
<el-divider content-position="left">{{$t('trials:readingUnit:title:privateProperties')}}</el-divider>
<!-- 选项类型 -->
<el-divider content-position="left">私有属性</el-divider>
<el-form-item
v-if="
form.Type === 'select' ||
form.Type === 'radio' ||
form.Type === 'calculation'
"
:label="$t('trials:readingUnit:label:QuestionGenre')"
label="选项类型"
prop="QuestionGenre"
:rules="[{ required: form.Type !== 'calculation', message: this.$t('common:ruleMessage:select') }]"
:rules="[{ required: form.Type !== 'calculation', message: '请选择' }]"
>
<el-radio-group
v-model="form.QuestionGenre"
@ -417,7 +402,7 @@
}
"
>
<el-radio :label="-1"> {{ this.$t('common:title:none') }} </el-radio>
<el-radio :label="-1"> </el-radio>
<el-radio
v-for="item of $d.TableQuestionType"
v-show="item.value === 0 || item.value === 3"
@ -428,23 +413,23 @@
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 选项 -->
<el-form-item
v-if="form.QuestionGenre === 0 || form.Type === 'class'"
:label="$t('trials:qcCfg:table:typeValue')"
label="选项"
prop="TypeValue"
>
<el-input
v-model="form.TypeValue"
:placeholder="$t('trials:qcCfg:message:typeValue')"
placeholder="选项请用‘|’分割多个选项"
@change="typeValueChange"
/>
</el-form-item>
<!-- 关联字典 -->
<el-form-item
v-if="form.QuestionGenre === 3"
:label="$t('trials:readingUnit:label:DictionaryCode')"
label="关联字典"
prop="DictionaryCode"
>
<el-select
@ -464,8 +449,8 @@
/>
</el-select>
</el-form-item>
<!-- 默认值 -->
<el-form-item v-if="form.QuestionGenre === 3" :label="$t('trials:readingUnit:qsList:title:defaultValue')">
<el-form-item v-if="form.QuestionGenre === 3" label="默认值">
<el-select v-model="form.DefaultValue" clearable>
<el-option
v-for="item of highlightAnswers"
@ -475,8 +460,7 @@
/>
</el-select>
</el-form-item>
<!-- 默认值 -->
<el-form-item v-if="form.QuestionGenre === 0" :label="$t('trials:readingUnit:qsList:title:defaultValue')">
<el-form-item v-if="form.QuestionGenre === 0" label="默认值">
<el-select v-model="form.DefaultValue" clearable>
<el-option
v-for="item of form.TypeValue ? form.TypeValue.split('|') : []"
@ -486,10 +470,9 @@
/>
</el-select>
</el-form-item>
<!-- 高亮标记值 -->
<el-form-item
v-if="form.Type === 'select' || form.Type === 'radio'"
:label="$t('trials:readingUnit:qsList:title:highlightAnswers')"
label="高亮标记值"
prop="HighlightAnswerList"
>
<el-select v-model="form.HighlightAnswerList" clearable multiple>
@ -511,9 +494,8 @@
</template>
</el-select>
</el-form-item>
<!-- 分组标识 -->
<el-form-item
:label="$t('dictionary:template:criterionConfig:table:groupClassify')"
label="分组标识"
v-if="form.Type === 'group'"
prop="GroupClassify"
>
@ -526,10 +508,9 @@
/>
</el-select>
</el-form-item>
<!-- 最大长度 -->
<el-form-item
v-if="form.Type === 'input' || form.Type === 'textarea'"
:label="$t('trials:readingUnit:qsList:title:MaxAnswerLength')"
label="最大长度"
prop="MaxAnswerLength"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' }
@ -537,10 +518,9 @@
>
<el-input-number v-model="form.MaxAnswerLength" :min="0"></el-input-number>
</el-form-item>
<!-- 最大行数 -->
<el-form-item
v-if="form.Type === 'table' || form.Type === 'basicTable'"
:label="$t('trials:readingUnit:qsList:title:maxQuestionCount')"
label="最大行数"
prop="MaxQuestionCount"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' }
@ -553,16 +533,16 @@
:max="10"
/>
</el-form-item>
<el-form-item v-if="form.Type === 'table' || form.Type === 'basicTable'" :label="$t('trials:readingUnit:qsList:title:orderMark')">
<el-form-item v-if="form.Type === 'table' || form.Type === 'basicTable'" label="自增序号前缀">
<el-input v-model="form.OrderMark" />
</el-form-item>
<!-- 数值类型 -->
<el-form-item
v-if="form.Type === 'number' || form.Type === 'calculation'"
:label="$t('trials:readingUnit:qsList:title:valueType')"
label="数值类型"
prop="ValueType"
:rules="[{ required: true, message: this.$t('common:ruleMessage:select') }]"
:rules="[{ required: true, message: '请选择' }]"
>
<el-radio-group v-model="form.ValueType">
<el-radio
@ -575,10 +555,10 @@
</el-radio-group>
</el-form-item>
<!-- 单位 -->
<!-- 数值单位 -->
<el-form-item
v-if="form.Type === 'number' || form.Type === 'calculation'"
:label="$t('trials:readingUnit:qsList:title:unit')"
label="单位"
prop="Unit"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
@ -594,10 +574,9 @@
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 表格类型标识 -->
<el-form-item
v-if="form.Type === 'table'"
:label="$t('dictionary:template:criterionConfig:table:tableType')"
label="表格类型标识"
prop="LesionType"
>
<el-select v-model="form.LesionType" clearable>
@ -609,10 +588,9 @@
/>
</el-select>
</el-form-item>
<!-- 表格类型标识 -->
<el-form-item
v-if="form.Type === 'basicTable'"
:label="$t('dictionary:template:criterionConfig:table:tableType')"
label="表格类型标识"
prop="LesionType"
>
<el-select v-model="form.LesionType" clearable>
@ -624,10 +602,9 @@
/>
</el-select>
</el-form-item>
<!-- 关联字典 -->
<el-form-item
v-if="form.Type === 'table' || form.Type === 'basicTable'"
:label="$t('dictionary:template:criterionConfig:table:relatedDictionaryCode')"
label="关联字典"
>
<el-select
v-model="form.DictionaryCode"
@ -646,10 +623,9 @@
/>
</el-select>
</el-form-item>
<!-- 最大上传个数 -->
<el-form-item
v-if="form.Type === 'upload'"
:label="$t('trials:readingUnit:qsList:title:imageCount')"
label="最大上传个数"
>
<el-input-number
v-model="form.ImageCount"
@ -661,7 +637,7 @@
<!-- 文件类型 -->
<el-form-item
v-if="form.Type === 'upload'"
:label="$t('trials:readingUnit:qsList:title:FileType')"
label="文件类型"
prop="FileType"
:rules="[{ type: 'array', required: true, message: this.$t('common:ruleMessage:specify'), trigger: [ 'change'] }]"
>
@ -684,10 +660,10 @@
</el-checkbox>
</el-checkbox-group>
</el-form-item>
<!-- 分类数据来源 -->
<!-- 分类 -->
<el-form-item
v-if="form.Type === 'class'"
:label="$t('dictionary:template:criterionConfig:table:classifyQuestion')"
label="分类数据来源"
prop="ClassifyQuestionId"
>
<el-select v-model="form.ClassifyQuestionId" clearable>
@ -695,10 +671,9 @@
:value="item.Id"/>
</el-select>
</el-form-item>
<!-- 分类算法 -->
<el-form-item
v-if="form.Type === 'class'"
:label="$t('dictionary:template:criterionConfig:table:classifyAlgorithms')"
label="分类算法"
prop="ClassifyAlgorithms"
>
<div>
@ -810,7 +785,7 @@ export default {
} else {
var arr = value.split('|')
if (new Set(arr).size !== arr.length) {
callback(new Error(this.$t('trials:readingUnit:qsList:message:msg0')))
callback(new Error('选项不允许存在相同值'))
} else {
callback()
}
@ -865,34 +840,34 @@ export default {
ClassifyAlgorithms: null,
},
rules: {
Type: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
LesionType: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
Type: [{ required: true, message: '请选择', trigger: 'blur' }],
LesionType: [{ required: true, message: '请选择', trigger: 'blur' }],
// QuestionName: [
// { required: true, message: '', trigger: 'blur' },
// { max: 300, message: ' 300' },
// ],
QuestionGenre: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
QuestionGenre: [{ required: true, message: '请选择', trigger: 'blur' }],
TypeValue: [
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ required: true, message: '请注明', trigger: 'blur' },
{ validator: validateTypeVal, trigger: 'blur' },
{ max: 500, message: `${this.$t('common:ruleMessage:maxLength')} 500` },
{ max: 500, message: '最大长度为 500' },
],
DictionaryCode: [
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' },
{ required: true, message: '请选择', trigger: 'blur' },
],
ShowQuestion: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
IsRequired: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
ParentId: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
ShowQuestion: [{ required: true, message: '请选择', trigger: 'blur' }],
IsRequired: [{ required: true, message: '请选择', trigger: 'blur' }],
ParentId: [{ required: true, message: '请选择', trigger: 'blur' }],
ParentTriggerValueList: [
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' },
{ required: true, message: '请选择', trigger: 'blur' },
],
RelevanceId: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
RelevanceId: [{ required: true, message: '请选择', trigger: 'blur' }],
RelevanceValueList: [
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' },
{ required: true, message: '请选择', trigger: 'blur' },
],
GroupName: [
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 50, message: `${this.$t('common:ruleMessage:maxLength')} 50` },
{ required: true, message: '请注明', trigger: 'blur' },
{ max: 50, message: '最大长度为 50' },
],
// ExportIdentification: [
// { required: true, message: '', trigger: 'blur' },

View File

@ -1,15 +1,13 @@
<template>
<el-tabs v-model="activeName" @tab-click="handleClick">
<!-- 器官 -->
<el-tab-pane :label="$t('dictionary:template:basicData:organs')" name="organs">
<el-tab-pane label="器官" name="organs">
<OrgansTbl
:criterion-id="criterionId"
:is-complete-config="isCompleteConfig"
/>
</el-tab-pane>
<!-- 疗效评估 -->
<el-tab-pane :label="$t('dictionary:template:basicData:efficacyAssessment')" name="efficacyAssessment">
<el-tab-pane label="疗效评估" name="efficacyAssessment">
<EfficacyAssessment
v-if="tabs.includes('efficacyAssessment')"
:criterion-id="criterionId"
@ -17,8 +15,7 @@
:is-complete-config="isCompleteConfig"
/>
</el-tab-pane>
<!-- 标准字典 -->
<el-tab-pane :label="$t('dictionary:template:basicData:criterionDictionary')" name="criterionDictionary">
<el-tab-pane label="标准字典" name="criterionDictionary">
<CriterionDictionary
v-if="tabs.includes('criterionDictionary')"
:criterion-id="criterionId"

View File

@ -1,12 +1,10 @@
<template>
<div class="criterion-config">
<el-tabs v-model="activeName">
<!-- 访视阅片 -->
<el-tab-pane :label="$t('dictionary:template:criterionConfig:tab:visitReview')" name="0">
<el-tab-pane :label="'访视阅片'" name="0">
<div class="search-form" style="display:flex;justify-content: space-between;">
<el-form :inline="true" size="mini" class="base-search-form">
<!-- 问题名称 -->
<el-form-item :label="$t('trials:readingUnit:qsList:title:qsNameEn')">
<el-form-item label="名称">
<el-input v-model="searchData.QuestionName" clearable style="width:120px;" />
</el-form-item>
<el-form-item>
@ -29,7 +27,7 @@
type="primary"
@click="handlePreview"
>
{{ $t('common:button:preview') }}
预览
</el-button>
<el-button
v-if="Object.keys(data).length > 0 && !(data.IsCompleteConfig || data.IsBeUsed)"
@ -37,7 +35,7 @@
type="primary"
@click="handleAdd"
>
{{ $t('common:button:add') }}
添加
</el-button>
</div>
@ -51,70 +49,61 @@
stripe
@sort-change="handleSortByColumn"
>
<!-- 显示序号 -->
<el-table-column
prop="ShowOrder"
label=""
width="50"
/>
<!-- 分组 -->
<el-table-column
prop="GroupName"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')"
label="分组"
show-overflow-tooltip
/>
<!-- 分组(EN) -->
<el-table-column
prop="GroupEnName"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')"
label="分组(EN)"
show-overflow-tooltip
/>
<!-- 名称 -->
<el-table-column
prop="QuestionName"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')"
label="名称"
show-overflow-tooltip
/>
<!-- 名称(EN) -->
<el-table-column
prop="QuestionEnName"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')"
label="名称(EN)"
show-overflow-tooltip
/>
<!-- 题型 -->
<el-table-column
prop="Type"
:label="$t('trials:readingUnit:qsList:title:type')"
label="题型"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ $fd('Criterion_Question_Type',scope.row.Type) }}
</template>
</el-table-column>
<!-- 是否显示 -->
<el-table-column
prop="ShowQuestion"
:label="$t('trials:readingUnit:qsList:title:isShow')"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ $fd('ShowQuestion',scope.row.ShowQuestion) }}
</template>
</el-table-column>
<!-- 是否必填 -->
<el-table-column
prop="IsRequired"
:label="$t('trials:readingUnit:qsList:title:isRequired')"
label="是否必填"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ $fd('QuestionRequired',scope.row.IsRequired) }}
</template>
</el-table-column>
<!-- 是否裁判问题 -->
<el-table-column
prop="ShowQuestion"
label="是否显示"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ $fd('ShowQuestion',scope.row.ShowQuestion) }}
</template>
</el-table-column>
<el-table-column
prop="IsJudgeQuestion"
:label="$t('trials:readingUnit:qsList:title:isJudgeQuestion')"
label="是否裁判问题"
width="120"
show-overflow-tooltip
>
@ -122,10 +111,9 @@
{{ $fd('YesOrNo', scope.row.IsJudgeQuestion) }}
</template>
</el-table-column>
<!-- 是否在阅片页面显示 -->
<el-table-column
prop="IsShowInDicom"
:label="$t('trials:readingUnit:qsList:title:isShowInDicom')"
label="是否在阅片页面显示"
width="150"
show-overflow-tooltip
>
@ -141,10 +129,9 @@
show-overflow-tooltip
>
</el-table-column> -->
<!-- 是否在全局阅片显示 -->
<el-table-column
prop="GlobalReadingShowType"
:label="$t('trials:readingUnit:qsList:title:globalReadingShowType')"
label="是否在全局阅片显示"
width="160"
show-overflow-tooltip
>
@ -166,7 +153,7 @@
<!-- 问题标识 -->
<el-table-column
prop="QuestionType"
:label="$t('dictionary:template:criterionConfig:table:questionType')"
label="问题标识"
width="140"
show-overflow-tooltip
>
@ -198,7 +185,7 @@
</el-table-column>
<el-table-column
prop=""
:label="$t('common:action:action')"
label="操作"
width="250"
show-overflow-tooltip
fixed="right"
@ -210,7 +197,7 @@
size="mini"
@click="handleEdit(scope.row)"
>
{{ $t('trials:readingUnit:qsList:title:edit') }}
编辑
</el-button>
<el-button
v-else
@ -218,7 +205,7 @@
size="mini"
@click="handleLook(scope.row)"
>
{{ $t('trials:readingUnit:qsList:title:view') }}
查看
</el-button>
<el-button
type="primary"
@ -226,7 +213,7 @@
:disabled="!(scope.row.Type === 'table' || scope.row.Type === 'basicTable')"
@click="handleConfig(scope.row)"
>
{{ $t('trials:readingUnit:qsList:title:tableQs') }}
表格问题
</el-button>
<el-button
v-if="Object.keys(data).length > 0 && !(data.IsCompleteConfig || data.IsBeUsed)"
@ -235,19 +222,17 @@
:disabled="scope.row.IsEnable"
@click="handleDelete(scope.row)"
>
{{ $t('trials:readingUnit:qsList:title:delete') }}
删除
</el-button>
</template>
</el-table-column>
</el-table>
<pagination style="text-align: right;margin-top: 10px;" class="page" :total="total" :page.sync="searchData.PageIndex" :limit.sync="searchData.PageSize" @pagination="getList" />
</el-tab-pane>
<!-- 全局阅片 -->
<el-tab-pane :label="$t('dictionary:template:criterionConfig:tab:globalReview')" name="Global">
<el-tab-pane label="全局阅片" name="Global">
<EvaluationOfGlobalConfig v-if="activeName === 'Global'" :data="data" :criterion-id="criterionId" />
</el-tab-pane>
<!-- 肿瘤学阅片 -->
<el-tab-pane :label="$t('dictionary:template:criterionConfig:tab:oncologyReview')" name="Oncology">
<el-tab-pane label="肿瘤学阅片" name="Oncology">
<EvaluationOfOncologyConfig v-if="activeName === 'Oncology'" :data="data" :criterion-id="criterionId" />
</el-tab-pane>
</el-tabs>
@ -376,19 +361,19 @@ export default {
handleAdd() {
this.rowData = { ReadingQuestionCriterionSystemId: this.criterionId, Id: ''}
this.type = 'add'
this.addOrEdit.title = this.$t('common:button:new')
this.addOrEdit.title = '添加'
this.addOrEdit.visible = true
},
},
handleLook(row) {
this.rowData = { ...row }
this.type = 'look'
this.addOrEdit.title = this.$t('common:button:view')
this.addOrEdit.title = '查看'
this.addOrEdit.visible = true
},
handleEdit(row) {
this.rowData = { ...row }
this.type = 'edit'
this.addOrEdit.title = this.$t('common:button:edit')
this.addOrEdit.title = '编辑'
this.addOrEdit.visible = true
},
handleDelete(row) {
@ -403,7 +388,7 @@ export default {
this.loading = false
if (res.IsSuccess) {
this.getList()
this.$message.success(this.$t('common:message:deletedSuccessfully'))
this.$message.success('删除成功!')
}
}).catch(() => { this.loading = false })
})

View File

@ -325,7 +325,7 @@ export default {
deleteReadingQuestionCriterionSystem(row.Id).then(res => {
this.loading = false
if (res.IsSuccess) {
this.$message.success(this.$t('common:message:deletedSuccessfully'))
this.$message.success(this.$t('common:message:savedSuccessfully'))
this.getList()
}
}).catch(() => { this.loading = false })

View File

@ -1,13 +1,10 @@
<template>
<div style="position: relative">
<el-form size="small" :inline="true" label-width="130px" style="position: relative;">
<!-- 阅片规则 -->
<el-divider content-position="left">{{ $t('dictionary:template:globalConfig:readingRules') }}</el-divider>
<!-- 是否必须全局阅片 -->
<el-form-item :label="$t('dictionary:template:globalConfig:isMustGlobalReading')">
<el-divider content-position="left">阅片规则</el-divider>
<el-form-item label="是否必须全局阅片">
{{ $fd('YesOrNo', IsMustGlobalReading) }}
</el-form-item>
<!-- 配置 -->
<el-button
size="mini"
type="primary"
@ -15,13 +12,11 @@
v-if="Object.keys(data).length > 0 && !(data.IsCompleteConfig || data.IsBeUsed)"
@click="handleAdd(1)"
>
{{ $t('dictionary:template:globalConfig:config') }}
配置
</el-button>
</el-form>
<el-form size="small" :inline="true" label-width="110px" style="position: relative">
<!-- 名称 -->
<el-divider content-position="left">{{ $t('dictionary:template:globalConfig:name') }}</el-divider>
<!-- 配置 -->
<el-divider content-position="left">名称</el-divider>
<el-button
size="mini"
type="primary"
@ -29,10 +24,9 @@
v-if="Object.keys(data).length > 0 && !(data.IsCompleteConfig || data.IsBeUsed)"
@click="handleAdd(2)"
>
{{ $t('dictionary:template:globalConfig:config') }}
配置
</el-button>
<!-- 评估更新类型 -->
<el-form-item :label="$t('dictionary:template:globalConfig:updateType')" style="width: 100%">
<el-form-item label="评估更新类型" style="width: 100%">
</el-form-item>
<el-table
v-loading="loading"
@ -40,34 +34,30 @@
:data="list"
stripe
>
<!-- 序号 -->
<el-table-column
prop=""
:label="$t('dictionary:template:globalConfig:order')"
label="序号"
width="50"
>
<template slot-scope="scope">
{{scope.$index + 1}}
</template>
</el-table-column>
<!-- 中文值 -->
<el-table-column
prop="ValueCN"
:label="$t('dictionary:template:globalConfig:valueCN')"
label="中文值"
show-overflow-tooltip
>
</el-table-column>
<!-- 英文值 -->
<el-table-column
prop="Value"
:label="$t('dictionary:template:globalConfig:value')"
label="英文值"
show-overflow-tooltip
>
</el-table-column>
<!-- 是否基线评估 -->
<el-table-column
prop="IsBaseLineUse"
:label="$t('dictionary:template:globalConfig:isBaseLineUse')"
label="是否基线评估"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -80,10 +70,9 @@
<el-tag v-else type="danger">{{ $fd('YesOrNo', scope.row.IsBaseLineUse) }}</el-tag>
</template>
</el-table-column>
<!-- 是否随访评估 -->
<el-table-column
prop="IsFollowVisitUse"
:label="$t('dictionary:template:globalConfig:isFollowVisitUse')"
label="是否随访评估"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -104,14 +93,12 @@
>
<template slot="dialog-body">
<el-form size="small" :inline="true" label-width="130px">
<!-- 是否必须全局阅片 -->
<el-form-item :label="$t('dictionary:template:globalConfig:isMustGlobalReading')" v-if="config.configType === 1">
<el-form-item label="是否必须全局阅片" v-if="config.configType === 1">
<el-radio-group v-model="form.IsMustGlobalReading">
<el-radio v-for="item of $d.YesOrNo" :key="'form.IsMustGlobalReading' + item.value" :label="item.value">{{ item.label }}</el-radio>
</el-radio-group>
</el-form-item>
<!-- 评估更新类型 -->
<el-form-item v-if="config.configType === 2" :label="$t('dictionary:template:globalConfig:updateType')" style="width: 100%">
<el-form-item v-if="config.configType === 2" label="评估更新类型" style="width: 100%">
</el-form-item>
<el-table
v-if="config.configType === 2"
@ -125,24 +112,21 @@
type="selection"
width="55">
</el-table-column>
<!-- 中文值 -->
<el-table-column
prop="ValueCN"
:label="$t('dictionary:template:globalConfig:valueCN')"
label="中文值"
show-overflow-tooltip
>
</el-table-column>
<!-- 英文值 -->
<el-table-column
prop="Value"
:label="$t('dictionary:template:globalConfig:value')"
label="英文值"
show-overflow-tooltip
>
</el-table-column>
<!-- 是否基线评估 -->
<el-table-column
prop="IsBaseLineUse"
:label="$t('dictionary:template:globalConfig:isBaseLineUse')"
label="是否基线评估"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -154,10 +138,9 @@
<span>{{$fd('YesOrNo', scope.row.IsBaseLineUse)}}</span>
</template>
</el-table-column>
<!-- 是否随访评估 -->
<el-table-column
prop="IsFollowVisitUse"
:label="$t('dictionary:template:globalConfig:isFollowVisitUse')"
label="是否随访评估"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -173,12 +156,8 @@
</el-form>
</template>
<template slot="dialog-footer">
<el-button :disabled="loading" size="small" type="primary" @click="config.visible = false">
{{ $t('common:button:cancel') }}
</el-button>
<el-button size="small" type="primary" :loading="loading" @click="handleSave">
{{ $t('common:button:save') }}
</el-button>
<el-button :disabled="loading" size="small" type="primary" @click="config.visible = false">取消</el-button>
<el-button size="small" type="primary" :loading="loading" @click="handleSave"></el-button>
</template>
</base-model>
</div>
@ -207,8 +186,8 @@ export default {
rowData: {},
activeName: '0',
addOrEdit: { visible: false, title: '' },
// preview: { visible: false, title: 'eCRF' },
config: { visible: false, title: this.$t('dictionary:template:globalConfig:updateType'), appendToBody: true, width: '600px', configType: 0 },
preview: { visible: false, title: 'eCRF预览' },
config: { visible: false, title: '评估更新类型', appendToBody: true, width: '600px', configType: 0 },
selectedList: [],
IsMustGlobalReading: false,
form: {
@ -290,10 +269,10 @@ export default {
this.config.configType = n
this.form.IsMustGlobalReading = this.IsMustGlobalReading
if (n === 1) {
this.config.title = this.$t('dictionary:template:globalConfig:isMustGlobalReading')
this.config.title = '是否必须全局阅片'
this.config.visible = true
} else {
this.config.title = this.$t('dictionary:template:globalConfig:updateType')
this.config.title = '评估更新类型'
this.config.visible = true
this.$nextTick(() => {
var a = this.$d.GlobalAssessType.filter(v => {
@ -343,4 +322,8 @@ export default {
}
</script>
<style scoped>
/deep/ .el-form-item__content{
width: calc(100% - 130px);
}
</style>

View File

@ -1,13 +1,10 @@
<template>
<div>
<el-form size="small" :inline="true" label-width="110px" style="position: relative;">
<!-- 阅片规则 -->
<el-divider content-position="left">{{ $t('dictionary:template:globalConfig:readingRules') }}</el-divider>
<!-- 是否肿瘤学阅片 -->
<el-form-item :label="$t('dictionary:template:oncologyConfig:isOncologyReading')" style="width: 100%">
<el-divider content-position="left">阅片规则</el-divider>
<el-form-item label="是否肿瘤学阅片" style="width: 100%">
{{ $fd('YesOrNo', IsOncologyReading)}}
</el-form-item>
<!-- 配置 -->
<el-button
size="mini"
type="primary"
@ -15,13 +12,11 @@
v-if="Object.keys(data).length > 0 && !(data.IsCompleteConfig || data.IsBeUsed)"
@click="handleAdd(1)"
>
{{ $t('dictionary:template:globalConfig:config') }}
配置
</el-button>
</el-form>
<el-form size="small" :inline="true" label-width="110px" style="position: relative">
<!-- 阅片问题 -->
<el-divider content-position="left">{{ $t('dictionary:template:oncologyConfig:reviewQs') }}</el-divider>
<!-- 配置 -->
<el-divider content-position="left">阅片问题</el-divider>
<el-button
size="mini"
type="primary"
@ -29,10 +24,9 @@
v-if="Object.keys(data).length > 0 && !(data.IsCompleteConfig || data.IsBeUsed)"
@click="handleAdd(2)"
>
{{ $t('dictionary:template:globalConfig:config') }}
配置
</el-button>
<!-- 肿瘤学阅片结果 -->
<el-form-item :label="$t('dictionary:template:oncologyConfig:reviewResult')" style="width: 100%">
<el-form-item label="肿瘤学阅片结果" style="width: 100%">
</el-form-item>
</el-form>
<el-table
@ -41,27 +35,24 @@
:data="list"
stripe
>
<!-- 序号 -->
<el-table-column
prop=""
:label="$t('dictionary:template:globalConfig:order')"
label="序号"
width="50"
>
<template slot-scope="scope">
{{scope.$index + 1}}
</template>
</el-table-column>
<!-- 中文值 -->
<el-table-column
prop="ValueCN"
:label="$t('dictionary:template:globalConfig:valueCN')"
label="中文值"
show-overflow-tooltip
>
</el-table-column>
<!-- 英文值 -->
<el-table-column
prop="Value"
:label="$t('dictionary:template:globalConfig:value')"
label="英文值"
show-overflow-tooltip
>
</el-table-column>
@ -69,14 +60,12 @@
<base-model :config="config">
<template slot="dialog-body">
<el-form size="small" :inline="true" label-width="110px">
<!-- 是否肿瘤学阅片 -->
<el-form-item :label="$t('dictionary:template:oncologyConfig:isOncologyReading')" v-if="config.configType === 1">
<el-form-item label="是否肿瘤学阅片" v-if="config.configType === 1">
<el-radio-group v-model="form.IsOncologyReading">
<el-radio v-for="item of $d.YesOrNo" :key="'form.IsOncologyReading' + item.value" :label="item.value">{{ item.label }}</el-radio>
</el-radio-group>
</el-form-item>
<!-- 肿瘤学阅片结果 -->
<el-form-item :label="$t('dictionary:template:oncologyConfig:reviewResult')" style="width: 100%" v-if="config.configType === 2">
<el-form-item label="肿瘤学阅片结果" style="width: 100%" v-if="config.configType === 2">
</el-form-item>
<el-table
v-if="config.configType === 2"
@ -91,17 +80,15 @@
type="selection"
width="55">
</el-table-column>
<!-- 中文值 -->
<el-table-column
prop="ValueCN"
:label="$t('dictionary:template:globalConfig:valueCN')"
label="中文值"
show-overflow-tooltip
>
</el-table-column>
<!-- 英文值 -->
<el-table-column
prop="Value"
:label="$t('dictionary:template:globalConfig:value')"
label="英文值"
show-overflow-tooltip
>
</el-table-column>
@ -109,12 +96,8 @@
</el-form>
</template>
<template slot="dialog-footer">
<el-button :disabled="loading" size="small" type="primary" @click="config.visible = false">
{{ $t('common:button:cancel') }}
</el-button>
<el-button size="small" type="primary" :loading="loading" @click="handleSave">
{{ $t('common:button:save') }}
</el-button>
<el-button :disabled="loading" size="small" type="primary" @click="config.visible = false">取消</el-button>
<el-button size="small" type="primary" :loading="loading" @click="handleSave"></el-button>
</template>
</base-model>
</div>
@ -146,7 +129,8 @@ export default {
rowData: {},
activeName: '0',
addOrEdit: { visible: false, title: '' },
config: { visible: false, title: this.$t('dictionary:template:oncologyConfig:reviewResult'), appendToBody: true, width: '600px', configType: 0 },
preview: { visible: false, title: 'eCRF预览' },
config: { visible: false, title: '肿瘤学阅片结果', appendToBody: true, width: '600px', configType: 0 },
selectedList: [],
OncologyAssessType: [],
IsOncologyReading: true
@ -193,10 +177,10 @@ export default {
handleAdd(n) {
this.config.configType = n
if (n === 1) {
this.config.title = this.$t('dictionary:template:oncologyConfig:isOncologyReading')
this.config.title = '是否肿瘤学阅片'
this.config.visible = true
} else {
this.config.title = this.$t('dictionary:template:oncologyConfig:reviewResult')
this.config.title = '肿瘤学阅片结果'
this.config.visible = true
this.$nextTick(() => {
var a = this.OncologyAssessType.filter(v => {
@ -237,3 +221,9 @@ export default {
}
}
</script>
<style scoped>
/deep/ .el-form-item__content{
width: calc(100% - 110px);
}
</style>

View File

@ -8,8 +8,7 @@
:rules="rules"
>
<div class="base-dialog-body">
<!-- 病灶类型 -->
<el-form-item :label="$t('dictionary:template:basicData:lesionType')" prop="LesionType">
<el-form-item label="病灶类型" prop="LesionType">
<el-select v-model="form.LesionType">
<el-option
v-for="item of CriterionDictionaryList.LesionType"
@ -19,8 +18,7 @@
/>
</el-select>
</el-form-item>
<!-- 器官类型 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:organType')" prop="OrganType">
<el-form-item label="器官类型" prop="OrganType">
<el-select v-model="form.OrganType">
<el-option
v-for="item of CriterionDictionaryOrganTypeList.OrganType"

View File

@ -43,30 +43,28 @@
height="100"
>
<el-table-column type="index" width="90" />
<!-- 病灶类型 -->
<el-table-column
prop="LesionType"
:label="$t('dictionary:template:basicData:lesionType')"
label="病灶类型"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ $fd('LesionType',scope.row.LesionType) }}
</template>
</el-table-column>
<!-- 器官类型 -->
<el-table-column
prop="OrganType"
:label="$t('trials:readingUnit:baseDataCfg:title:organType')"
label="器官类型"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ $fd('OrganType',scope.row.OrganType) }}
</template>
</el-table-column>
<!-- 创建时间 -->
<el-table-column
prop="CreateTime"
:label="$t('dictionary:template:basicData:createTime')"
label="创建时间"
show-overflow-tooltip
/>
<el-table-column
@ -78,13 +76,13 @@
<template slot-scope="scope">
<el-button
circle
:title="$t('common:button:edit')"
title="编辑"
icon="el-icon-edit-outline"
@click="handleEdit(scope.row)"
/>
<el-button
circle
:title="$t('common:button:delete')"
title="删除"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
/>
@ -165,18 +163,18 @@ export default {
//
handleAdd() {
this.rowData = { CriterionId: this.criterionId }
this.editDialog.title = this.$t('common:button:new')
this.editDialog.title = '新增'
this.editDialog.visible = true
},
//
handleEdit(row) {
this.rowData = { ...row }
this.editDialog.title = this.$t('common:button:edit')
this.editDialog.title = '编辑'
this.editDialog.visible = true
},
//
handleDelete(row) {
this.$confirm(this.$t('trials:readingUnit:baseDataCfg:message:deleteConfirm'), {
this.$confirm('是否确认删除', {
type: 'warning',
distinguishCancelAndClose: true
})
@ -187,7 +185,7 @@ export default {
this.loading = false
if (res.IsSuccess) {
this.getList()
this.$message.success(this.$t('common:message:deletedSuccessfully'))
this.$message.success('删除成功!')
}
}).catch(() => { this.loading = false })
})

View File

@ -3,13 +3,13 @@
ref="organForm"
v-loading="loading"
:model="form"
label-width="120px"
label-width="100px"
size="small"
:rules="rules"
>
<div class="base-dialog-body">
<!-- 类型 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:organType')" prop="OrganType">
<el-form-item label="器官类型" prop="OrganType">
<el-select
v-model="form.OrganType"
>
@ -21,37 +21,35 @@
/>
</el-select>
</el-form-item>
<!-- 分类 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:classification')" prop="Classification">
<el-form-item label="分类" prop="Classification">
<el-input v-model="form.Classification" />
</el-form-item>
<!-- 分类英文 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:classificationEn')">
<el-form-item label="分类(英文)">
<el-input v-model="form.ClassificationEN" />
</el-form-item>
<!-- 部位 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:bodyPart')" prop="Part">
<el-form-item label="部位" prop="Part">
<el-input v-model="form.Part" />
</el-form-item>
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:bodyPartEn')">
<el-form-item label="部位(英文)">
<el-input v-model="form.PartEN" />
</el-form-item>
<!-- 器官 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:organ')" prop="TULOC">
<!-- TULOC -->
<el-form-item label="器官" prop="TULOC">
<el-input v-model="form.TULOC" />
</el-form-item>
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:TULOCEN')" prop="TULOCEN">
<el-form-item label="器官(英文)" prop="TULOCEN">
<el-input v-model="form.TULOCEN" />
</el-form-item>
<!-- 位置 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:TULAT')">
<!-- TULAT -->
<el-form-item label="位置">
<el-input v-model="form.TULAT" />
</el-form-item>
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:TULATEn')">
<el-form-item label="位置(英文)">
<el-input v-model="form.TULATEN" />
</el-form-item>
<!-- 是否淋巴结 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:isLymphNodes')" prop="IsLymphNodes">
<el-form-item label="是否淋巴结" prop="IsLymphNodes">
<el-radio-group v-model="form.IsLymphNodes">
<el-radio
v-for="item of $d.ReadingYesOrNo"
@ -62,7 +60,7 @@
</el-form-item>
<!-- 是否可以编辑 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:isCanEditPosition')" prop="IsCanEditPosition">
<el-form-item label="是否可以编辑" prop="IsCanEditPosition">
<el-radio-group v-model="form.IsCanEditPosition">
<el-radio
v-for="item of $d.YesOrNo"
@ -71,11 +69,11 @@
>{{ item.label }}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:showOrder')" prop="ShowOrder">
<el-form-item label="序号" prop="ShowOrder">
<el-input v-model="form.ShowOrder" type="number" />
</el-form-item>
<!-- 描述 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:remark')" prop="Remark">
<el-form-item label="描述" prop="Remark">
<el-input
v-model="form.Remark"
type="textarea"

View File

@ -3,22 +3,18 @@
<!-- 搜索框 -->
<template slot="search-container">
<el-form :inline="true" size="mini">
<!-- 器官类型 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:organType')">
<el-form-item label="器官类型">
<el-select v-model="searchData.OrganType" clearable style="width:130px;">
<el-option v-for="item of CriterionDictionaryOrganTypeList && CriterionDictionaryOrganTypeList.OrganType" :key="item.Id" :value="parseInt(item.Code)" :label="item.ValueCN" />
</el-select>
</el-form-item>
<!-- 部位 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:bodyPart')">
<el-form-item label="部位">
<el-input v-model="searchData.Part" clearable style="width:130px;" />
</el-form-item>
<!-- 器官 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:organ')">
<el-form-item label="器官">
<el-input v-model="searchData.TULOC" clearable style="width:130px;" />
</el-form-item>
<!-- 是否淋巴结 -->
<el-form-item :label="$t('trials:readingUnit:baseDataCfg:title:isLymphNodes')">
<el-form-item label="是否淋巴结">
<el-select v-model="searchData.IsLymphNodes" clearable style="width:130px;">
<el-option v-for="item of $d.ReadingYesOrNo" :key="item.id" :value="item.value" :label="item.label" />
</el-select>
@ -58,7 +54,7 @@
size="mini"
@click="lesionType.visible = true"
>
{{ this.$t('dictionary:template:basicData:config') }}
病灶关联配置
</el-button>
<!-- <el-button-->
<!-- v-if="!isCompleteConfig"-->
@ -95,7 +91,7 @@
<!-- 类型 -->
<el-table-column
prop="OrganType"
:label="$t('trials:readingUnit:baseDataCfg:title:organType')"
label="器官类型"
min-width="120"
show-overflow-tooltip
sortable="custom"
@ -107,13 +103,13 @@
</el-table-column>
<el-table-column
prop="Classification"
:label="$t('trials:readingUnit:baseDataCfg:title:classification')"
label="分类"
show-overflow-tooltip
sortable="custom"
/>
<el-table-column
prop="ClassificationEN"
:label="$t('trials:readingUnit:baseDataCfg:title:classificationEn')"
label="分类(英文)"
min-width="140"
show-overflow-tooltip
sortable="custom"
@ -121,49 +117,46 @@
<!-- 部位 -->
<el-table-column
prop="Part"
:label="$t('trials:readingUnit:baseDataCfg:title:bodyPart')"
label="部位"
show-overflow-tooltip
sortable="custom"
/>
<el-table-column
prop="PartEN"
:label="$t('trials:readingUnit:baseDataCfg:title:bodyPartEn')"
label="部位(英文)"
min-width="140"
show-overflow-tooltip
sortable="custom"
/>
<!-- 器官 -->
<el-table-column
prop="TULOC"
:label="$t('trials:readingUnit:baseDataCfg:title:organ')"
label="器官"
show-overflow-tooltip
sortable="custom"
/>
<el-table-column
prop="TULOCEN"
:label="$t('trials:readingUnit:baseDataCfg:title:TULOCEN')"
label="器官(英文)"
min-width="140"
show-overflow-tooltip
sortable="custom"
/>
<!-- 位置 -->
<el-table-column
prop="TULAT"
:label="$t('trials:readingUnit:baseDataCfg:title:TULAT')"
label="位置"
show-overflow-tooltip
sortable="custom"
/>
<el-table-column
prop="TULATEN"
:label="$t('trials:readingUnit:baseDataCfg:title:TULATEn')"
label="位置(英文)"
min-width="140"
show-overflow-tooltip
sortable="custom"
/>
<!-- 是否淋巴结 -->
<el-table-column
prop="IsLymphNodes"
:label="$t('trials:readingUnit:baseDataCfg:title:isLymphNodes')"
label="是否淋巴结"
min-width="160"
show-overflow-tooltip
sortable="custom"
@ -175,10 +168,9 @@
<el-tag v-else type="primary">{{ $fd('ReadingYesOrNo', scope.row.IsLymphNodes) }}</el-tag>
</template>
</el-table-column>
<!-- 是否可以编辑 -->
<el-table-column
prop="IsCanEditPosition"
:label="$t('trials:readingUnit:baseDataCfg:title:isCanEditPosition')"
label="是否可以编辑"
min-width="160"
show-overflow-tooltip
sortable="custom"
@ -190,17 +182,15 @@
<el-tag v-else type="primary">{{ $fd('YesOrNo', scope.row.IsCanEditPosition) }}</el-tag>
</template>
</el-table-column>
<!-- 序号 -->
<el-table-column
prop="ShowOrder"
:label="$t('trials:readingUnit:baseDataCfg:title:showOrder')"
label="序号"
show-overflow-tooltip
min-width="80"
/>
<!-- 备注 -->
<el-table-column
prop="Remark"
:label="$t('trials:readingUnit:baseDataCfg:title:remark')"
label="备注"
show-overflow-tooltip
/>
@ -213,13 +203,13 @@
<template slot-scope="scope">
<el-button
circle
:title="$t('common:button:edit')"
title="编辑"
icon="el-icon-edit-outline"
@click="handleEdit(scope.row)"
/>
<el-button
circle
:title="$t('common:button:delete')"
title="删除"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
/>
@ -237,7 +227,7 @@
:visible.sync="editDialog.visible"
:close-on-click-modal="false"
:title="editDialog.title"
width="600px"
width="500px"
custom-class="base-dialog-wrapper"
append-to-body
>
@ -283,9 +273,9 @@
size="small"
>
<div class="base-dialog-body">
<!-- 标准 -->
<!-- 类型 -->
<el-form-item
:label="$t('trials:auditRecord:table:criterion')"
label="标准"
prop="CriterionId"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: ['blur'] },
@ -355,8 +345,9 @@ export default {
total: 0,
rowData: {},
editDialog: { title: '', visible: false },
lesionType: { title: this.$t('dictionary:template:basicData:title1'), visible: false },//
criterion: { title: this.$t('dictionary:template:basicData:title2'), visible: false },//
lesionType: { title: '病灶器官关联关系', visible: false },
// lesionTypes: [],
criterion: { title: '默认数据配置', visible: false },
formLoading: false,
form: { CriterionId: '' },
criterions: [],
@ -391,7 +382,7 @@ export default {
TrialReadingCriterionId: this.criterionId
}).then(res => {
this.loading = false
this.$message.success(this.$t('dictionary:template:basicData:message1'))
this.$message.success('同步成功')
}).catch(() => {
this.loading = false
})
@ -420,18 +411,18 @@ export default {
//
handleAdd() {
this.rowData = { SystemCriterionId: this.criterionId }
this.editDialog.title = this.$t('common:button:new')
this.editDialog.title = '新增'
this.editDialog.visible = true
},
//
handleEdit(row) {
this.rowData = { ...row }
this.editDialog.title = this.$t('common:button:edit')
this.editDialog.title = '编辑'
this.editDialog.visible = true
},
//
handleDelete(row) {
this.$confirm(this.$t('trials:readingUnit:baseDataCfg:message:deleteConfirm'), {
this.$confirm('是否确认删除', {
type: 'warning',
distinguishCancelAndClose: true
})
@ -442,7 +433,7 @@ export default {
this.loading = false
if (res.IsSuccess) {
this.getList()
this.$message.success(this.$t('common:message:deletedSuccessfully'))
this.$message.success('删除成功!')
}
}).catch(() => { this.loading = false })
})

View File

@ -10,8 +10,7 @@
>
<div class="base-dialog-body" style="height: 550px; display:flex;flex-direction: column;">
<div style="height: 150px;">
<!-- 类型 -->
<el-form-item :label="$t('trials:readingUnit:qsList:title:type')" prop="Type">
<el-form-item label="类型" prop="Type">
<el-select
v-model="form.Type"
@change="((val)=>{qsTypeChange(val, form)})"
@ -25,10 +24,9 @@
/>
</el-select>
</el-form-item>
<!-- 问题名称 -->
<el-form-item
v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')"
label="问题名称"
prop="QuestionName"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
@ -39,10 +37,9 @@
v-model="form.QuestionName"
/>
</el-form-item>
<!-- 问题名称EN -->
<el-form-item
v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')"
label="问题名称EN"
prop="QuestionEnName"
:rules="[
{ max: form.Type === 'summary' ? 300 : 100, message: `${this.$t('common:ruleMessage:maxLength')} ${form.Type === 'summary' ? 300 : 100}` }
@ -54,10 +51,8 @@
</el-form-item>
</div>
<div style="flex: 1;overflow-y:auto;">
<!-- 公有属性 -->
<el-divider content-position="left">{{$t('trials:readingUnit:title:publicProperties')}}</el-divider>
<!-- 是否显示 -->
<el-form-item v-if="form.Type !== 'group'" :label="$t('trials:readingUnit:qsList:title:isShow')" prop="ShowQuestion">
<el-divider content-position="left">公有属性</el-divider>
<el-form-item v-if="form.Type !== 'group'" label="是否显示" prop="ShowQuestion">
<el-radio-group
v-model="form.ShowQuestion"
@change="((val)=>{isShowQuestionChange(val, form)})"
@ -75,7 +70,7 @@
<!-- 显示时依赖父问题 -->
<el-form-item
v-if="form.Type !== 'group' && form.ShowQuestion===1"
:label="$t('trials:readingUnit:qsList:title:parentId')"
label="显示依赖父问题"
prop="ParentId"
>
<el-select
@ -92,7 +87,7 @@
</el-select>
</el-form-item>
<!-- 显示时依赖父问题触发值 -->
<el-form-item v-if="form.ParentId && form.ShowQuestion===1" :label="$t('trials:readingUnit:qsList:title:parentTriggerValueList')" prop="ParentTriggerValueList">
<el-form-item v-if="form.ParentId && form.ShowQuestion===1" label="显示触发值" prop="ParentTriggerValueList">
<el-select v-model="form.ParentTriggerValueList" clearable multiple>
<el-option
v-for="item of parentTriggerValOptions"
@ -102,8 +97,7 @@
/>
</el-select>
</el-form-item>
<!-- 是否必填 -->
<el-form-item v-if="form.Type !== 'group' && form.Type !== 'table' && form.Type !== 'basicTable' && form.Type !== 'summary'" :label="$t('trials:readingUnit:qsList:title:isRequired')" prop="IsRequired">
<el-form-item v-if="form.Type !== 'group' && form.Type !== 'table' && form.Type !== 'basicTable' && form.Type !== 'summary'" label="是否必填" prop="IsRequired">
<el-radio-group
v-model="form.IsRequired"
:disabled="form.IsJudgeQuestion===true || form.ShowQuestion===2"
@ -118,10 +112,10 @@
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 必填依赖父问题 -->
<!-- 父问题 -->
<el-form-item
v-if="form.Type !== 'group' && form.IsRequired === 1"
:label="$t('trials:readingUnit:qsList:title:relevanceId')"
label="必填依赖父问题"
prop="RelevanceId"
>
<el-select
@ -137,10 +131,10 @@
/>
</el-select>
</el-form-item>
<!-- 必填触发值 -->
<!-- 必填依赖的父问题触发值 -->
<el-form-item
v-if="form.RelevanceId && form.IsRequired === 1"
:label="$t('trials:readingUnit:qsList:title:relevanceValueList')"
label="必填触发值"
prop="RelevanceValueList"
>
<el-select v-model="form.RelevanceValueList" clearable multiple>
@ -188,9 +182,8 @@
</el-option>
</el-select>
</el-form-item>
<!-- 限制编辑 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:limitEdit')"
label="限制编辑"
v-if="form.Type !== 'summary'"
prop="LimitEdit"
:rules="[
@ -201,10 +194,9 @@
<el-radio v-for="item of $d.LimitEdit" :key="item.value" :label="item.value">{{ item.label }}</el-radio>
</el-radio-group>
</el-form-item>
<!-- 问题标识 -->
<el-form-item
v-if="form.Type !== 'group' && form.Type !== 'summary'"
:label="$t('dictionary:template:criterionConfig:table:questionMark')"
label="问题标识"
prop="QuestionMark"
>
<el-select
@ -219,16 +211,14 @@
/>
</el-select>
</el-form-item>
<!-- 注释 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:Remark')"
label="注释"
prop="Remark"
>
<el-input v-model="form.Remark" />
</el-form-item>
<!-- 序号 -->
<el-form-item
:label="$t('trials:readingUnit:qsList:title:order')"
label="序号"
prop="ShowOrder"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
@ -240,8 +230,7 @@
:min="0"
/>
</el-form-item>
<!-- 重复出现最大次数 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:maxRowCount')" v-if="form.Type !== 'summary' && form.Type !== 'screenshot' && form.Type !== 'upload'">
<el-form-item label="重复出现最大次数" v-if="form.Type !== 'summary' && form.Type !== 'screenshot' && form.Type !== 'upload'">
<el-input-number
v-model="form.MaxRowCount"
controls-position="right"
@ -249,8 +238,7 @@
:max="10"
/>
</el-form-item>
<!-- 问题分类 -->
<el-form-item :label="$t('dictionary:template:criterionConfig:table:questionClassify')" v-if="criterionType === 2">
<el-form-item label="问题分类" v-if="criterionType === 2">
<el-select v-model="form.QuestionClassify" clearable>
<el-option
v-for="item of $d.QuestionClassify"
@ -260,15 +248,15 @@
/>
</el-select>
</el-form-item>
<!-- 私有属性 -->
<el-divider content-position="left">{{$t('trials:readingUnit:title:privateProperties')}}</el-divider>
<el-divider content-position="left">私有属性</el-divider>
<!-- 选项类型 -->
<el-form-item
v-if="form.Type === 'select' || form.Type === 'radio' || form.Type === 'input'"
:label="$t('trials:readingUnit:label:QuestionGenre')"
label="选项类型"
prop="TableQuestionType"
:rules="[
{ required: form.Type !== 'input', message: this.$t('common:ruleMessage:select')}
{ required: form.Type !== 'input', message: '请选择'}
]"
>
<el-radio-group
@ -285,22 +273,21 @@
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 选项 -->
<el-form-item
v-if="form.TableQuestionType === 0 || form.Type === 'class'"
:label="$t('trials:qcCfg:table:typeValue')"
label="选项"
prop="TypeValue"
>
<el-input
v-model="form.TypeValue"
:placeholder="$t('trials:qcCfg:message:typeValue')"
placeholder="选项请用‘|’分割多个选项"
@change="typeValueChange"
/>
</el-form-item>
<!-- 关联问题 -->
<el-form-item
v-if="form.TableQuestionType === 2"
:label="$t('dictionary:template:criterionConfig:table:dependParentId')"
label="关联问题"
prop="DependParentId"
>
<el-select
@ -314,10 +301,9 @@
/>
</el-select>
</el-form-item>
<!-- 关联字段 -->
<el-form-item
v-if="form.TableQuestionType === 1 || !!form.DependParentId"
:label="$t('dictionary:template:criterionConfig:table:dataTableColumn')"
label="关联字段"
prop="DataTableColumn"
>
<el-select v-model="form.DataTableColumn">
@ -329,10 +315,9 @@
/>
</el-select>
</el-form-item>
<!-- 关联字典 -->
<el-form-item
v-if="form.TableQuestionType === 3 || form.TableQuestionType === 2"
:label="$t('dictionary:template:criterionConfig:table:relatedDictionaryCode')"
label="关联字典"
prop="DictionaryCode"
:rules="[{ required: form.TableQuestionType === 3, message: '请选择', trigger: 'blur' }]"
>
@ -345,8 +330,7 @@
/>
</el-select>
</el-form-item>
<!-- 默认值 -->
<el-form-item v-if="form.TableQuestionType === 3" :label="$t('trials:readingUnit:qsList:title:defaultValue')">
<el-form-item v-if="form.TableQuestionType === 3" label="默认值">
<el-select v-model="form.DefaultValue" clearable>
<!-- <el-option
v-for="item of form.DictionaryCode ? $d[form.DictionaryCode] : []"
@ -362,8 +346,7 @@
/>
</el-select>
</el-form-item>
<!-- 默认值 -->
<el-form-item v-if="form.TableQuestionType === 0" :label="$t('trials:readingUnit:qsList:title:defaultValue')">
<el-form-item v-if="form.TableQuestionType === 0" label="默认值">
<el-select v-model="form.DefaultValue" clearable>
<el-option
v-for="item of form.TypeValue ? form.TypeValue.split('|') : []"
@ -373,8 +356,7 @@
/>
</el-select>
</el-form-item>
<!-- 高亮标记值 -->
<el-form-item v-if="form.Type === 'select' || form.Type === 'radio'" :label="$t('trials:readingUnit:qsList:title:highlightAnswers')" prop="HighlightAnswerList">
<el-form-item v-if="form.Type === 'select' || form.Type === 'radio'" label="高亮标记值" prop="HighlightAnswerList">
<el-select v-model="form.HighlightAnswerList" clearable multiple>
<template v-if="form.TypeValue">
<el-option
@ -400,10 +382,9 @@
</template>
</el-select>
</el-form-item>
<!-- 最大长度 -->
<el-form-item
v-if="form.Type === 'input' || form.Type === 'textarea'"
:label="$t('trials:readingUnit:qsList:title:MaxAnswerLength')"
label="最大长度"
prop="MaxAnswerLength"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' }
@ -427,10 +408,10 @@
<!-- 数值类型 -->
<el-form-item
v-if="form.Type === 'number' || form.Type === 'calculation'"
:label="$t('trials:readingUnit:qsList:title:valueType')"
label="数值类型"
prop="ValueType"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select') }
{ required: true, message: '请选择'}
]"
>
<el-radio-group
@ -446,10 +427,10 @@
</el-radio-group>
</el-form-item>
<!-- 单位 -->
<!-- 数值单位 -->
<el-form-item
v-if="form.Type === 'number' || form.Type === 'calculation'"
:label="$t('trials:readingUnit:qsList:title:unit')"
label="单位"
prop="Unit"
:rules="[
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
@ -467,10 +448,9 @@
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 最大上传个数 -->
<el-form-item
v-if="form.Type === 'upload'"
:label="$t('trials:readingUnit:qsList:title:imageCount')"
label="最大上传个数"
prop="ImageCount"
>
<el-input-number
@ -483,7 +463,7 @@
<!-- 文件类型 -->
<el-form-item
v-if="form.Type === 'upload'"
:label="$t('trials:readingUnit:qsList:title:FileType')"
label="文件类型"
prop="FileType"
:rules="[{ type: 'array', required: true, message: this.$t('common:ruleMessage:specify'), trigger: [ 'change'] }]"
>
@ -507,10 +487,9 @@
</el-checkbox-group>
</el-form-item>
<!-- 分类 -->
<!-- 分类数据来源 -->
<el-form-item
v-if="form.Type === 'class'"
:label="$t('dictionary:template:criterionConfig:table:classifyQuestion')"
label="分类数据来源"
prop="ClassifyTableQuestionId"
>
<el-select v-model="form.ClassifyTableQuestionId" clearable>
@ -518,10 +497,9 @@
:value="item.Id"/>
</el-select>
</el-form-item>
<!-- 分类算法 -->
<el-form-item
v-if="form.Type === 'class'"
:label="$t('dictionary:template:criterionConfig:table:classifyAlgorithms')"
label="分类算法"
prop="ClassifyAlgorithms"
>
<div>
@ -620,7 +598,7 @@ export default {
} else {
var arr = value.split('|')
if (new Set(arr).size !== arr.length) {
callback(new Error(this.$t('trials:readingUnit:qsList:message:msg0')))
callback(new Error('选项不允许存在相同值'))
} else {
callback()
}
@ -671,26 +649,26 @@ export default {
},
rules: {
Type: [
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
{ required: true, message: '请选择', trigger: 'blur' }
],
// QuestionName: [{ required: true, message: '', trigger: 'blur' },
// { max: 300, message: ' 300' }],
TypeValue: [{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
TypeValue: [{ required: true, message: '请注明', trigger: 'blur' },
{ validator: validateTypeVal, trigger: 'blur' },
{ max: 200, message: `${this.$t('common:ruleMessage:maxLength')} 200` }],
ShowQuestion: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
IsRequired: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
ParentId: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
{ max: 200, message: '最大长度为 200' }],
ShowQuestion: [{ required: true, message: '请选择', trigger: 'blur' }],
IsRequired: [{ required: true, message: '请选择', trigger: 'blur' }],
ParentId: [{ required: true, message: '请选择', trigger: 'blur' }],
ParentTriggerValueList: [
{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }
{ required: true, message: '请选择', trigger: 'blur' }
],
RelevanceId: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
RelevanceValueList: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
DataTableName: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
DataTableColumn: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
RelevanceId: [{ required: true, message: '请选择', trigger: 'blur' }],
RelevanceValueList: [{ required: true, message: '请选择', trigger: 'blur' }],
DataTableName: [{ required: true, message: '请选择', trigger: 'blur' }],
DataTableColumn: [{ required: true, message: '请选择', trigger: 'blur' }],
// DictionaryCode: [{ required: true, message: '', trigger: 'blur' }],
DependParentId: [{ required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' }],
DependParentId: [{ required: true, message: '请选择', trigger: 'blur' }],
// ExportIdentification: [
// { required: true, message: this.$t('common:ruleMessage:select'), trigger: 'blur' },
// ],

View File

@ -10,7 +10,7 @@
type="primary"
@click="handleAdd"
>
{{$t('common:button:new')}}
新增
</el-button>
</div>
@ -20,28 +20,24 @@
size="small"
height="500"
>
<!-- 序号 -->
<el-table-column
prop="ShowOrder"
:label="$t('trials:qcCfg:table:order')"
label="序号"
min-width="70"
/>
<!-- 问题名称 -->
<el-table-column
prop="QuestionName"
:label="$t('trials:readingUnit:qsList:title:qsName')"
label="问题名称"
show-overflow-tooltip
/>
<!-- 问题名称(EN) -->
<el-table-column
prop="QuestionEnName"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')"
label="问题名称(EN)"
show-overflow-tooltip
/>
<!-- 类型 -->
<el-table-column
prop="Type"
:label="$t('trials:readingUnit:qsList:title:type')"
label="类型"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -65,10 +61,9 @@
min-width="110"
/>
-->
<!-- 是否显示 -->
<el-table-column
prop="ShowQuestion"
:label="$t('trials:readingUnit:qsList:title:isShow')"
label="是否显示"
min-width="90"
show-overflow-tooltip
>
@ -76,10 +71,9 @@
{{ $fd('ShowQuestion',scope.row.ShowQuestion) }}
</template>
</el-table-column>
<!-- 是否必填 -->
<el-table-column
prop="IsRequired"
:label="$t('trials:readingUnit:qsList:title:isRequired')"
label="是否必填"
min-width="90"
show-overflow-tooltip
>
@ -131,7 +125,7 @@
<!-- 问题标识 -->
<el-table-column
prop="QuestionMark"
:label="$t('dictionary:template:criterionConfig:table:questionMark')"
label="问题标识"
width="140"
show-overflow-tooltip
>
@ -184,10 +178,9 @@
</template>
</el-table-column>
-->
<!-- 最大行数 -->
<el-table-column
prop="MaxRowCount"
:label="$t('trials:readingUnit:qsList:title:MaxRowCount')"
label="最大行数"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -197,7 +190,7 @@
<el-table-column
prop=""
:label="$t('common:action:action')"
label="操作"
width="150"
show-overflow-tooltip
>
@ -208,7 +201,7 @@
size="mini"
@click="handleLook(scope.row)"
>
{{ $t('trials:readingPeriod:button:view') }}
查看
</el-button>
<el-button
v-if="!isCompleteConfig"
@ -216,7 +209,7 @@
size="mini"
@click="handleEdit(scope.row)"
>
{{ $t('common:button:edit') }}
编辑
</el-button>
<el-button
v-if="!isCompleteConfig"
@ -224,7 +217,7 @@
size="mini"
@click="handleDelete(scope.row)"
>
{{ $t('common:button:delete') }}
删除
</el-button>
</template>
</el-table-column>
@ -302,7 +295,7 @@ export default {
handleLook(row) {
this.type = 'look'
this.rowData = { ...row }
this.addOrEdit.title = this.$t('common:button:edit')
this.addOrEdit.title = '编辑'
this.addOrEdit.visible = true
},
getList() {
@ -315,13 +308,13 @@ export default {
handleAdd() {
this.type = 'add'
this.rowData = {}
this.addOrEdit.title = this.$t('common:button:new')
this.addOrEdit.title = '添加'
this.addOrEdit.visible = true
},
handleEdit(row) {
this.type = 'edit'
this.rowData = { ...row }
this.addOrEdit.title = this.$t('common:button:edit')
this.addOrEdit.title = '编辑'
this.addOrEdit.visible = true
},
handleDelete(row) {
@ -336,7 +329,7 @@ export default {
this.loading = false
if (res.IsSuccess) {
this.getList()
this.$message.success(this.$t('common:message:deletedSuccessfully'))
this.$message.success('删除成功!')
}
}).catch(() => { this.loading = false })
})