Browse Source

描述不必填,只有文本

zhouna 4 years ago
parent
commit
fb6ea3c531

+ 1 - 1
src/components/knowledgeExtra/AddDiagBase.vue

@@ -74,7 +74,7 @@
                 id:null,
                 rules:{
                     conceptId:[{ required: true, message: '请输入疾病名称',trigger: ['blur'] }],
-                    description:[{ required: true, message: '请输入诊断依据描述',trigger: ['blur'] },{
+                    description:[{
                         validator: (rule,value,callback)=>{
                             if(value.length>100){
                                 callback(new Error('诊断依据描述不能超过100字'));

+ 1 - 1
src/components/knowledgeExtra/DiagBase.vue

@@ -156,7 +156,7 @@
                 api.zskgetDict().then((res) => {
                     if (res.data.code == '0') {
                         const data = res.data.data;
-                        localStorage.setItem("zskDiagDicts",data['24'][0].val);
+                        localStorage.setItem("zskDiagDicts",`{"onlyNum":"${data['24'][0].val}","onlyTxt":"${data['25'][0].val}"}`);
                     }
                 }).catch((error) => {
                     console.log(error);

+ 10 - 3
src/components/knowledgeExtra/DiagBaseItem.vue

@@ -46,7 +46,7 @@
                     </el-option>
                 </el-select>
             </el-form-item>
-            <el-form-item v-if="groupData.basType===2&&!onlyNum" label="选择类型:" :prop="ruleLine+ind+'.dataType'">
+            <el-form-item v-if="groupData.basType===2&&!onlyNum&&!onlyTxt" label="选择类型:" :prop="ruleLine+ind+'.dataType'">
                 <el-select v-model="groupData.dataType"
                            placeholder="请选择"
                            size="small" @change="dataTypeChange">
@@ -114,7 +114,7 @@
                     </el-col>
                 </div>
             </el-form-item>
-            <el-form-item v-if="!onlyNum&&!showRegx&&groupData.basType===2&&groupData.dataType==='2'" label="医学内容:" :prop="ruleLine+ind+'.eqValue'" class="discDesc is-required">
+            <el-form-item v-if="(!onlyNum&&!showRegx&&groupData.basType===2&&groupData.dataType==='2')||onlyTxt" label="医学内容:" :prop="ruleLine+ind+'.eqValue'" class="discDesc is-required">
                 <el-input type="textarea" rows="3" placeholder="请输入医学内容" v-model.trim="groupData.eqValue"></el-input>
             </el-form-item>
             <el-form-item v-if="showRegx" label="正则表达式:" :prop="ruleLine+ind+'.eqValue'" class="discDesc is-required">
@@ -135,6 +135,7 @@
         props:['groupData','ind','isLast','baseTypes','parInx','inx','len'],
         data(){
             return {
+                dicts:{},
                 baseTermTypeList:[],
                 typeList:[],
                 numTypes:'',    //只有数值类型的类型id
@@ -159,6 +160,7 @@
             },
         },
         created(){
+            this.dicts=JSON.parse(localStorage.getItem("zskDiagDicts"));
             if(this.groupData.maxOperator||this.groupData.minOperator){
                 this.groupData.dataType='1';
             }else if(this.groupData.eqValue){
@@ -176,7 +178,12 @@
                 return (this.baseTypes.find((it)=>it.type===this.groupData.basType)||{}).name;
             },
             onlyNum:function(){
-                const codes=localStorage.getItem("zskDiagDicts")+',';
+                const codes=this.dicts['onlyNum']+',';
+                const type=this.groupData.basLibType;
+                return type&&codes.indexOf(this.groupData.basLibType+',')>-1;
+            },
+            onlyTxt:function(){
+                const codes=this.dicts['onlyTxt']+',';
                 const type=this.groupData.basLibType;
                 return type&&codes.indexOf(this.groupData.basLibType+',')>-1;
             },