diff --git a/backend/src/main/java/com/yfd/platform/qgc_export/service/impl/QgcExportServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_export/service/impl/QgcExportServiceImpl.java index af085dc1..10542479 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_export/service/impl/QgcExportServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_export/service/impl/QgcExportServiceImpl.java @@ -238,6 +238,8 @@ public class QgcExportServiceImpl implements IQgcExportService { /** * 注册顺序决定 Sheet 在 Excel 中的顺序: * 水质指标(水温→PH→溶解氧→电导率→浊度)→ 河道水情(流速→流量→水位) + *

+ * 支持别名:前端传 "wq" 等价于传 "wtmp,ph,dox,cond,tu"。 */ private List resolveProcessors(List dataFields) { Map processorMap = new LinkedHashMap<>(); @@ -252,10 +254,20 @@ public class QgcExportServiceImpl implements IQgcExportService { processorMap.put("q", qProcessor); processorMap.put("z", zProcessor); - List result = new ArrayList<>(); + // WQ 别名:展开为全部水质指标 + List expanded = new ArrayList<>(); for (String field : dataFields) { String lower = field.trim().toLowerCase(); - ExportIndicatorProcessor p = processorMap.get(lower); + if ("wq".equals(lower)) { + expanded.addAll(List.of("wtmp", "ph", "dox", "cond", "tu")); + } else { + expanded.add(lower); + } + } + + List result = new ArrayList<>(); + for (String field : expanded) { + ExportIndicatorProcessor p = processorMap.get(field); if (p != null) { if (p instanceof RiverIndicatorProcessor) { ((RiverIndicatorProcessor) p).setMappers(sdRiverRMapper, sdRiverdaySMapper);