瀏覽代碼

Merge branch 'uiUpdate0507' of http://192.168.2.236:10080/zhouna/platformFront into uiUpdate0507

reaper 4 年之前
父節點
當前提交
90f75b8141
共有 2 個文件被更改,包括 310 次插入300 次删除
  1. 310 300
      src/components/knowledgeExtra/AddDiagBase.vue
  2. 二進制
      src/images/icon-copy.png

+ 310 - 300
src/components/knowledgeExtra/AddDiagBase.vue

@@ -55,7 +55,6 @@
             :data="form.klDiagnoseTypeVO"
             :row-class-name="tableRowClassName"
             border
-            style="width: 100%"
             :header-cell-style="{background:'#E3EAF4'}"
           >
             <el-table-column label="依据" width="100">
@@ -80,20 +79,19 @@
                     height="18"
                     width="18"
                     class="icon"
-                    :disabled="form.klDiagnoseTypeVO.length===1"
-                    @click="delDiag(scope.$index)"
+                    @click="form.klDiagnoseTypeVO.length===1?'':delDiag(scope.$index)"
                   />
                 </el-form-item>
               </template>
             </el-table-column>
-            <el-table-column label="诊断依据类型" width="130">
+            <el-table-column label="诊断依据类型" width="100">
               <template slot="header" slot-scope="scope">
                 <span class="star">*</span>
                 <span>诊断依据类型</span>
               </template>
               <template slot-scope="scope">
                 <el-form-item
-                  class="is-request"
+                  class="form-s"
                   :prop="'klDiagnoseTypeVO.'+scope.$index+'.conditionType'"
                   :rules="[{ required: true, message: '请选择诊断依据类型',trigger: ['change'] }]"
                 >
@@ -118,301 +116,287 @@
                 <span>{{v.title}}</span>
               </template>
               <template slot-scope="scope">
-                <div v-for="(item,index) in scope.row.groupVO" :key="index">
-                  <div v-if="v.title=='组'">
-                    <el-form-item>
+                <div v-for="(item,index) in scope.row.groupVO" :key="index" class="big-box">
+                  <el-form-item v-if="v.title=='组'">
+                    <img
+                      src="../../images/icon-add.png"
+                      height="18"
+                      width="18"
+                      class="icon"
+                      @click="addGroup(scope.$index)"
+                    />
+                    <img
+                      src="../../images/icon-delete.png"
+                      height="18"
+                      width="18"
+                      class="icon"
+                      @click="delGroup(scope.$index)"
+                    />
+                  </el-form-item>
+                  <el-form-item
+                    v-if="v.title == '符合条件的数量'"
+                    :prop="'klDiagnoseTypeVO.'+scope.$index+'.groupVO.'+index+'.fitNo'"
+                    :rules="[{required:true,message:'请选择符合条件的数量',trigger:'change'}]"
+                  >
+                    <el-select v-model="item.fitNo">
+                      <el-option
+                        v-for="item in numArr[scope.$index].num[index]"
+                        :key="item.id"
+                        :label="item.name"
+                        :value="item.id"
+                      ></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <div v-for="(items,i) in item.klDiagnoseDetail" :key="i">
+                    <el-form-item v-if="v.title == '基础依据'">
                       <img
                         src="../../images/icon-add.png"
                         height="18"
                         width="18"
                         class="icon"
-                        @click="addGroup(scope.$index)"
+                        @click="addRule(scope.row,scope.$index,index)"
                       />
                       <img
                         src="../../images/icon-delete.png"
                         height="18"
                         width="18"
                         class="icon"
-                        @click="delGroup(scope.$index)"
+                        @click="delRule(scope.row,scope.$index,index,i)"
                       />
                     </el-form-item>
-                  </div>
-                  <div v-if="v.title == '符合条件的数量'">
                     <el-form-item
