Explorar el Código

更新下邮箱,翻墙太麻烦了

4.1.3.A
jueyue hace 7 años
padre
commit
fccdc08f04
Se han modificado 3 ficheros con 29 adiciones y 29 borrados
  1. +1
    -1
      README.md
  2. +27
    -27
      easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/CellValueService.java
  3. +1
    -1
      pom.xml

+ 1
- 1
README.md Ver fichero

@@ -7,7 +7,7 @@ EasyPoi Excel和 Word简易工具类
语言(熟悉的表达式语法),完成以前复杂的写法
官网: http://www.afterturn.cn/
邮箱: qrb.jueyue@gmail.com
邮箱: qrb.jueyue@foxmail.com
QQ群: 1群 364192721(满) 2 群116844390
开发者:魔幻之翼 xf.key@163.com


+ 27
- 27
easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/CellValueService.java Ver fichero

@@ -63,14 +63,14 @@ public class CellValueService {
* @param entity
* @return
*/
private Object getCellValue(String xclass, Cell cell, ExcelImportEntity entity) {
private Object getCellValue(String classFullName, Cell cell, ExcelImportEntity entity) {
if (cell == null) {
return "";
}
Object result = null;
if ("class java.util.Date".equals(xclass) || "class java.sql.Date".equals(xclass)
|| ("class java.sql.Time").equals(xclass)
|| ("class java.sql.Timestamp").equals(xclass)) {
if ("class java.util.Date".equals(classFullName) || "class java.sql.Date".equals(classFullName)
|| ("class java.sql.Time").equals(classFullName)
|| ("class java.sql.Timestamp").equals(classFullName)) {
/*
if (Cell.CELL_TYPE_NUMERIC == cell.getCellType()) {
// 日期格式
@@ -86,13 +86,13 @@ public class CellValueService {
cell.setCellType(CellType.STRING);
result = getDateData(entity, cell.getStringCellValue());
}
if (("class java.sql.Date").equals(xclass)) {
if (("class java.sql.Date").equals(classFullName)) {
result = new java.sql.Date(((Date) result).getTime());
}
if (("class java.sql.Time").equals(xclass)) {
if (("class java.sql.Time").equals(classFullName)) {
result = new Time(((Date) result).getTime());
}
if (("class java.sql.Timestamp").equals(xclass)) {
if (("class java.sql.Timestamp").equals(classFullName)) {
result = new Timestamp(((Date) result).getTime());
}
} else if (Cell.CELL_TYPE_NUMERIC == cell.getCellType() && DateUtil.isCellDateFormatted(cell)) {
@@ -105,7 +105,7 @@ public class CellValueService {
break;
case Cell.CELL_TYPE_NUMERIC:
if (DateUtil.isCellDateFormatted(cell)) {
if ("class java.lang.String".equals(xclass)) {
if ("class java.lang.String".equals(classFullName)) {
result = formateDate(entity, cell.getDateCellValue());
}
} else {
@@ -191,18 +191,18 @@ public class CellValueService {
Map<String, ExcelImportEntity> excelParams,
String titleString, IExcelDictHandler dictHandler) throws Exception {
ExcelImportEntity entity = excelParams.get(titleString);
String xclass = "class java.lang.Object";
String classFullName = "class java.lang.Object";
Class clazz = null;
if (!(object instanceof Map)) {
Method setMethod = entity.getMethods() != null && entity.getMethods().size() > 0
? entity.getMethods().get(entity.getMethods().size() - 1) : entity.getMethod();
Type[] ts = setMethod.getGenericParameterTypes();
xclass = ts[0].toString();
classFullName = ts[0].toString();
clazz = (Class) ts[0];
}
Object result = getCellValue(xclass, cell, entity);
Object result = getCellValue(classFullName, cell, entity);
if (entity != null) {
result = hanlderSuffix(entity.getSuffix(), result);
result = handlerSuffix(entity.getSuffix(), result);
result = replaceValue(entity.getReplace(), result);
result = replaceValue(entity.getReplace(), result);
if(dictHandler != null && StringUtils.isNoneBlank(entity.getDict())){
@@ -210,7 +210,7 @@ public class CellValueService {
}
}
result = handlerValue(dataHandler, object, result, titleString);
return getValueByType(xclass, result, entity, clazz);
return getValueByType(classFullName, result, entity, clazz);
}

/**
@@ -229,12 +229,12 @@ public class CellValueService {
Method setMethod = entity.getMethods() != null && entity.getMethods().size() > 0
? entity.getMethods().get(entity.getMethods().size() - 1) : entity.getMethod();
Type[] ts = setMethod.getGenericParameterTypes();
String xclass = ts[0].toString();
String classFullName = ts[0].toString();
Object result = cellEntity.getValue();
result = hanlderSuffix(entity.getSuffix(), result);
result = handlerSuffix(entity.getSuffix(), result);
result = replaceValue(entity.getReplace(), result);
result = handlerValue(dataHandler, object, result, titleString);
return getValueByType(xclass, result, entity, (Class) ts[0]);
return getValueByType(classFullName, result, entity, (Class) ts[0]);
}

/**
@@ -243,7 +243,7 @@ public class CellValueService {
* @param suffix
* @return
*/
private Object hanlderSuffix(String suffix, Object result) {
private Object handlerSuffix(String suffix, Object result) {
if (StringUtils.isNotEmpty(suffix) && result != null
&& result.toString().endsWith(suffix)) {
String temp = result.toString();
@@ -255,28 +255,28 @@ public class CellValueService {
/**
* 根据返回类型获取返回值
*
* @param xclass
* @param classFullName
* @param result
* @param entity
* @param clazz
* @return
*/
private Object getValueByType(String xclass, Object result, ExcelImportEntity entity, Class clazz) {
private Object getValueByType(String classFullName, Object result, ExcelImportEntity entity, Class clazz) {
try {
//过滤空和空字符串,如果基本类型null会在上层抛出,这里就不处理了
if (result == null || StringUtils.isBlank(result.toString())) {
return null;
}
if ("class java.util.Date".equals(xclass)) {
if ("class java.util.Date".equals(classFullName)) {
return result;
}
if ("class java.lang.Boolean".equals(xclass) || "boolean".equals(xclass)) {
if ("class java.lang.Boolean".equals(classFullName) || "boolean".equals(classFullName)) {
return Boolean.valueOf(String.valueOf(result));
}
if ("class java.lang.Double".equals(xclass) || "double".equals(xclass)) {
if ("class java.lang.Double".equals(classFullName) || "double".equals(classFullName)) {
return Double.valueOf(String.valueOf(result));
}
if ("class java.lang.Long".equals(xclass) || "long".equals(xclass)) {
if ("class java.lang.Long".equals(classFullName) || "long".equals(classFullName)) {
try {
return Long.valueOf(String.valueOf(result));
} catch (Exception e) {
@@ -284,10 +284,10 @@ public class CellValueService {
return Double.valueOf(String.valueOf(result)).longValue();
}
}
if ("class java.lang.Float".equals(xclass) || "float".equals(xclass)) {
if ("class java.lang.Float".equals(classFullName) || "float".equals(classFullName)) {
return Float.valueOf(String.valueOf(result));
}
if ("class java.lang.Integer".equals(xclass) || "int".equals(xclass)) {
if ("class java.lang.Integer".equals(classFullName) || "int".equals(classFullName)) {
try {
return Integer.valueOf(String.valueOf(result));
} catch (Exception e) {
@@ -295,10 +295,10 @@ public class CellValueService {
return Double.valueOf(String.valueOf(result)).intValue();
}
}
if ("class java.math.BigDecimal".equals(xclass)) {
if ("class java.math.BigDecimal".equals(classFullName)) {
return new BigDecimal(String.valueOf(result));
}
if ("class java.lang.String".equals(xclass)) {
if ("class java.lang.String".equals(classFullName)) {
//针对String 类型,但是Excel获取的数据却不是String,比如Double类型,防止科学计数法
if (result instanceof String) {
return result;


+ 1
- 1
pom.xml Ver fichero

@@ -31,7 +31,7 @@
<developers>
<developer>
<name>JueYue</name>
<email>qrb.jueyue@gmail.com</email>
<email>qrb.jueyue@foxmail.com</email>
</developer>
<developer>
<name>魔幻之翼</name>


Cargando…
Cancelar
Guardar