From 8137ac074ce6370e4b46295e7acf9c7870ef82d2 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 17 二月 2023 22:19:23 +0800
Subject: [PATCH] 2023-02-17

---
 src/utils/utils-datamanage.js |  108 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 78 insertions(+), 30 deletions(-)

diff --git a/src/utils/utils-datamanage.js b/src/utils/utils-datamanage.js
index 8e02550..59bca43 100644
--- a/src/utils/utils-datamanage.js
+++ b/src/utils/utils-datamanage.js
@@ -58,14 +58,32 @@
       if (window.GLOB.mkHS) {
         if (setting.sysInterface === 'true' && options.cloudServiceApi) {
           param.rduri = options.cloudServiceApi
+          param.userid = sessionStorage.getItem('CloudUserID') || ''
+          param.LoginUID = sessionStorage.getItem('CloudLoginUID') || ''
         } else if (setting.sysInterface !== 'true') {
           param.rduri = setting.interface
         }
       } else {
-        if (setting.sysInterface === 'true' && window.GLOB.mainSystemApi) {
-          param.rduri = window.GLOB.mainSystemApi
-        } else if (setting.sysInterface !== 'true') {
-          param.rduri = window.GLOB.systemType === 'production' ? (setting.proInterface || setting.interface) : setting.interface
+        if (setting.sysInterface === 'true') {
+          if (window.GLOB.mainSystemApi) {
+            param.rduri = window.GLOB.mainSystemApi
+          }
+        } else if (setting.sysInterface === 'external') {
+          if (window.GLOB.systemType === 'production') {
+            param.$token = setting.exProInterface || ''
+          } else {
+            param.$token = setting.exInterface || ''
+          }
+        } else {
+          if (window.GLOB.systemType === 'production' && setting.proInterface) {
+            param.rduri = setting.proInterface
+          } else {
+            param.rduri = setting.interface
+          }
+          let host = window.GLOB.baseurl.replace(/http(s):\/\//, '')
+          if (param.rduri.indexOf(host) === -1 && /\/dostars/.test(param.rduri)) {
+            param.$login = true
+          }
         }
       }
 
@@ -89,9 +107,9 @@
       default_sql: setting.execute ? 'true' : 'false'
     }
 
-    if (setting.transaction === 'true') {
-      param.func = 'sPC_Get_TableData_try'
-    }
+    // if (setting.transaction === 'true') {
+    //   param.func = 'sPC_Get_TableData_try'
+    // }
 
     let userName = sessionStorage.getItem('User_Name') || ''
     let fullName = sessionStorage.getItem('Full_Name') || ''
@@ -127,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') || ''}'`)
@@ -186,18 +204,22 @@
       regoptions.forEach(item => {
         _customScript = _customScript.replace(item.reg, item.value)
       })
+      if (window.GLOB.breakpoint) {
+        _customScript = _customScript.replace(/\$breakpoint_proc@/ig, window.GLOB.breakpoint)
+        param.func = 'sPC_Get_TableData_debug'
+      }
     }
 
     let LText = ''
     let DateCount = ''
 
     if (_dataresource && setting.laypage && orderBy && !id) {
-      LText = ` 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 = `select count(1) as total from ${_dataresource} ${_search}`
+      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}`
     } else if (_dataresource && orderBy) {
-      LText = ` select ${arrFields} from (select ${arrFields} ,ROW_NUMBER() over(order by ${orderBy}) as rows from ${_dataresource} ${_search}) tmptable order by tmptable.rows `
+      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) {
-      LText = ` select ${arrFields} from ${_dataresource} ${_search}  `
+      LText = `/*system_query*/select ${arrFields} from ${_dataresource} ${_search}  `
     }
 
     if (_customScript) {
@@ -254,13 +276,31 @@
     // 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
 
     param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss')
     param.secretkey = Utils.encrypt('', param.timestamp)
 
+    if (window.GLOB.probation) {
+      param.s_debug_type = 'Y'
+    }
+
     if (window.GLOB.mkHS) { // 浜戠鏁版嵁楠岃瘉
       param.open_key = Utils.encryptOpenKey(param.secretkey, param.timestamp)
+
+      // special HS鑷畾涔夊嚱鏁版煡璇�
+      if (setting.tableName === 's_custom_script' && options.cloudServiceApi) {
+        param.rduri = options.cloudServiceApi
+        param.userid = sessionStorage.getItem('CloudUserID') || ''
+        param.LoginUID = sessionStorage.getItem('CloudLoginUID') || ''
+      }
     }
 
     return param
@@ -278,9 +318,9 @@
       default_sql: setting.execute ? 'true' : 'false'
     }
 
-    if (setting.transaction === 'true') {
-      param.func = 'sPC_Get_TableData_try'
-    }
+    // if (setting.transaction === 'true') {
+    //   param.func = 'sPC_Get_TableData_try'
+    // }
     
     let _dataresource = setting.dataresource
     let _customScript = ''
@@ -315,8 +355,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') || ''}'`)
@@ -368,7 +408,7 @@
       })
     }
 
