From bb69d7a4bdfbb90cde19b3d828f490ab10f2bb43 Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期一, 02 二月 2026 15:44:33 +0800
Subject: [PATCH] 库区增加序号

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/AreasSerializer.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/AreasSerializer.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/AreasSerializer.java
new file mode 100644
index 0000000..c86bd7f
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/AreasSerializer.java
@@ -0,0 +1,57 @@
+package com.vincent.rsf.server.manager.utils;
+
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.databind.JsonSerializer;
+import com.fasterxml.jackson.databind.SerializerProvider;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author chen.lin
+ * @time 2026-02-02
+ * Areas 瀛楁鑷畾涔夊簭鍒楀寲鍣�
+ * 灏� List<Map<String, Object>> 搴忓垪鍖栦负 JSON 鏁扮粍
+ * 鏀寔娣峰悎绫诲瀷锛圛nteger 鍜� Map锛夌殑鍚戝悗鍏煎
+ *
+ */
+public class AreasSerializer extends JsonSerializer<Object> {
+
+    @Override
+    public void serialize(Object value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
+        if (value == null) {
+            gen.writeNull();
+            return;
+        }
+        
+        if (!(value instanceof List)) {
+            gen.writeObject(value);
+            return;
+        }
+        
+        @SuppressWarnings("unchecked")
+        List<Object> list = (List<Object>) value;
+        
+        gen.writeStartArray();
+        for (Object item : list) {
+            if (item instanceof Map) {
+                // 宸茬粡鏄� Map 鏍煎紡
+                @SuppressWarnings("unchecked")
+                Map<String, Object> map = (Map<String, Object>) item;
+                gen.writeObject(map);
+            } else if (item instanceof Number) {
+                // 濡傛灉鏄� Number锛堝悜鍚庡吋瀹癸級锛岃浆鎹负 Map 鏍煎紡
+                Map<String, Object> areaMap = new HashMap<>();
+                areaMap.put("id", ((Number) item).intValue());
+                areaMap.put("sort", 1); // 榛樿鎺掑簭
+                gen.writeObject(areaMap);
+            } else {
+                // 鍏朵粬绫诲瀷锛屽皾璇曠洿鎺ュ啓鍏�
+                gen.writeObject(item);
+            }
+        }
+        gen.writeEndArray();
+    }
+}

--
Gitblit v1.9.1