|  | @@ -354,7 +354,7 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                      return;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  // 未改变值则不提交
 | 
	
		
			
				|  |  | -                const validText = is_numeric(info.editingText) ? parseFloat(info.editingText) : (info.editingText ? trimInvalidChar(info.editingText) : null);
 | 
	
		
			
				|  |  | +                let validText = is_numeric(info.editingText) ? parseFloat(info.editingText) : (info.editingText ? trimInvalidChar(info.editingText) : null);
 | 
	
		
			
				|  |  |                  const orgValue = select[col.field];
 | 
	
		
			
				|  |  |                  if (orgValue == validText || ((!orgValue || orgValue === '') && (validText === ''))) {
 | 
	
		
			
				|  |  |                      SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
	
		
			
				|  | @@ -367,11 +367,13 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                          SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  |                          return;
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    const num = parseFloat(validText);
 | 
	
		
			
				|  |  | +                    let num = parseFloat(validText);
 | 
	
		
			
				|  |  |                      if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
 | 
	
		
			
				|  |  | -                        toastr.error('请输入大于0并且小于3位小数的浮点数');
 | 
	
		
			
				|  |  | -                        SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  | -                        return;
 | 
	
		
			
				|  |  | +                        toastr.warning('已保留3位小数');
 | 
	
		
			
				|  |  | +                        validText = ZhCalc.round(num, 3);
 | 
	
		
			
				|  |  | +                        // toastr.error('请输入大于0并且小于3位小数的浮点数');
 | 
	
		
			
				|  |  | +                        // SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  | +                        // return;
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  if (col.field === 'msg_tp') {
 | 
	
	
		
			
				|  | @@ -382,9 +384,11 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      const num = parseFloat(validText);
 | 
	
		
			
				|  |  |                      if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
 | 
	
		
			
				|  |  | -                        toastr.error('请输入大于0并且小于3位小数的浮点数');
 | 
	
		
			
				|  |  | -                        SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  | -                        return;
 | 
	
		
			
				|  |  | +                        toastr.warning('已保留3位小数');
 | 
	
		
			
				|  |  | +                        validText = ZhCalc.round(num, 3);
 | 
	
		
			
				|  |  | +                        // toastr.error('请输入大于0并且小于3位小数的浮点数');
 | 
	
		
			
				|  |  | +                        // SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  | +                        // return;
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  if (col.field === 'm_up_risk') {
 | 
	
	
		
			
				|  | @@ -482,7 +486,7 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                  codeError: {type: 'error', msg: '编号为纯数字时,不能为小数'},
 | 
	
		
			
				|  |  |                  numberExpr: {type: 'error', msg: '不能粘贴其它非数字类型字符'},
 | 
	
		
			
				|  |  |                  riskCan: {type: 'error', msg: '只能粘贴0-100的正整数'},
 | 
	
		
			
				|  |  | -                numberCan: {type: 'error', msg: '请粘贴大于0并且小于3位小数的浮点数'},
 | 
	
		
			
				|  |  | +                numberCan: {type: 'warning', msg: '已保留3位小数'},
 | 
	
		
			
				|  |  |              };
 | 
	
		
			
				|  |  |              const range = info.cellRange;
 | 
	
		
			
				|  |  |              const sortData = info.sheet.zh_data || [];
 | 
	
	
		
			
				|  | @@ -553,8 +557,9 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                          if (colSetting.field === 'basic_price' || colSetting.field === 'msg_tp') {
 | 
	
		
			
				|  |  |                              if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
 | 
	
		
			
				|  |  |                                  toastMessageUniq(getPasteHint(hint.numberCan, hintRow));
 | 
	
		
			
				|  |  | -                                bPaste = false;
 | 
	
		
			
				|  |  | -                                continue;
 | 
	
		
			
				|  |  | +                                validText = ZhCalc.round(num, 3);
 | 
	
		
			
				|  |  | +                                // bPaste = false;
 | 
	
		
			
				|  |  | +                                // continue;
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  |                          } else if (colSetting.field === 'm_up_risk' || colSetting.field === 'm_down_risk') {
 | 
	
		
			
				|  |  |                              if (validText !== null && (num < 0 || num > 100 || !/^\d+$/.test(num))) {
 | 
	
	
		
			
				|  | @@ -753,7 +758,7 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                  const select = SpreadJsObj.getSelectObject(info.sheet);
 | 
	
		
			
				|  |  |                  const col = info.sheet.zh_setting.cols[info.col];
 | 
	
		
			
				|  |  |                  // 未改变值则不提交
 | 
	
		
			
				|  |  | -                const validText = is_numeric(info.editingText) ? parseFloat(info.editingText) : (info.editingText ? trimInvalidChar(info.editingText) : null);
 | 
	
		
			
				|  |  | +                let validText = is_numeric(info.editingText) ? parseFloat(info.editingText) : (info.editingText ? trimInvalidChar(info.editingText) : null);
 | 
	
		
			
				|  |  |                  const orgValue = select[col.field];
 | 
	
		
			
				|  |  |                  if (orgValue == validText || ((!orgValue || orgValue === '') && (validText === ''))) {
 | 
	
		
			
				|  |  |                      SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
	
		
			
				|  | @@ -778,9 +783,11 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      const num = parseFloat(validText);
 | 
	
		
			
				|  |  |                      if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
 | 
	
		
			
				|  |  | -                        toastr.error('请输入大于0并且小于3位小数的浮点数');
 | 
	
		
			
				|  |  | -                        SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  | -                        return;
 | 
	
		
			
				|  |  | +                        // toastr.error('请输入大于0并且小于3位小数的浮点数');
 | 
	
		
			
				|  |  | +                        // SpreadJsObj.reLoadRowData(info.sheet, info.row);
 | 
	
		
			
				|  |  | +                        // return;
 | 
	
		
			
				|  |  | +                        toastr.warning('已保留3位小数');
 | 
	
		
			
				|  |  | +                        validText = ZhCalc.round(num, 3);
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      select[col.field] = validText;
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -834,7 +841,7 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |              const hint = {
 | 
	
		
			
				|  |  |                  cellError: {type: 'error', msg: '粘贴内容超出了表格范围'},
 | 
	
		
			
				|  |  |                  numberExpr: {type: 'error', msg: '不能粘贴其它非数字类型字符'},
 | 
	
		
			
				|  |  | -                numberCan: {type: 'error', msg: '请粘贴大于0并且小于3位小数的浮点数'},
 | 
	
		
			
				|  |  | +                numberCan: {type: 'warning', msg: '已保留3位小数'},
 | 
	
		
			
				|  |  |              };
 | 
	
		
			
				|  |  |              const range = info.cellRange;
 | 
	
		
			
				|  |  |              const sortData = info.sheet.zh_data || [];
 | 
	
	
		
			
				|  | @@ -884,8 +891,9 @@ $(document).ready(() => {
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |                          if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
 | 
	
		
			
				|  |  |                              toastMessageUniq(getPasteHint(hint.numberCan, hintRow));
 | 
	
		
			
				|  |  | -                            bPaste = false;
 | 
	
		
			
				|  |  | -                            continue;
 | 
	
		
			
				|  |  | +                            validText = ZhCalc.round(num, 3);
 | 
	
		
			
				|  |  | +                            // bPaste = false;
 | 
	
		
			
				|  |  | +                            // continue;
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      materialMonthData[colSetting.field] = validText;
 |