fix: 修复导出技术参数的一个错误

This commit is contained in:
曹鹏飞 2025-10-31 16:50:07 +08:00
parent c47abd2cfb
commit 50b2d81ec5
1 changed files with 118 additions and 113 deletions

View File

@ -529,6 +529,7 @@ public class ProductModelController extends ControllerBase{
Map<String, List<ProductModelParamsItem>> itemMap = cnItems.stream().collect(Collectors.groupingBy(ProductModelParamsItem::getIndexName));
AtomicInteger row = new AtomicInteger(rowIndex.get());
itemMap.forEach((indexName, itemData) -> {
int itemSize = itemData.size();
itemData.forEach(mit -> {
Row dataRow = sheet.createRow(rowIndex.getAndIncrement());
List<ProductModelParamsItem> rowItem = paramsItems.stream()
@ -539,7 +540,9 @@ public class ProductModelController extends ControllerBase{
ProductModelParamsItem litem = rowItem.stream().filter(item -> StrUtil.equals(item.getLanguageCode(), language.getCode())).findFirst().orElse(null);
if (Objects.nonNull(litem)) {
if (i == 0) {
cellRangeAddresses.add(new CellRangeAddress(row.get(), row.get() + itemData.size()-1, 0, 0));
if (row.get() != row.get() + itemSize - 1) {
cellRangeAddresses.add(new CellRangeAddress(row.get(), row.get() + itemSize - 1, 0, 0));
}
colStart.set(0);
colEnd.set(3 + 2 - 1);
Cell dataCell0 = dataRow.createCell(0);
@ -560,7 +563,9 @@ public class ProductModelController extends ControllerBase{
} else {
colStart.set(colEnd.get() + 1);
colEnd.addAndGet(3);
cellRangeAddresses.add(new CellRangeAddress(row.get(), row.get() +itemData.size()-1, colStart.get(),colStart.get()));
if (row.get() != row.get() + itemSize - 1) {
cellRangeAddresses.add(new CellRangeAddress(row.get(), row.get() + itemSize - 1, colStart.get(), colStart.get()));
}
Cell dataCell0 = dataRow.createCell(colStart.get());
dataCell0.setCellValue(litem.getIndexName());
dataCell0.setCellStyle(dataStyle);
@ -574,7 +579,7 @@ public class ProductModelController extends ControllerBase{
}
}
});
row.addAndGet(itemData.size());
row.addAndGet(itemSize);
});
}