|
|
|
@ -53,7 +53,7 @@ import com.ruoyi.common.utils.reflect.ReflectUtils;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Excel相关处理
|
|
|
|
* Excel相关处理
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @author ruoyi
|
|
|
|
* @author ruoyi
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public class ExcelUtil<T>
|
|
|
|
public class ExcelUtil<T>
|
|
|
|
@ -125,8 +125,8 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 对excel表单默认第一个索引名转换成list
|
|
|
|
* 对excel表单默认第一个索引名转换成list
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param input 输入流
|
|
|
|
* @param is 输入流
|
|
|
|
* @return 转换后集合
|
|
|
|
* @return 转换后集合
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public List<T> importExcel(InputStream is) throws Exception
|
|
|
|
public List<T> importExcel(InputStream is) throws Exception
|
|
|
|
@ -136,9 +136,9 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 对excel表单指定表格索引名转换成list
|
|
|
|
* 对excel表单指定表格索引名转换成list
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param sheetName 表格索引名
|
|
|
|
* @param sheetName 表格索引名
|
|
|
|
* @param input 输入流
|
|
|
|
* @param is 输入流
|
|
|
|
* @return 转换后集合
|
|
|
|
* @return 转换后集合
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public List<T> importExcel(String sheetName, InputStream is) throws Exception
|
|
|
|
public List<T> importExcel(String sheetName, InputStream is) throws Exception
|
|
|
|
@ -281,7 +281,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 对list数据源将其里面的数据导入到excel表单
|
|
|
|
* 对list数据源将其里面的数据导入到excel表单
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param list 导出数据集合
|
|
|
|
* @param list 导出数据集合
|
|
|
|
* @param sheetName 工作表的名称
|
|
|
|
* @param sheetName 工作表的名称
|
|
|
|
* @return 结果
|
|
|
|
* @return 结果
|
|
|
|
@ -294,7 +294,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 对list数据源将其里面的数据导入到excel表单
|
|
|
|
* 对list数据源将其里面的数据导入到excel表单
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param sheetName 工作表的名称
|
|
|
|
* @param sheetName 工作表的名称
|
|
|
|
* @return 结果
|
|
|
|
* @return 结果
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
@ -306,7 +306,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 对list数据源将其里面的数据导入到excel表单
|
|
|
|
* 对list数据源将其里面的数据导入到excel表单
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @return 结果
|
|
|
|
* @return 结果
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public AjaxResult exportExcel()
|
|
|
|
public AjaxResult exportExcel()
|
|
|
|
@ -373,10 +373,9 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 填充excel数据
|
|
|
|
* 填充excel数据
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param index 序号
|
|
|
|
* @param index 序号
|
|
|
|
* @param row 单元格行
|
|
|
|
* @param row 单元格行
|
|
|
|
* @param cell 类型单元格
|
|
|
|
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public void fillExcelData(int index, Row row)
|
|
|
|
public void fillExcelData(int index, Row row)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
@ -401,7 +400,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 创建表格样式
|
|
|
|
* 创建表格样式
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param wb 工作薄对象
|
|
|
|
* @param wb 工作薄对象
|
|
|
|
* @return 样式列表
|
|
|
|
* @return 样式列表
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
@ -459,7 +458,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 设置单元格信息
|
|
|
|
* 设置单元格信息
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param value 单元格值
|
|
|
|
* @param value 单元格值
|
|
|
|
* @param attr 注解相关
|
|
|
|
* @param attr 注解相关
|
|
|
|
* @param cell 单元格信息
|
|
|
|
* @param cell 单元格信息
|
|
|
|
@ -552,7 +551,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 设置 POI XSSFSheet 单元格提示
|
|
|
|
* 设置 POI XSSFSheet 单元格提示
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param sheet 表单
|
|
|
|
* @param sheet 表单
|
|
|
|
* @param promptTitle 提示标题
|
|
|
|
* @param promptTitle 提示标题
|
|
|
|
* @param promptContent 提示内容
|
|
|
|
* @param promptContent 提示内容
|
|
|
|
@ -562,7 +561,7 @@ public class ExcelUtil<T>
|
|
|
|
* @param endCol 结束列
|
|
|
|
* @param endCol 结束列
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public void setXSSFPrompt(Sheet sheet, String promptTitle, String promptContent, int firstRow, int endRow,
|
|
|
|
public void setXSSFPrompt(Sheet sheet, String promptTitle, String promptContent, int firstRow, int endRow,
|
|
|
|
int firstCol, int endCol)
|
|
|
|
int firstCol, int endCol)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
DataValidationHelper helper = sheet.getDataValidationHelper();
|
|
|
|
DataValidationHelper helper = sheet.getDataValidationHelper();
|
|
|
|
DataValidationConstraint constraint = helper.createCustomConstraint("DD1");
|
|
|
|
DataValidationConstraint constraint = helper.createCustomConstraint("DD1");
|
|
|
|
@ -575,7 +574,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 设置某些列的值只能输入预制的数据,显示下拉框.
|
|
|
|
* 设置某些列的值只能输入预制的数据,显示下拉框.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param sheet 要设置的sheet.
|
|
|
|
* @param sheet 要设置的sheet.
|
|
|
|
* @param textlist 下拉框显示的内容
|
|
|
|
* @param textlist 下拉框显示的内容
|
|
|
|
* @param firstRow 开始行
|
|
|
|
* @param firstRow 开始行
|
|
|
|
@ -609,7 +608,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 解析导出值 0=男,1=女,2=未知
|
|
|
|
* 解析导出值 0=男,1=女,2=未知
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param propertyValue 参数值
|
|
|
|
* @param propertyValue 参数值
|
|
|
|
* @param converterExp 翻译注解
|
|
|
|
* @param converterExp 翻译注解
|
|
|
|
* @return 解析后值
|
|
|
|
* @return 解析后值
|
|
|
|
@ -638,7 +637,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 反向解析值 男=0,女=1,未知=2
|
|
|
|
* 反向解析值 男=0,女=1,未知=2
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param propertyValue 参数值
|
|
|
|
* @param propertyValue 参数值
|
|
|
|
* @param converterExp 翻译注解
|
|
|
|
* @param converterExp 翻译注解
|
|
|
|
* @return 解析后值
|
|
|
|
* @return 解析后值
|
|
|
|
@ -676,7 +675,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 获取下载路径
|
|
|
|
* 获取下载路径
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param filename 文件名称
|
|
|
|
* @param filename 文件名称
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public String getAbsoluteFile(String filename)
|
|
|
|
public String getAbsoluteFile(String filename)
|
|
|
|
@ -692,7 +691,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 获取bean中的属性值
|
|
|
|
* 获取bean中的属性值
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param vo 实体对象
|
|
|
|
* @param vo 实体对象
|
|
|
|
* @param field 字段
|
|
|
|
* @param field 字段
|
|
|
|
* @param excel 注解
|
|
|
|
* @param excel 注解
|
|
|
|
@ -723,7 +722,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 以类的属性的get方法方法形式获取值
|
|
|
|
* 以类的属性的get方法方法形式获取值
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param o
|
|
|
|
* @param o
|
|
|
|
* @param name
|
|
|
|
* @param name
|
|
|
|
* @return value
|
|
|
|
* @return value
|
|
|
|
@ -792,8 +791,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 创建工作表
|
|
|
|
* 创建工作表
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param sheetName,指定Sheet名称
|
|
|
|
|
|
|
|
* @param sheetNo sheet数量
|
|
|
|
* @param sheetNo sheet数量
|
|
|
|
* @param index 序号
|
|
|
|
* @param index 序号
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
@ -814,7 +812,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 获取单元格值
|
|
|
|
* 获取单元格值
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param row 获取的行
|
|
|
|
* @param row 获取的行
|
|
|
|
* @param column 获取单元格列号
|
|
|
|
* @param column 获取单元格列号
|
|
|
|
* @return 单元格值
|
|
|
|
* @return 单元格值
|
|
|
|
@ -871,4 +869,4 @@ public class ExcelUtil<T>
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return val;
|
|
|
|
return val;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|