Kaynağa Gözat

Merge branch 'uiUpdate0507' into test

# Conflicts:
#	src/components/knowledgeExtra/AddDiagBase.vue
wyq 4 yıl önce
ebeveyn
işleme
710c6011f8

+ 11 - 43
src/components/knowledgeExtra/AddDiagBase.vue

@@ -49,7 +49,7 @@
             :span-method="dataSpanMethod"
             :data="form.klDiagnoseTypeVO"
             border
-            max-height="500"
+            height="500"
             :header-cell-style="{background:'#E3EAF4'}"
           >
             <el-table-column label="依据" width="100" fixed>
@@ -114,7 +114,6 @@
                 <span class="name">组</span>
               </template>
               <template slot-scope="scope">
-                {{scope.row.depart_id}}
                 <el-form-item>
                   <img
                     src="../../images/icon-add.png"
@@ -206,6 +205,7 @@
                         '.groupVO.' +
                         index +
                         '.klDiagnoseDetail.'+i+'.basType'"
+                        :rules="[{ required: true, message: '请选择基础依据类型',trigger: ['change'] }]"
                       >
                         <el-select
                           v-model="items.basType"
@@ -396,6 +396,7 @@
                         maxlength="200"
                         label="正则表达式:"
                         class="discDesc"
+                        :rules="[{required:true,message:'不能为空~',trigger:'change'}]"
                       >
                         <el-input class="inp" placeholder="请输入正则表达式" v-model.trim="items.eqValue"></el-input>
                       </el-form-item>
@@ -409,6 +410,7 @@
                         v-if="(!items.onlyNumType&&!items.basNameType&&(items.basType===2 || items.basType===1)&&items.dataType==='2')||items.onlyTxtType"
                         label="医学内容:"
                         class="discDesc"
+                        :rules="[{required:true,message:'不能为空~',trigger:'change'}]"
                       >
                         <el-input v-model.trim="items.eqValue" class="inp" placeholder="请输入医学内容"></el-input>
                       </el-form-item>
@@ -661,8 +663,9 @@ export default {
           }
         }
       }
+      this.i = this.form.klDiagnoseTypeVO.slice(-1).depart_id;
     }
-    console.log(this.form);
+
     this.setRules();
   },
 
@@ -846,6 +849,7 @@ export default {
       });
       this.form.klDiagnoseTypeVO.splice(i + 1, 0, temp);
       this.setRules();
+      console.log(this.form.klDiagnoseTypeVO);
     },
     //复制依据
     copyDiag(id, inx) {
@@ -1237,13 +1241,6 @@ export default {
                   x +
                   '.klDiagnoseDetail.' +
                   j;
-                that.rules[keyTxt + '.basType'] = [
-                  {
-                    required: true,
-                    message: '请选择基础依据类型',
-                    trigger: ['change']
-                  }
-                ];
                 that.rules[keyTxt + '.dataType'] = [
                   {
                     required: true,
@@ -1329,19 +1326,6 @@ export default {
                     trigger: 'blur'
                   }
                 ];
-                that.rules[keyTxt + '.eqValue'] = [
-                  { required: true, message: '不能为空~', trigger: 'blur' },
-                  {
-                    validator: (rule, value, callback) => {
-                      if (value && value.length > 200) {
-                        callback(new Error('不能超过200字'));
-                      } else {
-                        callback();
-                      }
-                    },
-                    trigger: 'blur'
-                  }
-                ];
               }
             });
           });
