|
@@ -9,6 +9,9 @@ import com.caimei.utils.MathUtil;
|
|
|
import com.thinkgem.jeesite.common.utils.DateUtils;
|
|
|
import org.apache.poi.hssf.usermodel.*;
|
|
|
import org.apache.poi.hssf.util.HSSFColor;
|
|
|
+import org.apache.poi.ss.usermodel.BorderStyle;
|
|
|
+import org.apache.poi.ss.usermodel.HorizontalAlignment;
|
|
|
+import org.apache.poi.ss.usermodel.VerticalAlignment;
|
|
|
import org.apache.poi.ss.util.CellRangeAddress;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
@@ -51,8 +54,8 @@ public class PoiExcelUtil {
|
|
|
headfont.setFontHeightInPoints((short) 22);// 字体大小
|
|
|
HSSFCellStyle headstyle = workbook.createCellStyle();
|
|
|
headstyle.setFont(headfont);
|
|
|
- headstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- headstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ headstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ headstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
headstyle.setLocked(true);
|
|
|
// 表头客户名 订单号 客户电话 客户地址 样式
|
|
|
HSSFFont datefont = workbook.createFont();
|
|
@@ -60,35 +63,35 @@ public class PoiExcelUtil {
|
|
|
datefont.setFontHeightInPoints((short) 12);// 字体大小
|
|
|
HSSFCellStyle datestyle = workbook.createCellStyle();
|
|
|
datestyle.setFont(datefont);
|
|
|
- datestyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- datestyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ datestyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ datestyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
datestyle.setLocked(true);
|
|
|
// 列名样式
|
|
|
HSSFFont font = workbook.createFont();
|
|
|
font.setFontName("黑体");
|
|
|
font.setFontHeightInPoints((short) 12);// 字体大小
|
|
|
HSSFCellStyle style = workbook.createCellStyle();
|
|
|
- style.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- style.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- style.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- style.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
+ style.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ style.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ style.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ style.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
style.setFont(font);
|
|
|
- style.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ style.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ style.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
style.setLocked(true);
|
|
|
// 普通单元格样式(中文)
|
|
|
HSSFFont font2 = workbook.createFont();
|
|
|
font2.setFontName("宋体");
|
|
|
font2.setFontHeightInPoints((short) 12);
|
|
|
HSSFCellStyle style2 = workbook.createCellStyle();
|
|
|
- style2.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- style2.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- style2.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- style2.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
+ style2.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ style2.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ style2.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ style2.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
style2.setFont(font2);
|
|
|
- style2.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
+ style2.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
style2.setWrapText(true); // 换行
|
|
|
- style2.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ style2.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
|
|
|
// 应付 带颜色单元格样式
|
|
|
HSSFCellStyle yfstyle = workbook.createCellStyle();
|
|
@@ -97,12 +100,12 @@ public class PoiExcelUtil {
|
|
|
yffont.setFontHeightInPoints((short) 12);
|
|
|
yffont.setColor(HSSFColor.RED.index);
|
|
|
yfstyle.setFont(yffont);
|
|
|
- yfstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- yfstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- yfstyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- yfstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
- yfstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- yfstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ yfstyle.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ yfstyle.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ yfstyle.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ yfstyle.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
+ yfstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ yfstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
yfstyle.setWrapText(true); // 换行
|
|
|
|
|
|
// 合计 带颜色单元格样式
|
|
@@ -112,12 +115,12 @@ public class PoiExcelUtil {
|
|
|
hjfont.setFontHeightInPoints((short) 12);
|
|
|
hjfont.setColor(HSSFColor.BLUE.index);
|
|
|
hjstyle.setFont(hjfont);
|
|
|
- hjstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- hjstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- hjstyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- hjstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
- hjstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- hjstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ hjstyle.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ hjstyle.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ hjstyle.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ hjstyle.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
+ hjstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ hjstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
hjstyle.setWrapText(true); // 换行
|
|
|
|
|
|
// 已收
|
|
@@ -127,12 +130,12 @@ public class PoiExcelUtil {
|
|
|
ysfont.setFontHeightInPoints((short) 12);
|
|
|
ysfont.setColor(HSSFColor.GREEN.index);
|
|
|
ysstyle.setFont(ysfont);
|
|
|
- ysstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- ysstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- ysstyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- ysstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
- ysstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- ysstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ ysstyle.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ ysstyle.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ ysstyle.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ ysstyle.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
+ ysstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ ysstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
ysstyle.setWrapText(true); // 换行
|
|
|
|
|
|
//列宽度 设为自适应
|
|
@@ -500,8 +503,8 @@ public class PoiExcelUtil {
|
|
|
headfont.setFontHeightInPoints((short) 22);// 字体大小
|
|
|
HSSFCellStyle headstyle = workbook.createCellStyle();
|
|
|
headstyle.setFont(headfont);
|
|
|
- headstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- headstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ headstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ headstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
headstyle.setLocked(true);
|
|
|
// 表头客户名 订单号 客户电话 客户地址 样式
|
|
|
HSSFFont datefont = workbook.createFont();
|
|
@@ -509,35 +512,35 @@ public class PoiExcelUtil {
|
|
|
datefont.setFontHeightInPoints((short) 12);// 字体大小
|
|
|
HSSFCellStyle datestyle = workbook.createCellStyle();
|
|
|
datestyle.setFont(datefont);
|
|
|
- datestyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- datestyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ datestyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ datestyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
datestyle.setLocked(true);
|
|
|
// 列名样式
|
|
|
HSSFFont font = workbook.createFont();
|
|
|
font.setFontName("黑体");
|
|
|
font.setFontHeightInPoints((short) 12);// 字体大小
|
|
|
HSSFCellStyle style = workbook.createCellStyle();
|
|
|
- style.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- style.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- style.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- style.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
+ style.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ style.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ style.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ style.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
style.setFont(font);
|
|
|
- style.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ style.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ style.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
style.setLocked(true);
|
|
|
// 普通单元格样式(中文)
|
|
|
HSSFFont font2 = workbook.createFont();
|
|
|
font2.setFontName("宋体");
|
|
|
font2.setFontHeightInPoints((short) 12);
|
|
|
HSSFCellStyle style2 = workbook.createCellStyle();
|
|
|
- style2.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- style2.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- style2.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- style2.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
+ style2.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ style2.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ style2.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ style2.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
style2.setFont(font2);
|
|
|
- style2.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
+ style2.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
style2.setWrapText(true); // 换行
|
|
|
- style2.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ style2.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
|
|
|
// 应付 带颜色单元格样式
|
|
|
HSSFCellStyle yfstyle = workbook.createCellStyle();
|
|
@@ -546,12 +549,12 @@ public class PoiExcelUtil {
|
|
|
yffont.setFontHeightInPoints((short) 12);
|
|
|
yffont.setColor(HSSFColor.RED.index);
|
|
|
yfstyle.setFont(yffont);
|
|
|
- yfstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- yfstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- yfstyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- yfstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
- yfstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- yfstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ yfstyle.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ yfstyle.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ yfstyle.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ yfstyle.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
+ yfstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ yfstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
yfstyle.setWrapText(true); // 换行
|
|
|
|
|
|
// 合计 带颜色单元格样式
|
|
@@ -561,14 +564,14 @@ public class PoiExcelUtil {
|
|
|
hjfont.setFontHeightInPoints((short) 12);
|
|
|
hjfont.setColor(HSSFColor.BLUE.index);
|
|
|
hjstyle.setFont(hjfont);
|
|
|
- hjstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- hjstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- hjstyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- hjstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
- hjstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- hjstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ hjstyle.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ hjstyle.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ hjstyle.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ hjstyle.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
+ hjstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ hjstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
hjstyle.setWrapText(true); // 换行
|
|
|
-
|
|
|
+
|
|
|
// 已收
|
|
|
HSSFCellStyle ysstyle = workbook.createCellStyle();
|
|
|
HSSFFont ysfont = workbook.createFont();
|
|
@@ -576,12 +579,12 @@ public class PoiExcelUtil {
|
|
|
ysfont.setFontHeightInPoints((short) 12);
|
|
|
ysfont.setColor(HSSFColor.GREEN.index);
|
|
|
ysstyle.setFont(ysfont);
|
|
|
- ysstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
|
|
|
- ysstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
|
|
|
- ysstyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
|
|
|
- ysstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
|
|
|
- ysstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
|
|
|
- ysstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
|
|
|
+ ysstyle.setBorderBottom(BorderStyle.THIN); //下边框
|
|
|
+ ysstyle.setBorderLeft(BorderStyle.THIN);//左边框
|
|
|
+ ysstyle.setBorderTop(BorderStyle.THIN);//上边框
|
|
|
+ ysstyle.setBorderRight(BorderStyle.THIN);//右边框
|
|
|
+ ysstyle.setAlignment(HorizontalAlignment.CENTER);// 左右居中
|
|
|
+ ysstyle.setVerticalAlignment(VerticalAlignment.CENTER);// 上下居中
|
|
|
ysstyle.setWrapText(true); // 换行
|
|
|
|
|
|
//列宽度 设为自适应
|
|
@@ -732,8 +735,8 @@ public class PoiExcelUtil {
|
|
|
// //设置shouldPay 列属性值
|
|
|
// CellUtil.setCellValue(cell, Double.parseDouble(getFieldValue(orderProductList.get(i), colName[j]).toString()));
|
|
|
// }else {
|
|
|
- //设置shouldPay 列属性值
|
|
|
- CellUtil.setCellValue(cell, getFieldValue(orderProductList.get(i), colName[j]),"");
|
|
|
+ //设置shouldPay 列属性值
|
|
|
+ CellUtil.setCellValue(cell, getFieldValue(orderProductList.get(i), colName[j]),"");
|
|
|
// }
|
|
|
}
|
|
|
}
|