| 
					
				 | 
			
			
				@@ -236,38 +236,53 @@ $(document).ready(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (sheet.zh_setting && sheet.zh_data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 const sel = sheet.getSelections()[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (!sel) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                const col = sheet.zh_setting.cols[sel.col]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                const select = SpreadJsObj.getSelectObject(sheet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                const orgValue = select[col.field]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (sel.colCount > 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    toastr.warning('请勿同时删除多列数据'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (orgValue === null || col.field === 'type' || col.field === 'is_summary') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (col.field === 'weight_num') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(materialExponentCol.readOnly.isConstant(select)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                const sortData = sheet.zh_data || []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                const data = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for (let iRow = sel.row; iRow < sel.row + sel.rowCount; iRow++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // let bPaste = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    const exData = sortData[iRow]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    const materialExData = { id: sortData[iRow].id }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    for (let iCol = 0; iCol < sel.colCount; iCol++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        const curCol = sel.col + iCol; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        const colSetting = sheet.zh_setting.cols[curCol]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (!colSetting) continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        const orgValue = sortData[iRow][colSetting.field]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if(orgValue === null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            // bPaste = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (exData.type === materialType.ex_type[0].value && colSetting.field !== 'weight_num') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            // bPaste = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (colSetting.field === 'type' || colSetting.field === 'calc_num' || colSetting.field === 'is_summary'){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            // bPaste = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        materialExData[colSetting.field] = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        sortData[iRow][colSetting.field] = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(materialExponentCol.readOnly.isEdit(select)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (exData.type !== materialType.ex_type[0].value) materialExData.calc_num = materialExponentCol.getValue.calc_num(sortData[iRow]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    const arr = Object.keys(materialExData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (arr.length !== 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        data.push(materialExData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                select[col.field] = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                select.calc_num = materialExponentCol.getValue.calc_num(select); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                // console.log(select); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (data.length === 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    SpreadJsObj.reLoadSheetData(sheet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // console.log(data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 更新至服务器 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                postData(window.location.pathname + '/save', { type:'update', updateData: select }, function (result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                postData(window.location.pathname + '/save', { type:'paste', updateData: data }, function (result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    materialExponentData = result.info; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    SpreadJsObj.loadSheetData(materialExponentSpread.getActiveSheet(), SpreadJsObj.DataType.Data, materialExponentData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     ex_tp = result.ex_tp; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     ex_expr = result.ex_expr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     resetExTpTable(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    SpreadJsObj.reLoadRowData(sheet, sel.row); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    materialExponentData.splice(sel.row, 1, select); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }, function () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    select[col.field] = orgValue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    SpreadJsObj.reLoadRowData(sheet, sel.row); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    SpreadJsObj.reLoadSheetData(sheet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -344,7 +359,6 @@ $(document).ready(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         const total_weight = ZhCalc.add(ZhCalc.sub(_.sumBy(materialExponentData, 'weight_num'), parseFloat(orgValue)), num); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        console.log(total_weight, _.sumBy(materialExponentData, 'weight_num'), orgValue, num); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (total_weight > 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             toastMessageUniq(getPasteHint(hint.weightNumberCan, hintRow)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             bPaste = false; 
			 |