Browse Source

12.17 Part Import

print/logistic/save
yuejiayang 1 year ago
parent
commit
6b29684d6f
  1. 24
      src/main/java/com/gaotao/modules/part/service/impl/PartServiceImpl.java

24
src/main/java/com/gaotao/modules/part/service/impl/PartServiceImpl.java

@ -28,6 +28,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.DataFormatter;
import org.apache.poi.ss.usermodel.Row;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -240,7 +241,18 @@ public class PartServiceImpl extends ServiceImpl<PartMapper, Part> implements Pa
// 读取工作表
XSSFSheet sheet = workbook.getSheetAt(0);
// 获取行数
int rows = sheet.getPhysicalNumberOfRows();
int rows = 0;
// 获取行数
for (int i = 0; i < sheet.getPhysicalNumberOfRows(); i++) {
//获取索引为i的行以0开始
XSSFRow row = sheet.getRow(i);
// 过滤掉空行
if (isEmptyRow(row)) {
continue;
} else {
rows += 1;
}
}
ArrayList<Part> partList = new ArrayList<>();
ArrayList<ExternalPartCustomer> externalPartCustomerList = new ArrayList<>();
ArrayList<ExternalPartManufacturer> externalPartManufacturerList = new ArrayList<>();
@ -562,6 +574,16 @@ public class PartServiceImpl extends ServiceImpl<PartMapper, Part> implements Pa
return formatter.formatCellValue(cell);
}
// 检查行是否为空的方法
private boolean isEmptyRow(XSSFRow row) {
for (int j = 0; j < row.getPhysicalNumberOfCells(); j++) {
if (row.getCell(j) != null && !getStringCellValue(row,j).trim().isEmpty()) {
return false; // 至少有一个非空单元格该行不为空
}
}
return true; // 所有单元格都为空该行为空行
}
@Override
public void provisionalDataAlterHandle(Part data, Integer type) {
if (type == 1){

Loading…
Cancel
Save