浏览代码

代码调整。

chenshilong 7 年之前
父节点
当前提交
3d5c9940fe

+ 1 - 1
web/building_saas/main/js/models/bills.js

@@ -118,7 +118,7 @@ var Bills = {
 
         // 提交数据后的错误处理方法
         bills.prototype.doAfterUpdate = function(err, data){
-            console.log(data)
+            // console.log(data)
             if(data.quantityRefresh){
                 this.refreshDatas(data,'quantity');
             }

+ 31 - 27
web/building_saas/main/js/models/calc_program.js

@@ -399,6 +399,34 @@ let executeObj = {
     }
 };
 
+let treeNodeTools = {
+    getFormulaNodes: function () {
+        return [];
+    },
+
+    isRation: function(treeNode){
+        return treeNode.sourceType === ModuleNames.ration && treeNode.data.type === rationType.ration;
+    },
+
+    isLeafBill: function(treeNode){
+        return treeNode.sourceType === projectObj.project.Bills.getSourceType() &&
+            treeNode.source.children &&
+            treeNode.source.children.length === 0;
+    },
+
+    isNullBill: function (treeNode) {
+        return this.isLeafBill(treeNode) && (treeNode.children.length === 0) && (!treeNode.data.calcBase);
+    },
+
+    isVolumePrice: function (treeNode) {
+        return treeNode.sourceType === ModuleNames.ration && treeNode.data.type === rationType.volumePrice;
+    },
+
+    isGljRation: function (treeNode) {
+        return treeNode.sourceType === ModuleNames.ration && treeNode.data.type === rationType.gljRation;
+    }
+};
+
 class CalcProgram {
     constructor(project){
         let me = this;
@@ -594,30 +622,6 @@ class CalcProgram {
         };
     };
 
-    isLeafBill(treeNode){
-        let me = this;
-        return treeNode.sourceType === me.project.Bills.getSourceType() &&
-               treeNode.source.children &&
-               treeNode.source.children.length === 0;
-    };
-
-    isNullBill(treeNode){
-        let me = this;
-        return me.isLeafBill(treeNode) && (treeNode.children.length ===0) && (!treeNode.data.calcBase);
-    };
-
-    isRation(treeNode){
-        return treeNode.sourceType === ModuleNames.ration && treeNode.data.type === rationType.ration;
-    };
-
-    isVolumePrice(treeNode){
-        return treeNode.sourceType === ModuleNames.ration && treeNode.data.type === rationType.volumePrice;
-    };
-
-    isGljRation(treeNode){
-        return treeNode.sourceType === ModuleNames.ration && treeNode.data.type === rationType.gljRation;
-    };
-
     initFeeField(treeNode, fieldName){
         if (!treeNode.data.fees) {
             treeNode.data.fees = [];
@@ -871,10 +875,10 @@ class CalcProgram {
         if (isRation){
             treeNode.calcType = treeNodeCalcType.ctRationCalcProgram;
         }
-        else  if (me.isNullBill(treeNode)){
+        else  if (treeNodeTools.isNullBill(treeNode)){
             treeNode.calcType = treeNodeCalcType.ctCommonUnitFee;
         }
-        else if (me.isLeafBill(treeNode)) {
+        else if (treeNodeTools.isLeafBill(treeNode)) {
             if (treeNode.children && treeNode.children.length > 0){
                 // 清单单价计算模式下的叶子清单:取自己的计算程序ID,找到自己的计算程序计算。(汇总清单所有定额的工料机)
                 if (me.project.property.billsCalcMode === leafBillGetFeeType.billsPrice)
@@ -989,7 +993,7 @@ class CalcProgram {
     // 计算叶子清单下的所有子结点(如定额、量价、工料机定额等), 并计算自身和所有父结点。最后打包存储。
     calcLeafAndSave(treeNode){
         let me = this;
-        if(!me.isLeafBill(treeNode)) return;
+        if(!treeNodeTools.isLeafBill(treeNode)) return;
         if (treeNode.children && treeNode.children.length > 0) {
             let changedNodes = [];
             for (let child of treeNode.children){

+ 4 - 4
web/building_saas/main/js/views/main_tree_col.js

@@ -43,7 +43,7 @@ let MainTreeCol = {
         calcProgramName: function (node) {
             if (
                 node.sourceType === projectObj.project.Ration.getSourceType() ||
-                (projectObj.project.calcProgram.isLeafBill(node) && projectObj.project.property.billsCalcMode === leafBillGetFeeType.billsPrice)
+                (treeNodeTools.isLeafBill(node) && projectObj.project.property.billsCalcMode === leafBillGetFeeType.billsPrice)
             ) return false
             else return true;
         },
@@ -51,7 +51,7 @@ let MainTreeCol = {
             return node.data.subType != 201 && node.data.subType != 4 && node.data.subType != 5
         },
         commonUnitFee: function (node) {
-            return !projectObj.project.calcProgram.isNullBill(node);
+            return !treeNodeTools.isNullBill(node);
         },
         //根据节点、父节点类型判断是否可用计算基数
         calcBaseType: function (node) {
@@ -85,7 +85,7 @@ let MainTreeCol = {
             return node.sourceType === projectObj.project.Bills.getSourceType();
         },
         ration: function (node) {
-            return projectObj.project.calcProgram.isRation(node);
+            return treeNodeTools.isRation(node);
         },
         glj: function (node) {
             return node.sourceType == projectObj.project.ration_glj.getSourceType();
@@ -159,7 +159,7 @@ let MainTreeCol = {
         calcProgramName: function (node) {
             if (
                 node.sourceType === projectObj.project.Ration.getSourceType() ||
-                (projectObj.project.calcProgram.isLeafBill(node) && projectObj.project.property.billsCalcMode === leafBillGetFeeType.billsPrice)
+                (treeNodeTools.isLeafBill(node) && projectObj.project.property.billsCalcMode === leafBillGetFeeType.billsPrice)
             ) {
                 // var names = new GC.Spread.Sheets.CellTypes.ComboBox();
                 var names = sheetCommonObj.getDynamicCombo();

+ 2 - 2
web/building_saas/main/js/views/project_view.js

@@ -268,10 +268,10 @@ var projectObj = {
         let project = projectObj.project, fieldName = colSetting.data.field;
         if(node.sourceType==project.ration_glj.getSourceType()){
             project.ration_glj.updateFromMainSpread(value,node,fieldName);
-        }else if(node.sourceType==ModuleNames.ration&&node.data.type==rationType.gljRation){
+        }else if(treeNodeTools.isGljRation(node)){
             gljOprObj.updateRationTypeGLJ(value,node,fieldName);
         } else if (value !== calcFees.getFee(node.data, fieldName)||fieldName == 'quantity') {//工程量需要进行转换,所以做特殊处理
-            if (fieldName === 'code' && !project.calcProgram.isVolumePrice(node)) {
+            if (fieldName === 'code' && !treeNodeTools.isVolumePrice(node)) {
                 projectObj.updateCode(node, value);
             }
             else if(fieldName ==='feeRate'){