excel 导入数字不需要格式化 ,导入允许列和属性个数不一致。
This commit is contained in:
		
							parent
							
								
									be778ba370
								
							
						
					
					
						commit
						8dd3ca5bb6
					
				| 
						 | 
					@ -8,7 +8,6 @@ import java.io.OutputStream;
 | 
				
			||||||
import java.lang.reflect.Field;
 | 
					import java.lang.reflect.Field;
 | 
				
			||||||
import java.lang.reflect.Method;
 | 
					import java.lang.reflect.Method;
 | 
				
			||||||
import java.math.BigDecimal;
 | 
					import java.math.BigDecimal;
 | 
				
			||||||
import java.text.DecimalFormat;
 | 
					 | 
				
			||||||
import java.util.ArrayList;
 | 
					import java.util.ArrayList;
 | 
				
			||||||
import java.util.Arrays;
 | 
					import java.util.Arrays;
 | 
				
			||||||
import java.util.Comparator;
 | 
					import java.util.Comparator;
 | 
				
			||||||
| 
						 | 
					@ -18,6 +17,7 @@ import java.util.List;
 | 
				
			||||||
import java.util.Map;
 | 
					import java.util.Map;
 | 
				
			||||||
import java.util.UUID;
 | 
					import java.util.UUID;
 | 
				
			||||||
import java.util.stream.Collectors;
 | 
					import java.util.stream.Collectors;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
 | 
					import org.apache.poi.hssf.usermodel.HSSFDateUtil;
 | 
				
			||||||
import org.apache.poi.ss.usermodel.BorderStyle;
 | 
					import org.apache.poi.ss.usermodel.BorderStyle;
 | 
				
			||||||
import org.apache.poi.ss.usermodel.Cell;
 | 
					import org.apache.poi.ss.usermodel.Cell;
 | 
				
			||||||
| 
						 | 
					@ -41,6 +41,7 @@ import org.apache.poi.xssf.streaming.SXSSFWorkbook;
 | 
				
			||||||
import org.apache.poi.xssf.usermodel.XSSFDataValidation;
 | 
					import org.apache.poi.xssf.usermodel.XSSFDataValidation;
 | 
				
			||||||
import org.slf4j.Logger;
 | 
					import org.slf4j.Logger;
 | 
				
			||||||
import org.slf4j.LoggerFactory;
 | 
					import org.slf4j.LoggerFactory;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import com.ruoyi.common.annotation.Excel;
 | 
					import com.ruoyi.common.annotation.Excel;
 | 
				
			||||||
import com.ruoyi.common.annotation.Excel.ColumnType;
 | 
					import com.ruoyi.common.annotation.Excel.ColumnType;
 | 
				
			||||||
import com.ruoyi.common.annotation.Excel.Type;
 | 
					import com.ruoyi.common.annotation.Excel.Type;
 | 
				
			||||||
| 
						 | 
					@ -200,9 +201,11 @@ public class ExcelUtil<T>
 | 
				
			||||||
                    // 设置类的私有字段属性可访问.
 | 
					                    // 设置类的私有字段属性可访问.
 | 
				
			||||||
                    field.setAccessible(true);
 | 
					                    field.setAccessible(true);
 | 
				
			||||||
                    Integer column = cellMap.get(attr.name());
 | 
					                    Integer column = cellMap.get(attr.name());
 | 
				
			||||||
 | 
					                    if(column !=null ) { // 字段在excel 中没有,那么就不需要设置值
 | 
				
			||||||
                    	fieldsMap.put(column, field);
 | 
					                    	fieldsMap.put(column, field);
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
            for (int i = 1; i < rows; i++)
 | 
					            for (int i = 1; i < rows; i++)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                // 从第2行开始取数据,默认第一行是表头.
 | 
					                // 从第2行开始取数据,默认第一行是表头.
 | 
				
			||||||
| 
						 | 
					@ -875,14 +878,15 @@ public class ExcelUtil<T>
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                    else
 | 
					                    else
 | 
				
			||||||
                    {
 | 
					                    {
 | 
				
			||||||
                        if ((Double) val % 1 > 0)
 | 
											/* if ((Double) val % 1 > 0)
 | 
				
			||||||
						{
 | 
											{
 | 
				
			||||||
						    val = new DecimalFormat("0.00").format(val);
 | 
											    val = new DecimalFormat("0.00").format(val);
 | 
				
			||||||
						}
 | 
											}
 | 
				
			||||||
						else
 | 
											else
 | 
				
			||||||
						{
 | 
											{
 | 
				
			||||||
						    val = new DecimalFormat("0").format(val);
 | 
											    val = new DecimalFormat("0").format(val);
 | 
				
			||||||
                        }
 | 
											}*/
 | 
				
			||||||
 | 
					                    	val = new BigDecimal(val.toString()); // 导入的数据保证原汁原味,不做处理
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
                else if (cell.getCellTypeEnum() == CellType.STRING)
 | 
					                else if (cell.getCellTypeEnum() == CellType.STRING)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue