From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/StringOrArrayDeserializer.java |   41 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 41 insertions(+), 0 deletions(-)

diff --git a/jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/StringOrArrayDeserializer.java b/jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/StringOrArrayDeserializer.java
new file mode 100644
index 0000000..03b3b14
--- /dev/null
+++ b/jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/StringOrArrayDeserializer.java
@@ -0,0 +1,41 @@
+package jnpf.limsEntity;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonToken;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 鍏煎 String 鍜� Array 鐨勫弽搴忓垪鍖栧櫒銆�
+ * 褰撳墠绔紶鍏ユ暟缁勶紙濡傚閫夌粍浠讹級鏃讹紝淇濇寔 JSON 鏁扮粍瀛楃涓叉牸寮忓瓨鍌紝
+ * 渚嬪 ["椤圭洰A","椤圭洰B"]锛屼究浜庡墠绔洖鏄炬椂鐩存帴瑙f瀽銆�
+ */
+public class StringOrArrayDeserializer extends StdDeserializer<String> {
+
+    public StringOrArrayDeserializer() {
+        super(String.class);
+    }
+
+    @Override
+    public String deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
+        if (p.currentToken() == JsonToken.START_ARRAY) {
+            List<String> list = new ArrayList<>();
+            while (p.nextToken() != JsonToken.END_ARRAY) {
+                list.add(p.getValueAsString());
+            }
+            // 瀛樹负 JSON 鏁扮粍瀛楃涓诧紝鍓嶇鍥炴樉鍙洿鎺� JSON.parse
+            StringBuilder sb = new StringBuilder("[");
+            for (int i = 0; i < list.size(); i++) {
+                if (i > 0) sb.append(",");
+                sb.append("\"").append(list.get(i).replace("\"", "\\\"")).append("\"");
+            }
+            sb.append("]");
+            return sb.toString();
+        }
+        return p.getValueAsString();
+    }
+}

--
Gitblit v1.8.0