From 85c231f769f0167114d01e2588422a5dbc7353bb Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 09 四月 2024 11:25:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/ProjectWeb/src/actions/AddAction.js  |    4 ++++
 Source/ProjectWeb/src/actions/BaseAction.js |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/Source/ProjectWeb/src/actions/AddAction.js b/Source/ProjectWeb/src/actions/AddAction.js
new file mode 100644
index 0000000..8d0e0e8
--- /dev/null
+++ b/Source/ProjectWeb/src/actions/AddAction.js
@@ -0,0 +1,4 @@
+/**
+ * 鎸夐挳澶勭悊 涓氬姟绫诲瀷鏂板
+ */
+import BaseAction from './BaseAction';
diff --git a/Source/ProjectWeb/src/actions/BaseAction.js b/Source/ProjectWeb/src/actions/BaseAction.js
new file mode 100644
index 0000000..a0005bc
--- /dev/null
+++ b/Source/ProjectWeb/src/actions/BaseAction.js
@@ -0,0 +1,52 @@
+import {validatenull} from "@/util/validate";
+import {findArray} from "@/util/util";
+
+/**
+ * 鎸夐挳鐨勫熀纭�鏈嶅姟
+ */
+
+/**
+ * 鏇挎崲鏂囨湰涓殑${xxx}
+ * @param text 鏂囨湰
+ * @param dataStore 閫夋嫨鐨勬暟鎹�
+ * @param sourceData 鏉ユ簮鏁版嵁
+ * @returns 鏇挎崲鍚庣殑鍊�,瀛楃涓�
+ */
+export const replaceFreeMarker = (text,dataStore,sourceData) => {
+  //鏇挎崲琛ㄨ揪寮�
+  if (!sourceData) {
+    sourceData = {};
+  }
+  if (!dataStore) {
+    dataStore = [];
+  }
+  let replaceData = dataStore.length > 0 ? dataStore[0] : {};
+  if (text && text.indexOf("${") > -1 && text.indexOf("}")) {
+    //js鍙兘浣跨敤${xxx}杩欑鐨勬柟寮�
+    let reg = "root.${";
+    while (text.indexOf(reg) > -1) {
+      let temp = text.substring(0, text.indexOf(reg));
+      let field = text.substring(text.indexOf(reg) + reg.length, text.indexOf("}"));
+      let end = text.substring(text.indexOf("}") + 1);
+      field = replaceData[field] || sourceData[field] || '';
+      text = temp + field + end;
+    }
+    reg = "sourceData.${";
+    while (text.indexOf(reg) > -1) {
+      let temp = text.substring(0, text.indexOf(reg));
+      let field = text.substring(text.indexOf(reg) + reg.length, text.indexOf("}"));
+      let end = text.substring(text.indexOf("}") + 1);
+      field = replaceData[field] || sourceData[field] || '';
+      text = temp + field + end;
+    }
+    reg = "${";
+    while (text.indexOf(reg) > -1) {
+      let temp = text.substring(0, text.indexOf(reg));
+      let field = text.substring(text.indexOf(reg) + reg.length, text.indexOf("}"));
+      let end = text.substring(text.indexOf("}") + 1);
+      field = replaceData[field] || sourceData[field] || '';
+      text = temp + field + end;
+    }
+  }
+  return text;
+};

--
Gitblit v1.9.3