-                      :prop="'klDiagnoseTypeVO.'+scope.$index+'.groupVO.'+index+'.fitNo'"
-                      :rules="[{required:true,message:'请选择符合条件的数量',trigger:'change'}]"
+                      v-if="v.title == '基础依据名称'"
+                      :prop="'klDiagnoseTypeVO.' +
+                      scope.$index +
+                      '.groupVO.' +
+                      index +
+                      '.klDiagnoseDetail.'+i+'.basDescription'"
+                      :rules="[{required:true,message:'请输入基础依据名称',trigger:'blur'}]"
                     >
-                      <el-select v-model="item.fitNo">
+                      <el-input
+                        class="inp-name"
+                        placeholder="请输入基础依据名称"
+                        maxlength="100"
+                        v-model.trim="items.basDescription"
+                      ></el-input>
+                    </el-form-item>
+                    <el-form-item
+                      v-if="v.title == '基础依据类型'"
+                      :prop="'klDiagnoseTypeVO.' +
+                      scope.$index +
+                      '.groupVO.' +
+                      index +
+                      '.klDiagnoseDetail.'+i+'.basType'"
+                      :rules="[{required:true,message:'请选择基础依据类型',trigger:'change'}]"
+                    >
+                      <el-select
+                        v-model="items.basType"
+                        @change="(val)=>baseTermTypeChange(val,scope.$index,index,i)"
+                      >
                         <el-option
-                          v-for="item in numArr[scope.$index].num[index]"
+                          v-for="item in baseTermTypeList"
                           :key="item.id"
                           :label="item.name"
-                          :value="item.id"
+                          :value="item.type"
                         ></el-option>
                       </el-select>
                     </el-form-item>
-                  </div>
-                  <div v-for="(items,i) in item.klDiagnoseDetail" :key="i">
-                    <el-form-item>
-                      <div v-if="v.title == '基础依据'">
-                        <el-form-item>
-                          <img
-                            src="../../images/icon-add.png"
-                            height="18"
-                            width="18"
-                            class="icon"
-                            @click="addRule(scope.row,scope.$index,index)"
-                          />
-                          <img
-                            src="../../images/icon-delete.png"
-                            height="18"
-                            width="18"
-                            class="icon"
-                            @click="delRule(scope.row,scope.$index,index,i)"
-                          />
-                        </el-form-item>
-                      </div>
-                      <div class="box-2" v-if="v.title == '基础依据名称'">
-                        <el-form-item
-                          :prop="'klDiagnoseTypeVO.' +
-                        scope.$index +
-                        '.groupVO.' +
-                        index +
-                        '.klDiagnoseDetail.'+i+'.basDescription'"
-                          :rules="[{required:true,message:'请输入基础依据名称',trigger:'blur'}]"
-                        >
-                          <el-input
-                            class="inp-name"
-                            placeholder="请输入基础依据名称"
-                            maxlength="100"
-                            v-model.trim="items.basDescription"
-                          ></el-input>
-                        </el-form-item>
-                      </div>
-                      <div class="box-2" v-if="v.title == '基础依据类型'">
-                        <el-form-item
-                          :prop="'klDiagnoseTypeVO.' +
-                        scope.$index +
-                        '.groupVO.' +
-                        index +
-                        '.klDiagnoseDetail.'+i+'.basType'"
-                          :rules="[{required:true,message:'请选择基础依据类型',trigger:'change'}]"
-                        >
-                          <el-select
-                            v-model="items.basType"
-                            @change="(val)=>baseTermTypeChange(val,scope.$index,index,i)"
-                          >
-                            <el-option
-                              v-for="item in baseTermTypeList"
-                              :key="item.id"
-                              :label="item.name"
-                              :value="item.type"
-                            ></el-option>
-                          </el-select>
-                        </el-form-item>
-                      </div>
-                      <div class="box-2" v-if="v.title == '基础依据术语类型'">
-                        <el-form-item
-                          :prop="'klDiagnoseTypeVO.' +
-                        scope.$index +
-                        '.groupVO.' +
-                        index +
-                        '.klDiagnoseDetail.'+i+'.basLibType'"
-                          :rules="[{required:true,message:'请选择基础依据术语类型',trigger:'change'}]"
-                          v-if="!items.basNameType"
-                        >
-                          <el-select
-                            v-model="items.basLibType"
-                            @change="(val)=>basLibTypeChange(val,scope.$index,index,i)"
-                          >
-                            <el-option
-                              v-for="item in items.basLibTypeList"
-                              :key="item.id"
-                              :label="item.name"
-                              :value="Number(item.code)"
-                            ></el-option>
-                          </el-select>
-                        </el-form-item>
-                        <el-form-item v-if="items.basNameType">
-                          <el-input disabled v-model="items.basTypeName"></el-input>
-                        </el-form-item>
-                      </div>
-                      <div
-                        v-if="v.title == '医学标准术语'"
-                        class="box-2"
-                        :class="(items.basType===3 || items.basType===4)? 'tmall' : 'taobao'"
+                    <el-form-item
+                      v-if="v.title == '基础依据术语类型' && !items.basNameType"
+                      :prop="'klDiagnoseTypeVO.' +
+                      scope.$index +
+                      '.groupVO.' +
+                      index +
+                      '.klDiagnoseDetail.'+i+'.basLibType'"
+                      :rules="[{required:true,message:'请选择基础依据术语类型',trigger:'change'}]"
+                    >
+                      <el-select
+                        v-model="items.basLibType"
+                        @change="(val)=>basLibTypeChange(val,scope.$index,index,i)"
                       >
-                        <el-form-item
-                          :prop="'klDiagnoseTypeVO.' +
+                        <el-option
+                          v-for="item in items.basLibTypeList"
+                          :key="item.id"
+                          :label="item.name"
+                          :value="Number(item.code)"
+                        ></el-option>
+                      </el-select>
+                    </el-form-item>
+                    <el-form-item v-if="items.basNameType && v.title == '基础依据术语类型'">
+                      <el-input disabled v-model="items.basTypeName"></el-input>
+                    </el-form-item>
+                    <el-form-item
+                      v-if="v.title == '医学标准术语'"
+                      class="box-2"
+                      :class="(items.basType===3 || items.basType===4)? 'tmall' : 'taobao'"
+                      :prop="'klDiagnoseTypeVO.' +
                         scope.$index +
                         '.groupVO.' +
                         index +
                         '.klDiagnoseDetail.'+i+'.basConceptId'"
-                          :rules="[{required:true,message:'请输入医学标准术语',trigger:'change'}]"
-                        >
-                          <el-select
-                            clearable
-                            remote
-                            filterable
-                            :remote-method="(val)=>searchConcept(val,scope.$index,index,i)"
-                            v-model.trim="items.basConceptId"
-                            @change="(val)=>conceptChange(val,scope.$index,index,i)"
-                          >
-                            <el-option
-                              v-for="item in items.conceptList"
-                              :key="item.conceptId"
-                              :label="item.conceptName"
-                              :value="item.conceptId"
-                            ></el-option>
-                          </el-select>
-                        </el-form-item>
-                      </div>
-                      <div class="last-box" v-if="v.title == '规则具体内容'">
-                        <el-form-item
-                          :prop="'klDiagnoseTypeVO.' +
+                      :rules="[{required:true,message:'请输入医学标准术语',trigger:'change'}]"
+                    >
+                      <el-select
+                        clearable
+                        remote
+                        filterable
+                        :remote-method="(val)=>searchConcept(val,scope.$index,index,i)"
+                        v-model.trim="items.basConceptId"
+                        @change="(val)=>conceptChange(val,scope.$index,index,i)"
+                      >
+                        <el-option
+                          v-for="item in items.conceptList"
+                          :key="item.conceptId"
+                          :label="item.conceptName"
+                          :value="item.conceptId"
+                        ></el-option>
+                      </el-select>
+                    </el-form-item>
+                    <el-form-item class="last-box" v-if="v.title == '依据具体内容'">
+                      <el-form-item
+                        :prop="'klDiagnoseTypeVO.' +
                         scope.$index +
                         '.groupVO.' +
                         index +
                         '.klDiagnoseDetail.'+i+'.dataType'"
