|  | @@ -142,15 +142,33 @@ class LuckySheet extends React.Component {
 | 
	
		
			
				|  |  |    getSheetJson() {
 | 
	
		
			
				|  |  |      let data = JSON.parse(JSON.stringify(this.luckysheet.toJson()));
 | 
	
		
			
				|  |  |      data.data.forEach(sheet => {
 | 
	
		
			
				|  |  | +      let allCell = {},
 | 
	
		
			
				|  |  | +        unknowCid = [];
 | 
	
		
			
				|  |  | +      // 将cell以cid为界分别存储
 | 
	
		
			
				|  |  |        (sheet.celldata || []).forEach(cell => {
 | 
	
		
			
				|  |  | -        // 添加cid
 | 
	
		
			
				|  |  | -        if (!cell.v.cid) cell.v.cid = this.getUUID();
 | 
	
		
			
				|  |  | +        if (!cell.v.cid) {
 | 
	
		
			
				|  |  | +          unknowCid.push(cell);
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +          allCell[cell.v.cid] = cell;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |          // 清除比对样式
 | 
	
		
			
				|  |  |          if (cell.v.bg == DIFF_COLOR || cell.v.bg == ADD_COLOR) {
 | 
	
		
			
				|  |  |            delete cell.v.bg;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      unknowCid.forEach(cell => {
 | 
	
		
			
				|  |  | +        // 根据坐标生成唯一key,重复则增加后缀直至不重复
 | 
	
		
			
				|  |  | +        let key = `${cell.r}-${cell.c}`;
 | 
	
		
			
				|  |  | +        while (allCell[key]) {
 | 
	
		
			
				|  |  | +          key += '|c';
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        cell.v.cid = key;
 | 
	
		
			
				|  |  | +        allCell[key] = cell;
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +      sheet.celldata = Object.values(allCell);
 | 
	
		
			
				|  |  |      });
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      return data;
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  
 |