소스 검색

fix:模板调整

zzw 2 주 전
부모
커밋
eb44e01906

+ 9 - 4
assistMg/src/main/java/com/hotent/enterpriseDeclare/controller/material/CostProjectTaskSurveyFdTemplateController.java

@@ -123,13 +123,13 @@ public class CostProjectTaskSurveyFdTemplateController {
         String filename = headList.stream().map(CostSurveyFdTemplateHeaders::getFieldName).collect(Collectors.joining(","));
         String filenids = headList.stream().map(CostSurveyFdTemplateHeaders::getId).collect(Collectors.joining(","));
 
-        // 按 orderNum 分组
-        Map<Integer, List<CostSurveyFdTemplateItems>> groupedByOrderNum = items.stream()
-                .collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getOrderNum));
+        // 修复:按 rowid 分组,确保每个项目都能正确返回
+        Map<String, List<CostSurveyFdTemplateItems>> groupedByRowId = items.stream()
+                .collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getRowid));
 
         List<Map<String, String>> result = new ArrayList<>();
 
-        for (Map.Entry<Integer, List<CostSurveyFdTemplateItems>> entry : groupedByOrderNum.entrySet()) {
+        for (Map.Entry<String, List<CostSurveyFdTemplateItems>> entry : groupedByRowId.entrySet()) {
             List<CostSurveyFdTemplateItems> group = entry.getValue();
             if (group.isEmpty()) continue;
 
@@ -178,6 +178,11 @@ public class CostProjectTaskSurveyFdTemplateController {
             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);

+ 19 - 8
assistMg/src/main/java/com/hotent/enterpriseDeclare/controller/material/CostProjectTaskSurveyGenericController.java

@@ -3272,13 +3272,13 @@ public class CostProjectTaskSurveyGenericController {
         String filename = headList.stream().map(CostSurveyTemplateHeaders::getFieldName).collect(Collectors.joining(","));
         String filenids = headList.stream().map(CostSurveyTemplateHeaders::getId).collect(Collectors.joining(","));
 
-        // 按 orderNum 分组
-        Map<Integer, List<CostSurveyTemplateItems>> groupedByHeadersId = items.stream()
-                .collect(Collectors.groupingBy(CostSurveyTemplateItems::getOrderNum));
+        // 修复:按 rowid 分组,确保每个项目都能正确返回
+        Map<String, List<CostSurveyTemplateItems>> groupedByRowId = items.stream()
+                .collect(Collectors.groupingBy(CostSurveyTemplateItems::getRowid));
 
         List<Map<String, String>> result = new ArrayList<>();
 
-        for (Map.Entry<Integer, List<CostSurveyTemplateItems>> entry : groupedByHeadersId.entrySet()) {
+        for (Map.Entry<String, List<CostSurveyTemplateItems>> entry : groupedByRowId.entrySet()) {
             List<CostSurveyTemplateItems> group = entry.getValue();
             if (group.isEmpty()) continue;
 
@@ -3327,6 +3327,12 @@ public class CostProjectTaskSurveyGenericController {
 
             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);
@@ -3338,13 +3344,13 @@ public class CostProjectTaskSurveyGenericController {
         String filename = headList.stream().map(CostSurveyFdTemplateHeaders::getFieldName).collect(Collectors.joining(","));
         String filenids = headList.stream().map(CostSurveyFdTemplateHeaders::getId).collect(Collectors.joining(","));
 
-        // 按 orderNum 分组
-        Map<Integer, List<CostSurveyFdTemplateItems>> groupedByOrderNum = items.stream()
-                .collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getOrderNum));
+        // 修复:按 rowid 分组,确保每个项目都能正确返回
+        Map<String, List<CostSurveyFdTemplateItems>> groupedByRowId = items.stream()
+                .collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getRowid));
 
         List<Map<String, String>> result = new ArrayList<>();
 
-        for (Map.Entry<Integer, List<CostSurveyFdTemplateItems>> entry : groupedByOrderNum.entrySet()) {
+        for (Map.Entry<String, List<CostSurveyFdTemplateItems>> entry : groupedByRowId.entrySet()) {
             List<CostSurveyFdTemplateItems> group = entry.getValue();
             if (group.isEmpty()) continue;
 
@@ -3393,6 +3399,11 @@ public class CostProjectTaskSurveyGenericController {
             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);

+ 19 - 8
assistMg/src/main/java/com/hotent/surveyinfo/controller/CostSurveyFdTemplateItemsController.java

@@ -99,13 +99,13 @@ public class CostSurveyFdTemplateItemsController extends BaseController<CostSurv
 		String fileids = heardlist.stream().map(CostSurveyFdTemplateHeaders::getId).collect(Collectors.joining(","));
 
 
-		// 按 headersId 分组
-		Map<Integer, List<CostSurveyFdTemplateItems>> groupedByHeadersId = items.stream()
-				.collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getOrderNum));
+		// 修复:按 rowid 分组,确保每个项目都能正确返回
+		Map<String, List<CostSurveyFdTemplateItems>> groupedByRowId = items.stream()
+				.collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getRowid));
 
 		List<Map<String, String>> result = new ArrayList<>();
 
-		for (Map.Entry<Integer, List<CostSurveyFdTemplateItems>> entry : groupedByHeadersId.entrySet()) {
+		for (Map.Entry<String, List<CostSurveyFdTemplateItems>> entry : groupedByRowId.entrySet()) {
 			List<CostSurveyFdTemplateItems> group = entry.getValue();
 			if (group.isEmpty()) continue;
 
@@ -156,6 +156,12 @@ public class CostSurveyFdTemplateItemsController extends BaseController<CostSurv
 
 			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);
@@ -249,13 +255,13 @@ public class CostSurveyFdTemplateItemsController extends BaseController<CostSurv
 				.map(CostSurveyFdTemplateHeaders::getId)
 				.collect(Collectors.joining(","));
 
-		// 按 orderNum 分组
-		Map<Integer, List<CostSurveyFdTemplateItems>> groupedByHeadersId = items.stream()
-				.collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getOrderNum));
+		// 修复:按 rowid 分组,确保每个项目都能正确返回
+		Map<String, List<CostSurveyFdTemplateItems>> groupedByRowId = items.stream()
+				.collect(Collectors.groupingBy(CostSurveyFdTemplateItems::getRowid));
 
 		List<Map<String, String>> result = new ArrayList<>();
 
-		for (Map.Entry<Integer, List<CostSurveyFdTemplateItems>> entry : groupedByHeadersId.entrySet()) {
+		for (Map.Entry<String, List<CostSurveyFdTemplateItems>> entry : groupedByRowId.entrySet()) {
 			List<CostSurveyFdTemplateItems> group = entry.getValue();
 			if (group.isEmpty()) continue;
 
@@ -305,6 +311,11 @@ public class CostSurveyFdTemplateItemsController extends BaseController<CostSurv
 			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);