zhouna 4 年之前
父节点
当前提交
7ec48990ec

+ 6 - 3
src/components/knowledgeExtra/AddNewRule.vue

@@ -105,7 +105,8 @@
                     subMaxValue:'',
                     subMinOperator:'',
                     subMinUnit:'',
-                    subMinValue:''
+                    subMinValue:'',
+                    subEqValue:'',
                 }]],
                 form:{
                     parDescription:'',
@@ -248,7 +249,8 @@
                   subMaxValue:'',
                   subMinOperator:'',
                   subMinUnit:'',
-                  subMinValue:''
+                  subMinValue:'',
+                  subEqValue:'',
               }]];
               this.form.parConceptId='';//医学标准术语清空
               this.conceptList=[];  //下拉列表清空
@@ -264,7 +266,8 @@
                     subMaxValue:'',
                     subMinOperator:'',
                     subMinUnit:'',
-                    subMinValue:''
+                    subMinValue:'',
+                    subEqValue:'',
                 }]);
             },
             delGroup(i){

+ 31 - 18
src/components/knowledgeExtra/SubConditions.vue

@@ -3,11 +3,11 @@
         <el-form ref="groupData" label-width="150px" class="sub-condition-form" :model="groupData" :rules="rules">
             <span class="del-btn"  @click="delRule">删除</span><!--:class="isLast?'disable del-btn':'del-btn'"-->
             <el-form-item label="基础规则名称:" prop="subDescription">
-                <el-input v-model.trim = "groupData.subDescription" :disabled="disabled&&firstPlace"></el-input>
+                <el-input v-model.trim = "groupData.subDescription" :disabled="disabled"></el-input>
             </el-form-item>
             <el-form-item label="基础规则类型:" prop="subType">
                 <el-select v-model="groupData.subType"
-                           :disabled="disabled&&firstPlace"
+                           :disabled="disabled"
                            placeholder="请选择"
                            size="small"
                            @change="subTypeChange">
@@ -21,9 +21,9 @@
             </el-form-item>
             <el-form-item label="基础规则术语类型:" prop="subLenCode">
                 <el-select v-model="groupData.subLenCode"
-                           :disabled="disabled&&firstPlace"
+                           :disabled="disabled"
                            placeholder="请选择"
-                           size="small">
+                           size="small" @change="subCodeChange">
                     <el-option
                             v-for="item in baseTermTypeList"
                             :key="item.id"
@@ -33,7 +33,7 @@
                 </el-select>
             </el-form-item>
             <el-form-item  class="addDepartFormItem" label="医学标准术语:" prop="subConceptId">
-                <el-select clearable remote filterable :disabled="disabled&&firstPlace" :remote-method="searchConcept" v-model="groupData.subConceptId">
+                <el-select clearable remote filterable :disabled="disabled" :remote-method="searchConcept" v-model="groupData.subConceptId">
                     <el-option
                             v-for="item in conceptList"
                             :key="item.conceptId"
@@ -112,10 +112,10 @@
                 </div>
             </el-form-item>
             <el-form-item v-if="dataType==='2'" label="医学内容:" prop="subEqValue" class="discDesc">
-                <el-input type="textarea" :rows="3" placeholder="请输入医学内容" v-model="groupData.subEqValue" maxlength="121"></el-input>
+                <el-input type="textarea" rows="3" placeholder="请输入医学内容" v-model="groupData.subEqValue" maxlength="121"></el-input>
             </el-form-item>
-            <el-form-item v-if="groupData.subType===6" label="正则表达式:" prop="regx" class="discDesc">
-                <el-input type="textarea" :rows="3" placeholder="请输入正则表达式" v-model="groupData.subEqValue" maxlength="121"></el-input>
+            <el-form-item v-if="groupData.subType===6" label="正则表达式:" prop="subEqValue" class="discDesc">
+                <el-input type="textarea" rows="3" placeholder="请输入正则表达式" v-model="groupData.subEqValue" maxlength="121"></el-input>
             </el-form-item>
         </el-form>
         <div class="inner-oper">
@@ -204,19 +204,16 @@
             }
         },
         methods:{
-            dataTypeChange(val){console.log(val)
+            dataTypeChange(val){
                 this.groupData.dataType=val;
-                this.groupData.subMaxOperator='';
-                this.groupData.subMaxValue='';
-                this.groupData.subMaxUnit='';
-                this.groupData.subMinOperator='';
-                this.groupData.subMinValue='';
-                this.groupData.subMinUnit='';
-                this.groupData.subEqValue='';
+                this.clearNumText();
             },
-            subTypeChange(val){
+            subTypeChange(val){         //基础规则类型修改
                 this.dataType='';
-                this.groupData.subLibName='';
+                this.groupData.subConceptId='';
+                this.groupData.dataType='';
+                this.groupData.subLenCode='';
+                this.clearNumText();
                 if(!val){
                     this.baseTermTypeList =[];
                     return;
@@ -224,6 +221,22 @@
                 const obj = this.baseTypes.find((it)=>it.type===val);
                 this.baseTermTypeList = obj.subMenuList;
             },
+            subCodeChange(){        //基础规则术语类型修改
+                this.dataType='';
+                this.groupData.subConceptId='';
+                this.groupData.dataType='';
+                this.groupData.subLenCode='';
+                this.clearNumText();
+            },
+            clearNumText(){
+                this.groupData.subMaxOperator='';
+                this.groupData.subMaxValue='';
+                this.groupData.subMaxUnit='';
+                this.groupData.subMinOperator='';
+                this.groupData.subMinValue='';
+                this.groupData.subMinUnit='';
+                this.groupData.subEqValue='';
+            },
             searchConcept(val){
                 const param = {
                     excludedConceptIds:[this.groupData.subType],

+ 10 - 1
src/components/knowledgeExtra/SubRulesGroup.vue

@@ -7,7 +7,7 @@
                        :ind="i"
                        :baseTypes="baseTypes"
                        :firstPlace="firstPlace"
-                       :disabled="i===0&&inx===0"
+                       :disabled="i===0&&disable"
                        @changeVal="handleInput"
                        @addRule="addRule"
                        @delRule="delRule"></SubConditions>
@@ -26,6 +26,11 @@
             return {
             }
         },
+        computed:{
+          'disable':function(){
+              return Object.keys(this.firstPlace||{}).length>0&&this.inx===0;
+          }
+        },
         methods:{
             handleInput(val,i){
                 this.data[i]=val;
@@ -49,6 +54,10 @@
                 this.data.push(temp);
             },
             delRule(i){
+                if(i===0&&this.data.length===1){
+                    this.$emit("delGroup",this.inx);
+                    return;
+                }
                 this.data.splice(i,1);
             },
             addGroup(){