|  | @@ -9,15 +9,16 @@ var Bills = {
 | 
	
		
			
				|  |  |              pid: 'ParentID',
 | 
	
		
			
				|  |  |              nid: 'NextSiblingID',
 | 
	
		
			
				|  |  |              rootId: -1,
 | 
	
		
			
				|  |  | -            autoUpdate: false
 | 
	
		
			
				|  |  | +            autoUpdate: true
 | 
	
		
			
				|  |  |          };
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 用户定义private方法
 | 
	
		
			
				|  |  |          var tools = {
 | 
	
		
			
				|  |  | -            coverseTreeUpdateData: function (datas) {
 | 
	
		
			
				|  |  | +            coverseTreeUpdateData: function (datas, projectID) {
 | 
	
		
			
				|  |  |                  var updateDatas = [];
 | 
	
		
			
				|  |  |                  datas.forEach(function (data) {
 | 
	
		
			
				|  |  |                      var updateData = {};
 | 
	
		
			
				|  |  | +                    data.data.projectID = projectID;
 | 
	
		
			
				|  |  |                      if (data.type === idTree.updateType.new) {
 | 
	
		
			
				|  |  |                          updateData.updateType = 'ut_create';
 | 
	
		
			
				|  |  |                          updateData.updateData = data.data;
 | 
	
	
		
			
				|  | @@ -108,47 +109,67 @@ var Bills = {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          bills.prototype.insertBills = function (parentId, nextSiblingId) {
 | 
	
		
			
				|  |  |              var insertData = this.tree.getInsertData(parentId, nextSiblingId);
 | 
	
		
			
				|  |  | -            var that = this;
 | 
	
		
			
				|  |  | +            var that = this, newData = null;
 | 
	
		
			
				|  |  |              insertData.forEach(function (data) {
 | 
	
		
			
				|  |  | -                data.data.projectID = that.project.ID();
 | 
	
		
			
				|  |  |                  if (data.type === idTree.updateType.new) {
 | 
	
		
			
				|  |  | -                    that.datas.push(data.data);
 | 
	
		
			
				|  |  | +                    newData = data.data;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              });
 | 
	
		
			
				|  |  |              this.project.pushNow('insertBills', [this.getSourceType(), this.project.projCounter()],
 | 
	
		
			
				|  |  | -                [ tools.coverseTreeUpdateData(insertData), this.getCounterData()]);
 | 
	
		
			
				|  |  | +                [ tools.coverseTreeUpdateData(insertData, this.project.ID()), this.getCounterData()]);
 | 
	
		
			
				|  |  |              //project.pushNow('insertBills', ModuleNames.bills, tools.coverseTreeUpdateData(insertData));
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +            this.datas.push(newData);
 | 
	
		
			
				|  |  |              return this.tree.insert(parentId, nextSiblingId);
 | 
	
		
			
				|  |  |          };
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |          bills.prototype.insertStdBills = function (parentId, nextSiblingId, stdBillsData) {
 | 
	
		
			
				|  |  |              var insertData = this.tree.getInsertData(parentId, nextSiblingId);
 | 
	
		
			
				|  |  |              var newData = null, that = this;
 | 
	
		
			
				|  |  |              insertData.forEach(function (data) {
 | 
	
		
			
				|  |  | -                data.data.projectID = that.project.ID();
 | 
	
		
			
				|  |  |                  if (data.type === idTree.updateType.new) {
 | 
	
		
			
				|  |  |                      data.data.code = stdBillsData.code;
 | 
	
		
			
				|  |  |                      data.data.name = stdBillsData.name;
 | 
	
		
			
				|  |  |                      data.data.unit = stdBillsData.unit;
 | 
	
		
			
				|  |  | -                    that.datas.push(data.data);
 | 
	
		
			
				|  |  |                      newData = data.data;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              });
 | 
	
		
			
				|  |  |              this.project.pushNow('insertStdBills', [this.getSourceType(), this.project.projCounter()],
 | 
	
		
			
				|  |  | -                [ tools.coverseTreeUpdateData(insertData), this.getCounterData()]);
 | 
	
		
			
				|  |  | -            //project.pushNow('insertStdBills', ModuleNames.bills, tools.coverseTreeUpdateData(insertData));
 | 
	
		
			
				|  |  | +                [ tools.coverseTreeUpdateData(insertData, this.project.ID()), this.getCounterData()]);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +            this.datas.push(newData);
 | 
	
		
			
				|  |  |              return this.tree.insertByData(newData, parentId, nextSiblingId);
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +        };
 | 
	
		
			
				|  |  |          bills.prototype.deleteBills = function (node) {
 | 
	
		
			
				|  |  |              var deleteData = this.tree.getDeleteData(node);
 | 
	
		
			
				|  |  |              project.beginUpdate('deleteBills');
 | 
	
		
			
				|  |  | -            project.push(ModuleNames.bills, tools.coverseTreeUpdateData(deleteData, project.ID()));
 | 
	
		
			
				|  |  | +            project.push(ModuleNames.bills, tools.coverseTreeUpdateData(deleteData, this.project.ID()));
 | 
	
		
			
				|  |  |              project.endUpdate();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              return this.tree.delete(node);
 | 
	
		
			
				|  |  | +        };
 | 
	
		
			
				|  |  | +        bills.prototype.upMoveBills = function (node) {
 | 
	
		
			
				|  |  | +            var upMoveData = node.getUpMoveData();
 | 
	
		
			
				|  |  | +            project.pushNow('upMoveBills', this.getSourceType(), tools.coverseTreeUpdateData(upMoveData, this.project.ID()));
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return node.upMove();
 | 
	
		
			
				|  |  | +        };
 | 
	
		
			
				|  |  | +        bills.prototype.downMoveBills = function (node) {
 | 
	
		
			
				|  |  | +            var downMoveData = node.getDownMoveData();
 | 
	
		
			
				|  |  | +            project.pushNow('downMoveBills', this.getSourceType(), tools.coverseTreeUpdateData(downMoveData, this.project.ID()));
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return node.downMove();
 | 
	
		
			
				|  |  | +        };
 | 
	
		
			
				|  |  | +        bills.prototype.upLevelBills = function (node) {
 | 
	
		
			
				|  |  | +            var upLevelData = node.getUpLevelData();
 | 
	
		
			
				|  |  | +            project.pushNow('upLevelBills', this.getSourceType(), tools.coverseTreeUpdateData(upLevelData, this.project.ID()));
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return node.upLevel();
 | 
	
		
			
				|  |  | +        };
 | 
	
		
			
				|  |  | +        bills.prototype.downLevelBills = function (node) {
 | 
	
		
			
				|  |  | +            var downLevelData = node.getDownLevelData();
 | 
	
		
			
				|  |  | +            project.pushNow('downLevelBills', [this.getSourceType()], [tools.coverseTreeUpdateData(downLevelData, this.project.ID())]);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return node.downLevel();
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          return new bills(project);
 |