|  | @@ -1354,13 +1354,17 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              SpreadJsObj.forbiddenSpreadContextMenu(selector, this.spread);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        loadData () {
 | 
	
		
			
				|  |  | -            if (this.loaded) return;
 | 
	
		
			
				|  |  | +        loadData (callback) {
 | 
	
		
			
				|  |  | +            if (this.loaded) {
 | 
	
		
			
				|  |  | +                if (callback) callback();
 | 
	
		
			
				|  |  | +                return;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |              const self = this;
 | 
	
		
			
				|  |  |              postData(this.url+'/get-data', {}, function (data) {
 | 
	
		
			
				|  |  |                  self.data = data;
 | 
	
		
			
				|  |  |                  SpreadJsObj.loadSheetData(self.spread.getActiveSheet(), 'data', data);
 | 
	
		
			
				|  |  |                  self.loaded = true;
 | 
	
		
			
				|  |  | +                if (callback) callback();
 | 
	
		
			
				|  |  |              });
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          calculateData () {
 | 
	
	
		
			
				|  | @@ -1490,8 +1494,9 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |              SpreadJsObj.initSheet(this.dealSpread.getActiveSheet(), this.dealSpreadSetting);
 | 
	
		
			
				|  |  |              SpreadJsObj.refreshColumnAlign(this.dealSpread.getActiveSheet());
 | 
	
		
			
				|  |  |              // 拉取签约节点数据
 | 
	
		
			
				|  |  | -            dealBills.loadData();
 | 
	
		
			
				|  |  | -            SpreadJsObj.loadSheetData(this.dealSpread.getActiveSheet(), 'data', dealBills.data);
 | 
	
		
			
				|  |  | +            dealBills.loadData(() => {
 | 
	
		
			
				|  |  | +                SpreadJsObj.loadSheetData(this.dealSpread.getActiveSheet(), 'data', dealBills.data);
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  |              // 双击签约节点,自动添加到清单编号窗口
 | 
	
		
			
				|  |  |              this.dealSpread.bind(GC.Spread.Sheets.Events.CellDoubleClick, function (e, info) {
 | 
	
		
			
				|  |  |                  const deal = info.sheet.zh_data[info.row];
 |