Pārlūkot izejas kodu

双击经济指标或金额进入编辑状态不输入不回车,鼠标移至别的单元格,卡死。

chenshilong 6 gadi atpakaļ
vecāks
revīzija
33f0b9ac32
1 mainītis faili ar 11 papildinājumiem un 4 dzēšanām
  1. 11 4
      web/building_saas/main/js/models/calc_program.js

+ 11 - 4
web/building_saas/main/js/models/calc_program.js

@@ -216,16 +216,22 @@ let calcTools = {
         };
     },
     setFieldValue: function (treeNode, fieldName, value){
+        if (value == null) value = 0;
         if (fieldName.includes('feesIndex')){
             let arr = fieldName.split('.');
             this.initFeeField(treeNode, arr[1]);
-            treeNode.data.feesIndex[arr[1]][arr[2]] = value;
-            treeNode.updateData.feesIndex[arr[1]][arr[2]] = value;
+            if (treeNode.data.feesIndex[arr[1]][arr[2]] != value) {
+                treeNode.data.feesIndex[arr[1]][arr[2]] = value;
+                treeNode.updateData.feesIndex = treeNode.data.feesIndex;
+                treeNode.changed = true;
+            }
         }
         else{
-            treeNode.updateData[fieldName] = value;
+            if (treeNode.data[fieldName] != value){
+                treeNode.updateData[fieldName] = value;
+                treeNode.changed = true;
+            }
         };
-        treeNode.changed = true;
     },
     initSummaryFee: function (treeNode){
         if (!treeNode.data.summaryFees){
@@ -675,6 +681,7 @@ let calcTools = {
         };
         // 优化掉 undefined 属性
         data = JSON.parse(JSON.stringify(data));
+        delete data.feesIndex;
         return data;
     },