| 
															
																@@ -139,7 +139,9 @@ var projectObj = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             } 
															 | 
															
															 | 
															
																             } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             return nodes; 
															 | 
															
															 | 
															
																             return nodes; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         } 
															 | 
															
															 | 
															
																         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        value = value.toDecimal(projectObj.project.Decimal.common.quantity); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        if (value) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            value = value.toDecimal(projectObj.project.Decimal.common.quantity); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         if (node.sourceType === projectObj.project.Bills.getSourceType()) { 
															 | 
															
															 | 
															
																         if (node.sourceType === projectObj.project.Bills.getSourceType()) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             calcFees.setFee(node.data, fieldName, value); 
															 | 
															
															 | 
															
																             calcFees.setFee(node.data, fieldName, value); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             calc.calcNode(node, true); 
															 | 
															
															 | 
															
																             calc.calcNode(node, true); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -250,15 +252,9 @@ var projectObj = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             this.updateRationCode(node, value); 
															 | 
															
															 | 
															
																             this.updateRationCode(node, value); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         } 
															 | 
															
															 | 
															
																         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     }, 
															 | 
															
															 | 
															
																     }, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-    mainSpreadEditEnded: function (sender, info) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        let project = projectObj.project; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        let node = project.mainTree.items[info.row]; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        let colSetting = projectObj.mainController.setting.cols[info.col]; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        let fieldName = projectObj.mainController.setting.cols[info.col].data.field; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        // 检查输入类型等 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        let value = projectObj.checkSpreadEditingText(info.editingText, colSetting); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																- 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        if (value && value !== calcFees.getFee(node.data, fieldName)) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    updateCellValue: function (node, value, colSetting) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        let project = projectObj.project, fieldName = colSetting.data.field; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        if (value !== calcFees.getFee(node.data, fieldName)) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             if (fieldName === 'code') { 
															 | 
															
															 | 
															
																             if (fieldName === 'code') { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 projectObj.updateCode(node, value); 
															 | 
															
															 | 
															
																                 projectObj.updateCode(node, value); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             } else if (fieldName === 'quantity' && project.quantity_detail.quantityEditChecking(value,node,fieldName)) { 
															 | 
															
															 | 
															
																             } else if (fieldName === 'quantity' && project.quantity_detail.quantityEditChecking(value,node,fieldName)) { 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -276,7 +272,7 @@ var projectObj = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     project.VolumePrice.updateField(node.source, fieldName, value, true); 
															 | 
															
															 | 
															
																                     project.VolumePrice.updateField(node.source, fieldName, value, true); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 if (colSetting.data.wordWrap) { 
															 | 
															
															 | 
															
																                 if (colSetting.data.wordWrap) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    info.sheet.autoFitRow(info.row); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    info.sheet.autoFitRow(node.serialNo()); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 projectObj.mainController.refreshTreeNode([node]); 
															 | 
															
															 | 
															
																                 projectObj.mainController.refreshTreeNode([node]); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             } 
															 | 
															
															 | 
															
																             } 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -286,6 +282,29 @@ var projectObj = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             projectObj.mainController.refreshTreeNode([node], false); 
															 | 
															
															 | 
															
																             projectObj.mainController.refreshTreeNode([node], false); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         } 
															 | 
															
															 | 
															
																         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     }, 
															 | 
															
															 | 
															
																     }, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    mainSpreadEditEnded: function (sender, info) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        let project = projectObj.project; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        let node = project.mainTree.items[info.row]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        let colSetting = projectObj.mainController.setting.cols[info.col]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        let fieldName = projectObj.mainController.setting.cols[info.col].data.field; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        // 检查输入类型等 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        let value = projectObj.checkSpreadEditingText(info.editingText, colSetting); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        projectObj.updateCellValue(node, value, colSetting); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    }, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    mainSpreadRangeChanged: function (sender, info) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        let project = projectObj.project, setting = projectObj.mainController.setting; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        if (info.changedCells.length > 0) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            for (let changedCell of info.changedCells) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                let cell = info.sheet.getCell(changedCell.row, changedCell.col); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                let node = project.mainTree.items[changedCell.row]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                let colSetting = setting.cols[changedCell.col]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                let value = projectObj.checkSpreadEditingText(cell.text(), colSetting); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                projectObj.updateCellValue(node, value, colSetting); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    }, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     checkMainSpread: function () { 
															 | 
															
															 | 
															
																     checkMainSpread: function () { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         if (!this.mainSpread) { 
															 | 
															
															 | 
															
																         if (!this.mainSpread) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             this.mainSpread = SheetDataHelper.createNewSpread($('#billsSpread')[0]); 
															 | 
															
															 | 
															
																             this.mainSpread = SheetDataHelper.createNewSpread($('#billsSpread')[0]); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -338,6 +357,7 @@ var projectObj = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 that.mainController.bind(TREE_SHEET_CONTROLLER.eventName.treeSelectedChanged, that.treeSelectedChanged); 
															 | 
															
															 | 
															
																                 that.mainController.bind(TREE_SHEET_CONTROLLER.eventName.treeSelectedChanged, that.treeSelectedChanged); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																  
															 | 
															
															 | 
															
																  
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 that.mainSpread.bind(GC.Spread.Sheets.Events.EditEnded, that.mainSpreadEditEnded); 
															 | 
															
															 | 
															
																                 that.mainSpread.bind(GC.Spread.Sheets.Events.EditEnded, that.mainSpreadEditEnded); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                that.mainSpread.bind(GC.Spread.Sheets.Events.RangeChanged, that.mainSpreadRangeChanged); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 that.loadMainSpreadContextMenu(); 
															 | 
															
															 | 
															
																                 that.loadMainSpreadContextMenu(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             } 
															 | 
															
															 | 
															
																             } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             else { 
															 | 
															
															 | 
															
																             else { 
															 |