@@ -1436,16 +1420,13 @@ export default {
 <style lang="less" scoped>
 @import '../../less/admin.less';
 .contents {
-  height: 100%;
+  height: 780px;
   .content {
     background: #fff;
     padding: 20px 20px 50px;
     color: #545455;
     min-width: 980px;
     position: relative;
-    .name {
-      font-size: 14px;
-    }
     .tip-text {
       color: #f56c6c;
       margin-left: 10px;
@@ -1465,7 +1446,7 @@ export default {
       .el-input__inner {
         height: 30px;
         line-height: 30px;
-        font-size: 14px;
+        font-size: 12px;
       }
     }
     .inps {
@@ -1473,20 +1454,12 @@ export default {
       .el-input__inner {
         width: 500px !important;
       }
-      /deep/ .el-form--inline .el-form-item__label {
-        font-size: 14px;
-      }
     }
   }
   .content-2 {
     margin-top: 10px;
     padding: 20px 20px;
     max-height: 650px;
-    .el-input {
-      .el-input__inner {
-        font-size: 12px;
-      }
-    }
     .cell {
       overflow: initial;
     }
@@ -1508,7 +1481,6 @@ export default {
     .el-form-item {
       margin-bottom: 10px;
       margin-right: 0;
-      font-size: 14px;
     }
     .discDesc {
       margin-bottom: 20px;
@@ -1560,7 +1532,7 @@ export default {
         font-size: 12px;
         margin-right: 15px;
       }
-       /deep/ .el-form-item__content {
+      /deep/ .el-form-item__content {
         position: inherit !important;
       }
       .last-box-1 {
@@ -1627,13 +1599,9 @@ export default {
       color: #ff545b;
     }
   }
-  .item .el-form-item__error {
+  .description .el-form-item__error {
     top: auto;
   }
-  .item .el-form-item__label {
-    font-size: 14px;
-  }
-
   .Butn {
     display: flex;
     justify-content: center;

+ 41 - 14
src/components/knowledgeExtra/AddNewRuleTable.vue

@@ -75,9 +75,6 @@
       margin-right: 4px;
     }
   }
-  // ::v-deep .el-table tbody tr:hover > td {
-  //   // background-color: transparent;
-  // }
   /deep/ .el-table th {
     background: transparent;
   }
@@ -87,9 +84,6 @@
   .table_cell_cls {
     vertical-align: top;
   }
-  // /deep/ .el-table__body .el-table__row.hover-row td {
-  //   // background-color: transparent;
-  // }
   /deep/ .el-form-item__label {
     font-size: 12px;
   }
@@ -97,12 +91,6 @@
     font-size: 14px;
     font-weight: 400;
   }
-  // /deep/ .el-table__body tr.current-row>td{
-  //   background: #fff;
-  // }
-  /deep/ .el-table .cell {
-    // overflow: initial;
-  }
 }
 </style>
 
@@ -207,6 +195,9 @@
               :disabled="scope.row.disabled"
               placeholder="请选择"
               @change="subTypeChange($event, scope.$index)"
+              @focus="
+                setTheRef($event, `klRuleByIdSub[${scope.$index}].subType`)
+              "
               :ref="`klRuleByIdSub[${scope.$index}].subType`"
             >
               <el-option
@@ -236,6 +227,9 @@
               placeholder="请选择"
               :ref="`klRuleByIdSub[${scope.$index}].subLenCode`"
               @change="subCodeChange($event, scope.$index)"
+              @focus="
+                setTheRef($event, `klRuleByIdSub[${scope.$index}].subLenCode`)
+              "
             >
               <el-option
                 v-for="item in scope.row.baseTermTypeList"
@@ -292,6 +286,9 @@
                 v-model="scope.row.dataType"
                 placeholder="选择类型"
                 @change="dataTypeChange($event, scope.$index)"
+                @focus="
+                  setTheRef($event, `klRuleByIdSub[${scope.$index}].dataType`)
+                "
                 :ref="`klRuleByIdSub[${scope.$index}].dataType`"
               >
                 <el-option label="数值类型" value="1"> </el-option>
@@ -324,6 +321,12 @@
                       placeholder="请选择"
                       clearable
                       @change="maxChange($event, scope.$index, 's')"
+                      @focus="
+                        setTheRef(
+                          $event,
+                          `klRuleByIdSub[${scope.$index}].subMaxOperator`
+                        )
+                      "
                       :ref="`klRuleByIdSub[${scope.$index}].subMaxOperator`"
                     >
                       <el-option
@@ -398,6 +401,12 @@
                       clearable
                       :ref="`klRuleByIdSub[${scope.$index}].subMinOperator`"
                       @change="minChange($event, scope.$index, 's')"
+                      @focus="
+                        setTheRef(
+                          $event,
+                          `klRuleByIdSub[${scope.$index}].subMinOperator`
+                        )
+                      "
                     >
                       <el-option
                         v-for="item in operMinList"
@@ -529,7 +538,8 @@ export default {
         { name: ">", key: ">" },
         { name: ">=", key: ">=" }
       ],
-      rules: tableRules
+      rules: tableRules,
+      theRef: null
     };
   },
   methods: {
@@ -680,6 +690,10 @@ export default {
     subTypeChange(e, index) {
       this.$emit("subTypeChange", e, index);
     },
+    //
+    setTheRef(e, val) {
+      this.theRef = val;
+    },
     // 规则术语类型
     subCodeChange(val, index) {
       //基础规则术语类型修改
@@ -714,6 +728,7 @@ export default {
     subConceptIdfocus(index) {
       this.subConceptIdIndex = "";
       this.subConceptIdIndex = index;
+      this.setTheRef(1, `klRuleByIdSub[${index}].subConceptId`);
     },
     // 医学标准术语
     searchConcept(val) {
@@ -798,6 +813,18 @@ export default {
     }
   },
   components: {},
+  mounted() {
+    // this.theRef
+    // FIXME 滚动问题BUG 暂无解决办法
+    // let that = this;
+    // this.$refs.table.bodyWrapper.addEventListener("scroll", function () {
+    //   console.log("scroll");
+    //   if (that.theRef) {
+    //     console.log("theRef", that.theRef);
+    //     that.$refs[that.theRef].blur();
+    //   }
+    // });
+  },
   created() {
     this.numTypes = localStorage.getItem("zskNumDict");
     this.getSpanArr(this.klRuleByIdSub);
@@ -810,7 +837,7 @@ export default {
   //   klRuleByIdSub: {
   //     handler() {
   //       let that = this;
-  //       // let box = document.querySelector(".el-table__body-wrapper");
+
   //       this.$refs.table.bodyWrapper.addEventListener("scroll", function (e) {
   //         // console.log(that.klRuleByIdSub.length);
   //         // console.log('subType',that.$refs[`klRuleByIdSub[1].subType`]);