Browse Source

选中首层清单,添加标准清单,应添加为子项

MaiXinRong 7 years ago
parent
commit
b3382bb704

+ 13 - 8
web/building_saas/main/js/controllers/project_controller.js

@@ -18,17 +18,22 @@ ProjectController = {
         if (!project || !sheetController) { return null; }
 
         let target = project.getParentTarget(project.mainTree.selected, 'sourceType', project.Bills.getSourceType());
-        let newSource = null, newNode = null;
-        let parentID = target ? target.source.getParentID() : project.Bills.tree.setting.rootId;
-        let nextSiblingID = target ? target.source.getNextSiblingID() : project.Bills.tree.setting.rootId;
+        let newSource = null, newNode = null, parentID, nextSiblingID;
+        if (target) {
+            console.log(target.depth());
+            parentID = target.depth() === 0 ? target.source.getID() : target.source.getParentID();
+            nextSiblingID = target ? target.source.getNextSiblingID() : project.Bills.tree.setting.rootId;
 
-        if (std) {
-            let newCode = project.Bills.newFormatCode(std.code);
-            newSource = project.Bills.insertStdBills(parentID, nextSiblingID, std, newCode);
+            if (std) {
+                let newCode = project.Bills.newFormatCode(std.code);
+                newSource = project.Bills.insertStdBills(parentID, nextSiblingID, std, newCode);
+            } else {
+                newSource = project.Bills.insertBills(parentID, nextSiblingID);
+            }
+            newNode = project.mainTree.insert(target.depth() === 0 ? target.getID() : target.getParentID(), target.getNextSiblingID());
         } else {
-            newSource = project.Bills.insertBills(parentID, nextSiblingID);
+            alert('不可添加清单');
         }
-        newNode = project.mainTree.insert(target.getParentID(), target.getNextSiblingID());
 
         if (newNode) {
             newNode.source = newSource;

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

@@ -84,7 +84,7 @@ var PROJECT = {
             this.composition.loadData();
             this.Decimal = {
                 common: {
-                    quantity: 3,
+                    quantity: 4,
                     unitFee: 2,
                     totalFee: 2
                 }

+ 10 - 3
web/building_saas/main/js/views/project_view.js

@@ -89,7 +89,9 @@ var projectObj = {
         if (colSetting.data.decimal) {
             value = Number(editingText);
             if (number_util.isNumber(value)) {
-                value = value.toDecimal(colSetting.data.decimal);
+                if (colSetting.data.decimal) {
+                    value = value.toDecimal(colSetting.data.decimal);
+                }
             } else {
                 value = null;
                 alert('当前输入的数据类型不正确,请重新输入。');
@@ -111,7 +113,9 @@ var projectObj = {
             }
         }
         if (value) {
-            value = value.toDecimal(colSetting.data.decimal);
+            if (colSetting.data.decimal) {
+                value = value.toDecimal(colSetting.data.decimal);   
+            }
         } else if (editingText && editingText !== '') {
             value = null;
             alert('当前输入的数据类型不正确,请重新输入。');
@@ -135,6 +139,7 @@ var projectObj = {
             }
             return nodes;
         }
+        value = value.toDecimal(projectObj.project.Decimal.common.quantity);
         if (node.sourceType === projectObj.project.Bills.getSourceType()) {
             calcFees.setFee(node.data, fieldName, value);
             calc.calcNode(node, true);
@@ -273,8 +278,10 @@ var projectObj = {
                 }
                 projectObj.mainController.refreshTreeNode([node]);
             }
-        }else if(value==null&&fieldName ==='feeRate'){
+        } else if(value==null && fieldName ==='feeRate'){
             project.FeeRate.cleanFeeRateID(node);
+        } else {
+            projectObj.mainController.refreshTreeNode([node], false);
         }
     },
     checkMainSpread: function () {