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.icall/src/foundation/icall/callout/JSONResponse.java |   49 ++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 48 insertions(+), 1 deletions(-)

diff --git a/foundation.icall/src/foundation/icall/callout/JSONResponse.java b/foundation.icall/src/foundation/icall/callout/JSONResponse.java
index 9e56ed2..76bbd9b 100644
--- a/foundation.icall/src/foundation/icall/callout/JSONResponse.java
+++ b/foundation.icall/src/foundation/icall/callout/JSONResponse.java
@@ -12,11 +12,17 @@
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
+import biz.clean.CleanBucket;
+import biz.clean.CleanEngine;
 import foundation.dao.DataPackage;
 import foundation.dao.DataSource;
 import foundation.dao.JSONPackage;
 import foundation.dao.JSONPackageBucket;
+import foundation.dao.PackageItem;
+import foundation.dao.PackageItemType;
 import foundation.dao.bizlogic.IJSONResponse;
+import foundation.data.entity.Entity;
+import foundation.data.entity.EntitySet;
 import foundation.io.FileCenter;
 import foundation.io.FileField;
 import foundation.io.FileMeta;
@@ -202,6 +208,34 @@
 		}
 		this.dataPackage = dataPackage;
 		this.dataPackage.loadDataFromJSON(stepOriginalId, reader, jsonPackage);
+		
+		// 寰呬紭鍖�
+		CleanBucket cleanBucket = CleanBucket.getInstance();
+		CleanEngine cleanEngine = cleanBucket.getOne("product_name_clean");
+
+		for (PackageItem packageItem: dataPackage.getSlaveItems()) {
+			PackageItemType itemType = packageItem.getType();
+			
+			if (itemType == PackageItemType.Master) {
+				continue;
+			}
+			else {
+				EntitySet entitySet = packageItem.getEntitySet(DataSource.Result);
+				EntitySet newEntitySet = new EntitySet(entitySet.getEntityMeta());
+				
+				if (entitySet != null) {
+					for (Entity entity : entitySet) {
+						entity = cleanEngine.modify(entity);
+						
+						if(entity != null) {
+							newEntitySet.append(entity);
+						}
+					}
+				}
+				
+				packageItem.setEntitySet(newEntitySet, DataSource.Result);
+			}
+		}
 	}
 
 
@@ -269,7 +303,20 @@
 		
 		writer.endArray();
 		
-//		writer.write("content", content);
+		if (dataPackage != null) {
+			writer.beginObject("data");
+			for (PackageItem item : dataPackage) {
+				String itemName = item.getName();
+				
+				if (item.isEntity(DataSource.Result)) {
+					writer.write(itemName, item.getEntity(DataSource.Result));
+				}
+				else {
+					writer.write(itemName, item.getEntitySet(DataSource.Result));
+				}
+			}
+			writer.endObject();
+		}
 		writer.write("resultCode", resultCode);
 		writer.endObject();
 	}

--
Gitblit v1.8.0