fix: 优化excel综合导出水质指标空值问题
This commit is contained in:
parent
616c1fbcba
commit
f96d86b1c1
@ -238,6 +238,8 @@ public class QgcExportServiceImpl implements IQgcExportService {
|
|||||||
/**
|
/**
|
||||||
* 注册顺序决定 Sheet 在 Excel 中的顺序:
|
* 注册顺序决定 Sheet 在 Excel 中的顺序:
|
||||||
* 水质指标(水温→PH→溶解氧→电导率→浊度)→ 河道水情(流速→流量→水位)
|
* 水质指标(水温→PH→溶解氧→电导率→浊度)→ 河道水情(流速→流量→水位)
|
||||||
|
* <p>
|
||||||
|
* 支持别名:前端传 "wq" 等价于传 "wtmp,ph,dox,cond,tu"。
|
||||||
*/
|
*/
|
||||||
private List<ExportIndicatorProcessor> resolveProcessors(List<String> dataFields) {
|
private List<ExportIndicatorProcessor> resolveProcessors(List<String> dataFields) {
|
||||||
Map<String, ExportIndicatorProcessor> processorMap = new LinkedHashMap<>();
|
Map<String, ExportIndicatorProcessor> processorMap = new LinkedHashMap<>();
|
||||||
@ -252,10 +254,20 @@ public class QgcExportServiceImpl implements IQgcExportService {
|
|||||||
processorMap.put("q", qProcessor);
|
processorMap.put("q", qProcessor);
|
||||||
processorMap.put("z", zProcessor);
|
processorMap.put("z", zProcessor);
|
||||||
|
|
||||||
List<ExportIndicatorProcessor> result = new ArrayList<>();
|
// WQ 别名:展开为全部水质指标
|
||||||
|
List<String> expanded = new ArrayList<>();
|
||||||
for (String field : dataFields) {
|
for (String field : dataFields) {
|
||||||
String lower = field.trim().toLowerCase();
|
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<ExportIndicatorProcessor> result = new ArrayList<>();
|
||||||
|
for (String field : expanded) {
|
||||||
|
ExportIndicatorProcessor p = processorMap.get(field);
|
||||||
if (p != null) {
|
if (p != null) {
|
||||||
if (p instanceof RiverIndicatorProcessor) {
|
if (p instanceof RiverIndicatorProcessor) {
|
||||||
((RiverIndicatorProcessor) p).setMappers(sdRiverRMapper, sdRiverdaySMapper);
|
((RiverIndicatorProcessor) p).setMappers(sdRiverRMapper, sdRiverdaySMapper);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user