From 56638c01bb2cc61a92f5e03c9a1001be5b5d3699 Mon Sep 17 00:00:00 2001
From: P15GEN2\59518 <lilith@highdatas.com>
Date: 星期六, 18 十月 2025 12:39:31 +0800
Subject: [PATCH] dev 数据清洗
---
foundation.data/src/foundation/data/entity/Entity.java | 14 ++++++++++++--
1 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/foundation.data/src/foundation/data/entity/Entity.java b/foundation.data/src/foundation/data/entity/Entity.java
index e46ffc0..1b1060c 100644
--- a/foundation.data/src/foundation/data/entity/Entity.java
+++ b/foundation.data/src/foundation/data/entity/Entity.java
@@ -17,6 +17,7 @@
import foundation.json.IJSONProvider;
import foundation.json.IJSONWriter;
import foundation.json.JSONReader;
+import foundation.json.JType;
import foundation.server.config.DBaseType;
import foundation.util.ContentBuilder;
import foundation.util.IEntity;
@@ -81,13 +82,22 @@
}
}
- public void copyFrom(JSONReader from, List<FieldMapping> fieldMappings) {
- if (from == null) {
+ public void copyFrom(JSONReader json, List<FieldMapping> fieldMappings) {
+ if (json == null) {
return;
}
+ JSONReader from = json;
+
for (FieldMapping mapping : fieldMappings) {
String fromName = mapping.getFromName(true);
+ int pos = fromName.indexOf(".");
+ if (pos >= 0) {
+ String jsonName = fromName.substring(0, pos);
+ fromName = fromName.substring(pos + 1);
+
+ from = json.getReader(jsonName, JType.Object);
+ }
String toName = mapping.getToName();
Integer idx = fieldsMeta.getIndex(toName);
--
Gitblit v1.8.0