-                          :rules="[{required:true,message:'请选择类型',trigger:'change'}]"
-                          v-if="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType"
-                        >
-                          <el-select
-                            class="box-1"
-                            :class="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType? 'taobao' : 'tmall'"
-                            v-model="items.dataType"
-                            @change="(val)=>dataTypeChange(val,scope.$index,index,i)"
-                            placeholder="请选择"
-                            size="small"
-                          >
-                            <el-option
-                              v-for="item in dataTypes"
-                              :key="item.id"
-                              :label="item.name"
-                              :value="item.id"
-                            ></el-option>
-                          </el-select>
-                        </el-form-item>
-                        <el-form-item
-                          class="min-margin"
-                          :key="6"
-                          v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
-                          label="最大值:"
+                        :rules="[{required:true,message:'请选择类型',trigger:'change'}]"
+                        v-if="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType"
+                      >
+                        <el-select
+                          class="box-1"
+                          :class="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType? 'taobao' : 'tmall'"
+                          v-model="items.dataType"
+                          @change="(val)=>dataTypeChange(val,scope.$index,index,i)"
+                          placeholder="请选择"
+                          size="small"
                         >
-                          <div class="last-box-1">
-                            <el-form-item
-                              :prop="'klDiagnoseTypeVO.' +
+                          <el-option
+                            v-for="item in dataTypes"
+                            :key="item.id"
+                            :label="item.name"
+                            :value="item.id"
+                          ></el-option>
+                        </el-select>
+                      </el-form-item>
+                      <el-form-item
+                        class="min-margin"
+                        :key="6"
+                        v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
+                        label="最大值:"
+                      >
+                        <div class="last-box-1">
+                          <el-form-item
+                            :prop="'klDiagnoseTypeVO.' +
                             scope.$index +
                             '.groupVO.' +
                             index +
                             '.klDiagnoseDetail.'+i+'.maxOperator'"
-                              :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
+                            :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
+                          >
+                            <el-select
+                              v-model="items.maxOperator"
+                              placeholder="请选择"
+                              size="small"
+                              clearable
                             >
-                              <el-select
-                                v-model="items.maxOperator"
-                                placeholder="请选择"
-                                size="small"
-                                clearable
-                              >
-                                <el-option
-                                  v-for="item in operMaxList"
-                                  :key="item.key"
-                                  :label="item.name"
-                                  :value="item.key"
-                                ></el-option>
-                              </el-select>
-                            </el-form-item>
+                              <el-option
+                                v-for="item in operMaxList"
+                                :key="item.key"
+                                :label="item.name"
+                                :value="item.key"
+                              ></el-option>
+                            </el-select>
+                          </el-form-item>
 
-                            <el-form-item
-                              :prop="'klDiagnoseTypeVO.' +
+                          <el-form-item
+                            :prop="'klDiagnoseTypeVO.' +
                             scope.$index +
                             '.groupVO.' +
                             index +
                             '.klDiagnoseDetail.'+i+'.maxVal'"
-                              :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
-                            >
-                              <el-input v-model="items.maxVal" placeholder="填写数值"></el-input>
-                            </el-form-item>
+                            :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
+                          >
+                            <el-input v-model="items.maxVal" placeholder="填写数值"></el-input>
+                          </el-form-item>
 
-                            <el-form-item prop="minUnit">
-                              <el-input v-model.trim="items.maxUnit" placeholder="填写单位"></el-input>
-                            </el-form-item>
-                          </div>
-                        </el-form-item>
-                        <el-form-item
-                          class="min-margin"
-                          v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
-                          label="最小值:"
-                        >
-                          <div class="last-box-1 last-box-s">
-                            <el-form-item
-                              :prop="'klDiagnoseTypeVO.' +
+                          <el-form-item prop="minUnit">
+                            <el-input v-model.trim="items.maxUnit" placeholder="填写单位"></el-input>
+                          </el-form-item>
+                        </div>
+                      </el-form-item>
+                      <el-form-item
+                        class="min-margin"
+                        v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
+                        label="最小值:"
+                      >
+                        <div class="last-box-1 last-box-s">
+                          <el-form-item
+                            :prop="'klDiagnoseTypeVO.' +
                             scope.$index +
                             '.groupVO.' +
                             index +
                             '.klDiagnoseDetail.'+i+'.minOperator'"