-    let LText = ` select ${statFields.map(col => `isnull(sum(${col.field}),0) as ${col.field}`).join(',')} from ${_dataresource} ${_search} `
+    let LText = ` /*system_query*/select ${statFields.map(col => `isnull(sum(${col.field}),0) as ${col.field}`).join(',')} from ${_dataresource} ${_search} `
 
     if (_customScript) {
       LText = `${LText}
@@ -429,7 +469,6 @@
    */
   static getPrevQueryParams (setting, search = [], BID) {
     let param = null
-
     if (setting.procMode !== 'inner') {
       param = this.getDefaultPrevQueryParam(setting, search, BID)
     } else {
@@ -524,7 +563,9 @@
       param.open_key = Utils.encryptOpenKey(param.secretkey, param.timestamp)
     }
 
-    param.menuname = setting.MenuName || ''
+    if (setting.$name) {
+      param.menuname = setting.$name
+    }
 
     return param
   }
@@ -607,7 +648,10 @@
     param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss')
     param.secretkey = Utils.encrypt('', param.timestamp)
     param.LText = Utils.formatOptions(param.LText)
-    param.menuname = setting.MenuName || ''
+    
+    if (setting.$name) {
+      param.menuname = setting.$name
+    }
 
     if (BID) {
       param.BID = BID
@@ -696,7 +740,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
@@ -762,6 +806,7 @@
   }
 
   return {
+    uuid: uuid,
     name: dataName,
     $name: setting.$name,
     columns: columns,
@@ -771,7 +816,7 @@
     foreign_key: '',
     sql: _dataresource,
     script: _customScript,
-    transaction: setting.transaction === 'true'
+    // transaction: setting.transaction === 'true'
   }
 }
 
@@ -782,7 +827,7 @@
 export function getStructuredParams (params, config, BID) {
   let LText_field = []
   let diffUser = false
-  let transaction = false
+  // let transaction = false
   let loginId = `'${sessionStorage.getItem('LoginUID') || ''}'`
   let sessionId = `'${localStorage.getItem('SessionUid') || ''}'`
   let userId = `'${sessionStorage.getItem('UserID') || ''}'`
@@ -794,9 +839,9 @@
     if (!diffUser && (/@userid@/ig.test(item.sql) || /@userid@/ig.test(_script))) {
       diffUser = true
     }
-    if (item.transaction) {
-      transaction = true
-    }
+    // if (item.transaction) {
+    //   transaction = true
+    // }
 
     _sql = _sql.replace(/@ID@/ig, `''`)
     _script = _script.replace(/@ID@/ig, `''`)
@@ -830,9 +875,12 @@
     BID: BID
   }
 
-  if (transaction) {
-    param.func = 'sPC_Get_structured_data_try'
+  if (config.MenuName) {
+    param.menuname = config.MenuName
   }
+  // if (transaction) {
+  //   param.func = 'sPC_Get_structured_data_try'
+  // }
 
   let { LText, LText1, LText2 } = Utils.sPCInUpDeFormatOptions(param.LText)
 

--
Gitblit v1.8.0