瀏覽代碼

增加导出类型视图,追加Double类型的处理方式和定义

增加是否动态构建和追加图形导出属性,用于图形定义
4.1.3.A
xfworld 9 年之前
父節點
當前提交
77e0192d87
共有 4 個檔案被更改,包括 104 行新增7 行删除
  1. +28
    -1
      easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/ExportParams.java
  2. +3
    -1
      easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/params/ExcelBaseEntity.java
  3. +18
    -0
      easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/vo/BaseEntityTypeConstants.java
  4. +55
    -5
      easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExcelExportBase.java

+ 28
- 1
easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/ExportParams.java 查看文件

@@ -86,7 +86,14 @@ public class ExportParams extends ExcelBaseParams {
* 是否创建表头
*/
private boolean isCreateHeadRows = true;
/**
* 是否动态获取数据
*/
private boolean isDynamicData = false;
/**
* 是否追加图形
*/
private boolean isAppendGraph = true;
public ExportParams() {
}
@@ -220,4 +227,24 @@ public class ExportParams extends ExcelBaseParams {
this.isCreateHeadRows = isCreateHeadRows;
}
public boolean isDynamicData()
{
return isDynamicData;
}
public void setDynamicData(boolean isDynamicData)
{
this.isDynamicData = isDynamicData;
}
public boolean isAppendGraph()
{
return isAppendGraph;
}
public void setAppendGraph(boolean isAppendGraph)
{
this.isAppendGraph = isAppendGraph;
}
}

+ 3
- 1
easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/params/ExcelBaseEntity.java 查看文件

@@ -18,6 +18,8 @@ package org.jeecgframework.poi.excel.entity.params;
import java.lang.reflect.Method;
import java.util.List;
import org.jeecgframework.poi.excel.entity.vo.BaseEntityTypeConstants;
/**
* Excel 导入导出基础对象类
* @author JueYue
@@ -31,7 +33,7 @@ public class ExcelBaseEntity {
/**
* 对应type
*/
private int type = 1;
private int type = BaseEntityTypeConstants.StringType;
/**
* 数据库格式
*/


+ 18
- 0
easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/vo/BaseEntityTypeConstants.java 查看文件

@@ -0,0 +1,18 @@
/**
*
*/
package org.jeecgframework.poi.excel.entity.vo;

/**
* @author xfworld
* @since 2015-12-28
* @version 1.0
* @see org.jeecgframework.poi.excel.entity.vo.BaseEntityTypeConstants
*
*/
public interface BaseEntityTypeConstants
{
public final static Integer StringType =1;
public final static Integer DoubleType =10;
public final static Integer ImageType = 3;
}

+ 55
- 5
easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExcelExportBase.java 查看文件

@@ -44,6 +44,7 @@ import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
import org.apache.poi.xssf.usermodel.XSSFRichTextString;
import org.jeecgframework.poi.excel.entity.enmus.ExcelType;
import org.jeecgframework.poi.excel.entity.params.ExcelExportEntity;
import org.jeecgframework.poi.excel.entity.vo.BaseEntityTypeConstants;
import org.jeecgframework.poi.excel.entity.vo.PoiBaseConstants;
import org.jeecgframework.poi.excel.export.styler.IExcelExportStyler;
import org.jeecgframework.poi.util.PoiMergeCellUtil;
@@ -106,7 +107,7 @@ public abstract class ExcelExportBase extends ExportBase {
}
} else {
Object value = getCellValue(entity, t);
if (entity.getType() == 1) {
if (entity.getType() == BaseEntityTypeConstants.StringType) {
createStringCell(row, cellNum++, value == null ? "" : value.toString(),
index % 2 == 0 ? getStyles(false, entity) : getStyles(true, entity),
entity);
@@ -116,7 +117,19 @@ public abstract class ExcelExportBase extends ExportBase {
row.getSheet().getWorkbook().getCreationHelper(), t,
entity.getName(), value));
}
} else {
}
else if(entity.getType() == BaseEntityTypeConstants.DoubleType)
{
createDoubleCell(row, cellNum++, value == null ? "" : value.toString(),
index % 2 == 0 ? getStyles(false, entity) : getStyles(true, entity),
entity);
if (entity.isHyperlink()) {
row.getCell(cellNum - 1)
.setHyperlink(dataHanlder.getHyperlink(
row.getSheet().getWorkbook().getCreationHelper(), t,
entity.getName(), value));
}
}else {
createImageCell(patriarch, entity, row, cellNum++,
value == null ? "" : value.toString(), t);
}
@@ -227,7 +240,7 @@ public abstract class ExcelExportBase extends ExportBase {
for (int k = 0, paramSize = excelParams.size(); k < paramSize; k++) {
entity = excelParams.get(k);
Object value = getCellValue(entity, obj);
if (entity.getType() == 1) {
if (entity.getType() == BaseEntityTypeConstants.StringType) {
createStringCell(row, cellNum++, value == null ? "" : value.toString(),
row.getRowNum() % 2 == 0 ? getStyles(false, entity) : getStyles(true, entity),
entity);
@@ -237,7 +250,19 @@ public abstract class ExcelExportBase extends ExportBase {
row.getSheet().getWorkbook().getCreationHelper(), obj, entity.getName(),
value));
}
} else {
}
else if(entity.getType() == BaseEntityTypeConstants.DoubleType)
{
createDoubleCell(row, cellNum++, value == null ? "" : value.toString(),
index % 2 == 0 ? getStyles(false, entity) : getStyles(true, entity),
entity);
if (entity.isHyperlink()) {
row.getCell(cellNum - 1)
.setHyperlink(dataHanlder.getHyperlink(
row.getSheet().getWorkbook().getCreationHelper(),obj,
entity.getName(), value));
}
}else {
createImageCell(patriarch, entity, row, cellNum++,
value == null ? "" : value.toString(), obj);
}
@@ -273,7 +298,32 @@ public abstract class ExcelExportBase extends ExportBase {
}
addStatisticsData(index, text, entity);
}
/**
* 创建数字类型的Cell
*
* @param row
* @param index
* @param text
* @param style
* @param entity
*/
public void createDoubleCell(Row row, int index, String text, CellStyle style,
ExcelExportEntity entity) {
Cell cell = row.createCell(index);
if(text!=null&&text.length()>0){
cell.setCellValue(Double.parseDouble(text));
}else{
cell.setCellValue(-1);
}
cell.setCellType(Cell.CELL_TYPE_NUMERIC);
if (style != null) {
cell.setCellStyle(style);
}
addStatisticsData(index, text, entity);
}
/**
* 创建统计行
* @param styles


Loading…
取消
儲存