-                              :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
+                            :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
+                          >
+                            <el-select
+                              v-model="items.minOperator"
+                              placeholder="请选择"
+                              size="small"
+                              clearable
                             >
-                              <el-select
-                                v-model="items.minOperator"
-                                placeholder="请选择"
-                                size="small"
-                                clearable
-                              >
-                                <el-option
-                                  v-for="item in operMinList"
-                                  :key="item.key"
-                                  :label="item.name"
-                                  :value="item.key"
-                                ></el-option>
-                              </el-select>
-                            </el-form-item>
+                              <el-option
+                                v-for="item in operMinList"
+                                :key="item.key"
+                                :label="item.name"
+                                :value="item.key"
+                              ></el-option>
+                            </el-select>
+                          </el-form-item>
 
-                            <el-form-item
-                              :prop="'klDiagnoseTypeVO.' +
+                          <el-form-item
+                            :prop="'klDiagnoseTypeVO.' +
                             scope.$index +
                             '.groupVO.' +
                             index +
                             '.klDiagnoseDetail.'+i+'.minVal'"
-                              :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
-                            >
-                              <el-input v-model="items.minVal" placeholder="填写数值"></el-input>
-                            </el-form-item>
+                            :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
+                          >
+                            <el-input v-model="items.minVal" placeholder="填写数值"></el-input>
+                          </el-form-item>
 
-                            <el-form-item prop="minUnit">
-                              <el-input v-model.trim="items.minUnit" placeholder="填写单位"></el-input>
-                            </el-form-item>
-                          </div>
-                        </el-form-item>
-                        <el-form-item
-                          :prop="'klDiagnoseTypeVO.' +
+                          <el-form-item prop="minUnit">
+                            <el-input v-model.trim="items.minUnit" placeholder="填写单位"></el-input>
+                          </el-form-item>
+                        </div>
+                      </el-form-item>
+                      <el-form-item
+                        :prop="'klDiagnoseTypeVO.' +
                         scope.$index +
                         '.groupVO.' +
                         index +
                         '.klDiagnoseDetail.'+i+'.eqValue'"
-                          :rules="[{required:true,message:'请输入正则表达式',trigger:'blur'}]"
-                          v-if="items.basType===4 || items.basType===3"
-                          maxlength="200"
-                          label="正则表达式:"
-                          class="discDesc"
-                        >
-                          <el-input class="inp" placeholder="不能为空~" v-model.trim="items.eqValue"></el-input>
-                        </el-form-item>
-                        <el-form-item
-                          :prop="'klDiagnoseTypeVO.' +
+                        :rules="[{required:true,message:'请输入正则表达式',trigger:'blur'}]"
+                        v-if="items.basType===4 || items.basType===3"
+                        maxlength="200"
+                        label="正则表达式:"
+                        class="discDesc"
+                      >
+                        <el-input class="inp" placeholder="不能为空~" v-model.trim="items.eqValue"></el-input>
+                      </el-form-item>
+                      <el-form-item
+                        :prop="'klDiagnoseTypeVO.' +
                         scope.$index +
                         '.groupVO.' +
                         index +
                         '.klDiagnoseDetail.'+i+'.eqValue'"
-                          :rules="[{required:true,message:'不能为空~',trigger:'blur'}]"
-                          maxlength="200"
-                          v-if="(!items.onlyNumType&&!items.basNameType&&(items.basType===2 || items.basType===1)&&items.dataType==='2')||items.onlyTxtType"
-                          label="医学内容:"
-                          class="discDesc"
-                        >
-                          <el-input v-model.trim="items.eqValue" class="inp" placeholder="请输入医学内容"></el-input>
-                        </el-form-item>
-                      </div>
+                        :rules="[{required:true,message:'不能为空~',trigger:'blur'}]"
+                        maxlength="200"
+                        v-if="(!items.onlyNumType&&!items.basNameType&&(items.basType===2 || items.basType===1)&&items.dataType==='2')||items.onlyTxtType"
+                        label="医学内容:"
+                        class="discDesc"
+                      >
+                        <el-input v-model.trim="items.eqValue" class="inp" placeholder="请输入医学内容"></el-input>
+                      </el-form-item>
                     </el-form-item>
                   </div>
                 </div>
