From 31060c20e8d232f2bdb426fed620b7c15018b8df Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 23 二月 2023 00:13:00 +0800
Subject: [PATCH] 2023-02-23

---
 src/utils/utils-datamanage.js |   28 ++++++++++++++++++++++------
 1 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/src/utils/utils-datamanage.js b/src/utils/utils-datamanage.js
index b085f16..80b560e 100644
--- a/src/utils/utils-datamanage.js
+++ b/src/utils/utils-datamanage.js
@@ -145,8 +145,8 @@
     _customScript = _customScript.replace(/\$sum@/ig, '/*')
     _customScript = _customScript.replace(/@sum\$/ig, '*/')
 
-    _dataresource = _dataresource.replace(/@ID@/ig, `''`)
-    _customScript = _customScript.replace(/@ID@/ig, `''`)
+    // _dataresource = _dataresource.replace(/@ID@/ig, `''`)
+    // _customScript = _customScript.replace(/@ID@/ig, `''`)
     _dataresource = _dataresource.replace(/@BID@/ig, `'${BID || ''}'`)
     _customScript = _customScript.replace(/@BID@/ig, `'${BID || ''}'`)
     _dataresource = _dataresource.replace(/@LoginUID@/ig, `'${sessionStorage.getItem('LoginUID') || ''}'`)
@@ -213,9 +213,17 @@
     let LText = ''
     let DateCount = ''
 
+    if (setting.sub_field) {
+      arrFields = arrFields + ',' + setting.sub_field
+    }
+
     if (_dataresource && setting.laypage && orderBy && !id) {
       LText = `/*system_query*/select top ${pageSize} ${arrFields} from (select ${arrFields} ,ROW_NUMBER() over(order by ${orderBy}) as rows from ${_dataresource} ${_search}) tmptable where rows > ${pageSize * (pageIndex - 1)} order by tmptable.rows `
-      DateCount = `/*system_query*/select count(1) as total from ${_dataresource} ${_search}`
+      if (setting.sub_field) {
+        DateCount = `/*system_query*/select count(1) as total from (select distinct ${setting.primaryKey} from ${_dataresource} ${_search})a`
+      } else {
+        DateCount = `/*system_query*/select count(1) as total from ${_dataresource} ${_search}`
+      }
     } else if (_dataresource && orderBy) {
       LText = `/*system_query*/select ${arrFields} from (select ${arrFields} ,ROW_NUMBER() over(order by ${orderBy}) as rows from ${_dataresource} ${_search}) tmptable order by tmptable.rows `
     } else if (_dataresource) {
@@ -275,6 +283,13 @@
     // param.parid = 'BID'
     // param.sub_name = 'sub_data'
     // param.sub_field = 'BID,friend_text,icon,Initials'
+
+    if (setting.sub_field) {
+      param.sub_name = setting.subdata
+      param.tabid = setting.primaryKey || ''
+      param.parid = setting.subBID || ''
+      param.sub_field = setting.sub_field
+    }
 
     // exec_type: 'y' 瑙g爜瀛楁锛歀Text銆丩Text1銆丩Text2銆乧ustom_script銆丏ateCount
 
@@ -348,8 +363,8 @@
     _customScript = _customScript.replace(/\$select@/ig, '/*')
     _customScript = _customScript.replace(/@select\$/ig, '*/')
 
-    _dataresource = _dataresource.replace(/@ID@/ig, `''`)
-    _customScript = _customScript.replace(/@ID@/ig, `''`)
+    // _dataresource = _dataresource.replace(/@ID@/ig, `''`)
+    // _customScript = _customScript.replace(/@ID@/ig, `''`)
     _dataresource = _dataresource.replace(/@BID@/ig, `'${BID || ''}'`)
     _customScript = _customScript.replace(/@BID@/ig, `'${BID || ''}'`)
     _dataresource = _dataresource.replace(/@LoginUID@/ig, `'${sessionStorage.getItem('LoginUID') || ''}'`)
@@ -733,7 +748,7 @@
  * @description 鐢熸垚鍗曚釜缁勪欢sPC_Get_structured_data璇锋眰鍙傛暟
  */
 export function getStructDefaultParam (component, searchlist, first) {
-  const { columns, setting, dataName, format } = component
+  const { columns, setting, dataName, format, uuid } = component
 
   let arr_field = columns.map(col => col.field)
   let _dataresource = setting.dataresource
@@ -799,6 +814,7 @@
   }
 
   return {
+    uuid: uuid,
     name: dataName,
     $name: setting.$name,
     columns: columns,

--
Gitblit v1.8.0