Эх сурвалжийг харах

修复四川肿瘤检验方法组件

zhonghuizhen 8 сар өмнө
parent
commit
12f043ce69

+ 47 - 1
src/views/business/testMethod/review.vue

@@ -58,7 +58,7 @@
     
     <!-- 分页控件 -->
     <el-pagination
-      v-if="pagination.total > 0"
+      v-if="pagination.total >= 0"
       :current-page="pagination.currentPage"
       :page-sizes="[5, 10, 20]"
       :page-size="pagination.pageSize"
@@ -124,6 +124,8 @@ export default {
       tableKey: 0,
       multipleSelection: [],
       selectEditData: '',
+      isInternalUpdate: false, // 标记是否是内部更新
+      isExternalUpdate: false, // 标记是否是外部更新
       // 修改分页配置
       pagination: {
         currentPage: 1,
@@ -160,6 +162,13 @@ export default {
   watch: {
     formData: {
       handler(val) {
+          // 如果是内部更新触发的,则忽略
+        if (this.isInternalUpdate) {
+          this.isInternalUpdate = false;
+          return;
+        }
+        
+        this.isExternalUpdate = true;
         if (val.lieBiaoShuJu) {
           if (this.isFirst) {
             this.statData = JSON.parse(val.lieBiaoShuJu)
@@ -167,6 +176,36 @@ export default {
             this.isFirst = false
           }
         }
+        if(val.jyffxnpsjlzb && val.jyffxnpsjlzb.length && val.jyffxnpsjlzb.length>0){
+          this.statData = val.jyffxnpsjlzb.map((item) => ({
+            id: '',
+            parentId: '',
+            jianYanXiangMu: item.jianYanXiangMu,
+            fangFaMingCheng: item.fangFaMingCheng,
+            jianYanFangFa: item.jianYanFangFa,
+            xiangMuYuFangFa: item.xiangMuYuFangFa,
+            xiangMuMingCheng: item.xiangMuMingCheng,
+            sheBeiMingCheng: item.sheBeiMingCheng,
+            sheBeiBianHao: item.sheBeiBianHao,
+            shiJiJiPiHao: item.shiJiJiPiHao,
+            xiaoZhunPinJiPiHa: '不适用',
+            shangCiYanZhengXi: item.shangCiYanZhengXi,
+            pingShenNeiRong: item.pingShenNeiRong,
+            pingShenJieLun: item.pingShenJieLun,
+            faXianDeWenTi: item.faXianDeWenTi,
+            pinShen1:item.pingShenNeiRong,
+            xiangMuFangFa:item.xiangMuYuFangFa,
+            shiJi:item.shiJiJiPiHao,
+            yangzheng: item.shangCiYanZhengXi,
+            jieLun:item.pingShenJieLun,
+            faXianWenTi: item.faXianDeWenTi
+          }))
+          this.pagination.total = this.statData.length // 更新总条数
+        }
+        //this.isExternalUpdate = false;
+        this.$nextTick(() => {
+          this.isExternalUpdate = false;
+        });
       },
       immediate: true,
       deep: true
@@ -184,6 +223,10 @@ export default {
     },
     statData: {
       handler(val) {
+        // 如果是外部更新触发的,则不需要$emit
+        if (this.isExternalUpdate) {
+          return;
+        }
         const t = val.map((item) => ({
           id: '',
           parentId: '',
@@ -202,6 +245,9 @@ export default {
           faXianDeWenTi: item.faXianWenTi
         }))
         this.pagination.total = val.length // 更新总条数
+
+        // 标记这是内部更新,避免formData的watch再次触发
+        this.isInternalUpdate = true;
         this.$emit('change-data', 'lieBiaoShuJu', JSON.stringify(val))
         this.$emit('change-data', 'jyffxnpsjlzb', t)
       },