@@ -420,7 +404,6 @@
             </el-table-column>
           </el-table>
         </el-form>
-
         <div class="Butn">
           <el-button class="disclButn" size="small" type="primary" @click="confirm">保存</el-button>
         </div>
@@ -438,13 +421,13 @@ export default {
     return {
       columns: [
         { title: '组', width: 70 },
-        { title: '符合条件的数量', width: 150, istar: true },
+        { title: '符合条件的数量', width: 105, istar: true },
         { title: '基础依据', width: 80, istar: true },
         { title: '基础依据名称', width: 160, istar: true },
-        { title: '基础依据类型', width: 130, istar: true },
-        { title: '基础依据术语类型', width: 160, istar: true },
+        { title: '基础依据类型', width: 150, istar: true },
+        { title: '基础依据术语类型', width: 165, istar: true },
         { title: '医学标准术语', width: 130, istar: true },
-        { title: '规则具体内容', width: 750 }
+        { title: '依据具体内容', width: 850 }
       ],
       dicts: {},
       baseTypes: [], //诊断数据类型
@@ -692,7 +675,6 @@ export default {
           newArr = arr;
         }
       });
-      // console.log(newArr)
       // this.$set(this, 'form.klDiagnoseTypeVO', newArr);
       this.getSpanArr(newArr);
     },
@@ -724,14 +706,12 @@ export default {
         };
       }
     },
