|
|
@@ -106,13 +106,13 @@ public class CostVerifyTemplateItemsController extends BaseController<CostVerify
|
|
|
String filename = heardlist.stream().map(CostVerifyTemplateHeaders::getFieldName).collect(Collectors.joining(","));
|
|
|
String fileids = heardlist.stream().map(CostVerifyTemplateHeaders::getId).collect(Collectors.joining(","));
|
|
|
|
|
|
- // 按 headersId 分组
|
|
|
- Map<Integer, List<CostVerifyTemplateItems>> groupedByHeadersId = items.stream()
|
|
|
- .collect(Collectors.groupingBy(CostVerifyTemplateItems::getOrderNum));
|
|
|
+ // 修复:按 rowid 分组,确保每个项目都能正确返回
|
|
|
+ Map<String, List<CostVerifyTemplateItems>> groupedByRowId = items.stream()
|
|
|
+ .collect(Collectors.groupingBy(CostVerifyTemplateItems::getRowid));
|
|
|
|
|
|
List<Map<String, String>> result = new ArrayList<>();
|
|
|
|
|
|
- for (Map.Entry<Integer, List<CostVerifyTemplateItems>> entry : groupedByHeadersId.entrySet()) {
|
|
|
+ for (Map.Entry<String, List<CostVerifyTemplateItems>> entry : groupedByRowId.entrySet()) {
|
|
|
List<CostVerifyTemplateItems> group = entry.getValue();
|
|
|
if (group.isEmpty()) continue;
|
|
|
|
|
|
@@ -173,6 +173,12 @@ public class CostVerifyTemplateItemsController extends BaseController<CostVerify
|
|
|
|
|
|
result.add(keyValueMap);
|
|
|
}
|
|
|
+
|
|
|
+ // 按 orderNum 排序结果,确保返回顺序正确
|
|
|
+ result.sort(Comparator.comparing(map ->
|
|
|
+ Integer.parseInt(map.getOrDefault("orderNum", "0"))
|
|
|
+ ));
|
|
|
+
|
|
|
CostItemData data = new CostItemData();
|
|
|
data.setFixedFields(filename);
|
|
|
data.setItemlist(result);
|
|
|
@@ -255,13 +261,14 @@ public class CostVerifyTemplateItemsController extends BaseController<CostVerify
|
|
|
String fileids = heardlist.stream()
|
|
|
.map(CostVerifyTemplateHeaders::getId)
|
|
|
.collect(Collectors.joining(","));
|
|
|
- // 按 orderNum 分组
|
|
|
- Map<Integer, List<CostVerifyTemplateItems>> groupedByHeadersId = items.stream()
|
|
|
- .collect(Collectors.groupingBy(CostVerifyTemplateItems::getOrderNum));
|
|
|
+
|
|
|
+ // 修复:按 rowid 分组,确保每个项目都能正确返回
|
|
|
+ Map<String, List<CostVerifyTemplateItems>> groupedByRowId = items.stream()
|
|
|
+ .collect(Collectors.groupingBy(CostVerifyTemplateItems::getRowid));
|
|
|
|
|
|
List<Map<String, String>> result = new ArrayList<>();
|
|
|
|
|
|
- for (Map.Entry<Integer, List<CostVerifyTemplateItems>> entry : groupedByHeadersId.entrySet()) {
|
|
|
+ for (Map.Entry<String, List<CostVerifyTemplateItems>> entry : groupedByRowId.entrySet()) {
|
|
|
List<CostVerifyTemplateItems> group = entry.getValue();
|
|
|
if (group.isEmpty()) continue;
|
|
|
|
|
|
@@ -314,6 +321,11 @@ public class CostVerifyTemplateItemsController extends BaseController<CostVerify
|
|
|
result.add(keyValueMap);
|
|
|
}
|
|
|
|
|
|
+ // 按 orderNum 排序结果,确保返回顺序正确
|
|
|
+ result.sort(Comparator.comparing(map ->
|
|
|
+ Integer.parseInt(map.getOrDefault("orderNum", "0"))
|
|
|
+ ));
|
|
|
+
|
|
|
CostItemData data = new CostItemData();
|
|
|
data.setFixedFields(filename);
|
|
|
data.setItemlist(result);
|