Explorar el Código

错误excel导出异常

4.1.3.A
jueyue hace 6 años
padre
commit
ebef3dc765
Se han modificado 1 ficheros con 16 adiciones y 16 borrados
  1. +16
    -16
      easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/ExcelImportService.java

+ 16
- 16
easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/ExcelImportService.java Ver fichero

@@ -1,11 +1,11 @@
/**
* Copyright 2013-2015 JueYue (qrb.jueyue@gmail.com)
*
* <p>
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
*
* <p>
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
@@ -107,8 +107,8 @@ public class ExcelImportService extends ImportBaseService {
Collection collection = (Collection) PoiReflectorUtil.fromCache(object.getClass())
.getValue(object, param.getName());
Object entity = PoiPublicUtil.createObject(param.getType(), targetId);
if(entity instanceof IExcelDataModel) {
((IExcelDataModel)entity).setRowNum(row.getRowNum());
if (entity instanceof IExcelDataModel) {
((IExcelDataModel) entity).setRowNum(row.getRowNum());
}
String picId;
boolean isUsed = false;// 是否需要加上这个对象
@@ -176,7 +176,7 @@ public class ExcelImportService extends ImportBaseService {
for (int j = 0; j < params.getTitleRows(); j++) {
rows.next();
}
Map<Integer, String> titlemap = getTitleMap(rows, params, excelCollection,excelParams);
Map<Integer, String> titlemap = getTitleMap(rows, params, excelCollection, excelParams);
checkIsValidTemplate(titlemap, excelParams, params, excelCollection);
Row row = null;
Object object = null;
@@ -187,7 +187,7 @@ public class ExcelImportService extends ImportBaseService {
rows.next();
}
//判断index 和集合,集合情况默认为第一列
if (excelCollection.size() > 0 && params.getKeyIndex() == null) {
if (excelCollection.size() > 0 && params.getKeyIndex() == null) {
params.setKeyIndex(0);
}
while (rows.hasNext()
@@ -214,7 +214,7 @@ public class ExcelImportService extends ImportBaseService {
object = PoiPublicUtil.createObject(pojoClass, targetId);
try {
Set<Integer> keys = titlemap.keySet();
for (Integer cn:keys) {
for (Integer cn : keys) {
Cell cell = row.getCell(cn);
String titleString = (String) titlemap.get(cn);
if (excelParams.containsKey(titleString) || Map.class.equals(pojoClass)) {
@@ -231,8 +231,8 @@ public class ExcelImportService extends ImportBaseService {
//for (int i = row.getFirstCellNum(), le = titlemap.size(); i < le; i++) {

//}
if(object instanceof IExcelDataModel) {
((IExcelDataModel)object).setRowNum(row.getRowNum());
if (object instanceof IExcelDataModel) {
((IExcelDataModel) object).setRowNum(row.getRowNum());
}
for (ExcelCollectionParams param : excelCollection) {
addListContinue(object, param, row, titlemap, targetId, pictures, params);
@@ -348,10 +348,10 @@ public class ExcelImportService extends ImportBaseService {

// 处理指定列的情况
Set<String> keys = excelParams.keySet();
for (String key : keys){
if (key.startsWith("FIXED_")){
String [] arr = key.split("_");
titlemap.put(Integer.parseInt(arr[1]),key);
for (String key : keys) {
if (key.startsWith("FIXED_")) {
String[] arr = key.split("_");
titlemap.put(Integer.parseInt(arr[1]), key);
}
}
return titlemap;
@@ -450,7 +450,8 @@ public class ExcelImportService extends ImportBaseService {
if (rowList.get(j).getRowNum() < rowList.get(j).getSheet().getLastRowNum()) {
book.getSheetAt(i).shiftRows(rowList.get(j).getRowNum() + 1, rowList.get(j).getSheet().getLastRowNum(), -1);
} else if (rowList.get(j).getRowNum() == rowList.get(j).getSheet().getLastRowNum()) {
book.getSheetAt(i).shiftRows(rowList.get(j).getRowNum(), rowList.get(j).getSheet().getLastRowNum(), -1);
book.getSheetAt(i).createRow(rowList.get(j).getRowNum() + 1);
book.getSheetAt(i).shiftRows(rowList.get(j).getRowNum() + 1, rowList.get(j).getSheet().getLastRowNum() + 1, -1);
}
}
}
@@ -566,7 +567,6 @@ public class ExcelImportService extends ImportBaseService {
}

/**
*
* @param object
* @param picId
* @param excelParams


Cargando…
Cancelar
Guardar