-     tableRowClassName({row, column, rowIndex, columnIndex}) {
-       console.log(row.depart_id & 1)
-        if (row.depart_id & 1) {
-          console.log(3658)
-          return 'success-row';
-        } 
-        return '';
-      },
+    tableRowClassName({ row, column, rowIndex, columnIndex }) {
+      if (row.depart_id & 1) {
+        return 'success-row';
+      }
+      return '';
+    },
     getInitData() {
       this.i++;
       return {
@@ -792,7 +772,34 @@ export default {
     },
     //删除依据
     delDiag(i) {
-      this.form.klDiagnoseTypeVO.splice(i, 1);
+      const formData = JSON.parse(JSON.stringify(this.form));
+      let map = {},
+        dest = [];
+      for (let i = 0; i < formData.klDiagnoseTypeVO.length; i++) {
+        let ai = formData.klDiagnoseTypeVO[i];
+        if (!map[ai.depart_id]) {
+          dest.push({
+            depart_id: ai.depart_id,
+            conditionType: ai.conditionType,
+            groupVO: ai.groupVO
+          });
+          map[ai.depart_id] = ai;
+        } else {
+          for (let j = 0; j < dest.length; j++) {
+            var dj = dest[j];
+            if (dj.depart_id == ai.depart_id) {
+              dj.groupVO = dj.groupVO.concat(ai.groupVO);
+              break;
+            }
+          }
+        }
+      }
+      if (dest.length == 0) {
+        return;
+      } else {
+        dest.splice(i, 1);
+        this.form.klDiagnoseTypeVO = dest;
+      }
     },
     //新增组
     addGroup(i) {
@@ -828,7 +835,11 @@ export default {
       this.form.klDiagnoseTypeVO[i].groupVO.splice(i + 1, 0, temp);
     },
     delGroup(i) {
-      this.form.klDiagnoseTypeVO.splice(i, 1);
+      if (this.form.klDiagnoseTypeVO.length == 1) {
+        return;
+      } else {
+        this.form.klDiagnoseTypeVO.splice(i, 1);
+      }
     },
     //新增基础依据
     addRule(row, index, i) {
@@ -856,10 +867,17 @@ export default {
       this.form.klDiagnoseTypeVO[index].groupVO[i].klDiagnoseDetail.push(temp);
     },
     delRule(row, inx, index, i) {
-      this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail.splice(
-        i,
-        1
-      );
+      if (
+        this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail
+          .length == 1
+      ) {
+        return;
+      } else {
+        this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail.splice(
+          i,
+          1
+        );
+      }
     },
     //诊断依据类型修改
     basTypeChange(val, inx) {
@@ -1051,7 +1069,6 @@ export default {
       let str = JSON.stringify(data)
         .replace(/byIdDTO/g, 'groupVO')
         .replace(/klDiagnoseByIdDTO/g, 'klDiagnoseDetail');
-      //console.log(JSON.parse(str))
       return JSON.parse(str);
     },
     searchDiag(val) {
@@ -1144,6 +1161,7 @@ export default {
       }
 
       formData.klDiagnoseTypeVO = dest;
+
       this.validateForms(function() {
         let params = formData;
         _this.saveDiagBase(params);
@@ -1196,10 +1214,8 @@ export default {
     margin-top: 10px;
     padding: 20px 20px 50px;
     min-height: 600px;
-
-
     .el-table .success-row {
-      background: #DFF7EF;
+      background: #dff7ef;
     }
     .content-2-header {
       padding: 20px 0;
@@ -1216,6 +1232,14 @@ export default {
         line-height: 17px;
       }
     }
+
+    .el-input,
+    .el-input__inner {
+      font-size: 12px;
+      line-height: 32px;
+      height: 32px;
+      margin-right: 15px;
+    }
     .is-request {
       height: 46px;
     }
@@ -1225,9 +1249,6 @@ export default {
         width: 140px !important;
       }
     }
-    .el-form-item {
-      margin-bottom: 10px;
-    }
     .discDesc {
       margin-bottom: 20px;
       .el-form-item__error {
@@ -1239,11 +1260,7 @@ export default {
     .el-popper[x-placement^='bottom'] {
       width: 100px !important;
     }
-    .disclButn {
-      position: absolute;
-      right: calc(50% - 60px);
-      bottom: 10px;
-    }
+
     .el-table .cell.el-tooltip {
       position: relative;
     }
@@ -1280,31 +1297,17 @@ export default {
       }
       .el-form-item__content {
         position: inherit !important;
+        display: flex;
+        margin-top: 2px;
       }
       .last-box-1 {
         display: flex;
-        .el-form-item__error {
-          top: 56px;
-          left: 10px;
-          white-space: nowrap;
-          background: #fff;
-        }
-      }
-      .last-box-s {
-        position: absolute;
-        .el-form-item__error {
-          top: 39px;
-          left: 0px;
-          white-space: nowrap;
-          background: #fff;
+        .el-form-item {
+          .el-form-item__error {
+            left: -60px;
+          }
         }
       }
-      .el-form-item__error {
-        top: 56px;
-        left: 10px;
-        white-space: nowrap;
-        background: #fff;
-      }
       .box-1 {
         display: inline;
         /deep/ .el-input,
@@ -1320,18 +1323,19 @@ export default {
       }
       .el-form-item {
         margin: 0;
-        width: 100%;
-        overflow: hidden;
+        position: relative;
+        .el-form-item__error {
+          top: 35px;
+          left: 0;
+          white-space: nowrap;
+          background: #fff;
+        }
       }
-      .el-form-item__content;
     }
-    .add-new-form {
-      .el-input,
+    .inp {
+      width: 600px !important;
       .el-input__inner {
-        width: 100px;
-        font-size: 12px;
-        line-height: 32px;
-        height: 32px;
+        width: 600px !important;
       }
     }
 
@@ -1360,11 +1364,17 @@ export default {
     }
     .icon {
       padding: 0 3px;
+      cursor: pointer;
     }
     .star {
       color: #ff545b;
     }
   }
+  .disclButn {
+    position: absolute;
+    right: calc(50% - 60px);
+    bottom: 10px;
+  }
   .description .el-form-item__error {
     top: auto;
   }

二進制
src/images/icon-copy.png