From 6946907d67937f5dea759e1c8ffdcdc9d6765ed4 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 04 七月 2022 14:06:16 +0800
Subject: [PATCH] 2022-07-04

---
 src/utils/utils-datamanage.js |  131 +++++++++++++++++++++++++++++++------------
 1 files changed, 94 insertions(+), 37 deletions(-)

diff --git a/src/utils/utils-datamanage.js b/src/utils/utils-datamanage.js
index bed57a6..954937d 100644
--- a/src/utils/utils-datamanage.js
+++ b/src/utils/utils-datamanage.js
@@ -20,7 +20,7 @@
     let param = null
 
     if (setting.interType === 'system' || (setting.interType === 'custom' && setting.requestMode === 'system')) {
-      param = this.getDefaultQueryParam(setting, arrFields, search, orderBy, pageIndex, pageSize, menuType, id)
+      param = this.getDefaultQueryParam(setting, arrFields, search, orderBy, pageIndex, pageSize, menuType, id, BID)
     } else {
       param = this.getCustomQueryParam(setting, search, orderBy, pageIndex, pageSize, menuType, id)
     }
@@ -81,7 +81,7 @@
   /**
    * @description 鑾峰彇绯荤粺瀛樺偍杩囩▼ sPC_Get_TableData 鐨勫弬鏁�
    */
-  static getDefaultQueryParam (setting, arrFields, search, orderBy, pageIndex, pageSize, menuType, id) {
+  static getDefaultQueryParam (setting, arrFields, search, orderBy, pageIndex, pageSize, menuType, id, BID) {
     let param = {
       func: 'sPC_Get_TableData',
       obj_name: 'data',
@@ -127,6 +127,22 @@
     _dataresource = _dataresource.replace(/@sum\$/ig, '*/')
     _customScript = _customScript.replace(/\$sum@/ig, '/*')
     _customScript = _customScript.replace(/@sum\$/ig, '*/')
+
+    let time_id = Utils.getguid().substring(0, 32) || ''
+    _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') || ''}'`)
+    _customScript = _customScript.replace(/@LoginUID@/ig, `'${sessionStorage.getItem('LoginUID') || ''}'`)
+    _dataresource = _dataresource.replace(/@SessionUid@/ig, `'${localStorage.getItem('SessionUid') || ''}'`)
+    _customScript = _customScript.replace(/@SessionUid@/ig, `'${localStorage.getItem('SessionUid') || ''}'`)
+    _dataresource = _dataresource.replace(/@UserID@/ig, `'${sessionStorage.getItem('UserID') || ''}'`)
+    _customScript = _customScript.replace(/@UserID@/ig, `'${sessionStorage.getItem('UserID') || ''}'`)
+    _dataresource = _dataresource.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+    _customScript = _customScript.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+    _dataresource = _dataresource.replace(/@time_id@/ig, `'${time_id}'`)
+    _customScript = _customScript.replace(/@time_id@/ig, `'${time_id}'`)
 
     let regoptions = null
     if (setting.queryType === 'statistics' || _customScript) {
@@ -303,6 +319,22 @@
     _customScript = _customScript.replace(/\$select@/ig, '/*')
     _customScript = _customScript.replace(/@select\$/ig, '*/')
 
+    let time_id = Utils.getguid().substring(0, 32) || ''
+    _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') || ''}'`)
+    _customScript = _customScript.replace(/@LoginUID@/ig, `'${sessionStorage.getItem('LoginUID') || ''}'`)
+    _dataresource = _dataresource.replace(/@SessionUid@/ig, `'${localStorage.getItem('SessionUid') || ''}'`)
+    _customScript = _customScript.replace(/@SessionUid@/ig, `'${localStorage.getItem('SessionUid') || ''}'`)
+    _dataresource = _dataresource.replace(/@UserID@/ig, `'${sessionStorage.getItem('UserID') || ''}'`)
+    _customScript = _customScript.replace(/@UserID@/ig, `'${sessionStorage.getItem('UserID') || ''}'`)
+    _dataresource = _dataresource.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+    _customScript = _customScript.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+    _dataresource = _dataresource.replace(/@time_id@/ig, `'${time_id}'`)
+    _customScript = _customScript.replace(/@time_id@/ig, `'${time_id}'`)
+
     let regoptions = null
     if (setting.queryType === 'statistics' || _customScript) {
       let allSearch = Utils.getAllSearchOptions(search)
@@ -407,7 +439,7 @@
     let param = null
 
     if (setting.procMode !== 'inner') {
-      param = this.getDefaultPrevQueryParam(setting, search, menuType)
+      param = this.getDefaultPrevQueryParam(setting, search, menuType, BID)
     } else {
       param = Utils.formatCustomMainSearch(search)
       param.func = setting.prevFunc || ''
@@ -423,7 +455,7 @@
   /**
    * @description 鑾峰彇绯荤粺鍓嶇疆鑴氭湰
    */
-  static getDefaultPrevQueryParam (setting, search, menuType) {
+  static getDefaultPrevQueryParam (setting, search, menuType, BID) {
     let param = {
       func: 'sPC_TableData_InUpDe',
       exec_type: 'y',
@@ -465,35 +497,32 @@
       `
 
       let allSearch = Utils.getAllSearchOptions(search)
-      let regoptions = allSearch.map(item => {
-        return {
-          reg: new RegExp('@' + item.key + '@', 'ig'),
-          value: `'${item.value}'`
-        }
-      })
-      regoptions.push({
-        reg: new RegExp('@userName@', 'ig'),
-        value: `'${userName}'`
-      }, {
-        reg: new RegExp('@fullName@', 'ig'),
-        value: `'${fullName}'`
+      allSearch.forEach(item => {
+        sql = sql.replace(new RegExp('@' + item.key + '@', 'ig'), `'${item.value}'`)
       })
 
-      regoptions.forEach(item => {
-        sql = sql.replace(item.reg, item.value)
-      })
+      if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
+        sql = sql.replace(/\$@/ig, '/*')
+        sql = sql.replace(/@\$/ig, '*/')
+      } else {
+        sql = sql.replace(/@\$|\$@/ig, '')
+      }
+  
+      sql = sql.replace(/@userName@/ig, `'${userName}'`)
+      sql = sql.replace(/@fullName@/ig, `'${fullName}'`)
+
+      sql = sql.replace(/@ID@/ig, `''`)
+      sql = sql.replace(/@BID@/ig, `'${BID || ''}'`)
+      sql = sql.replace(/@LoginUID@/ig, `'${sessionStorage.getItem('LoginUID') || ''}'`)
+      sql = sql.replace(/@SessionUid@/ig, `'${localStorage.getItem('SessionUid') || ''}'`)
+      sql = sql.replace(/@UserID@/ig, `'${sessionStorage.getItem('UserID') || ''}'`)
+      sql = sql.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+      sql = sql.replace(/@time_id@/ig, `'${Utils.getguid().substring(0, 32) || ''}'`)
 
       // 娴嬭瘯绯荤粺鎵撳嵃鏌ヨ璇彞
       if (window.GLOB.debugger === true || (window.debugger === true && options.sysType !== 'cloud')) {
         console.info(sql.replace(/\n\s{8}/ig, '\n'))
       }
-    }
-
-    if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
-      sql = sql.replace(/\$@/ig, '/*')
-      sql = sql.replace(/@\$/ig, '*/')
-    } else {
-      sql = sql.replace(/@\$|\$@/ig, '')
     }
 
     param.LText = Utils.formatOptions(sql)
@@ -512,7 +541,7 @@
   /**
    * @description 鑾峰彇绯荤粺鍥炶皟鑴氭湰
    */
-  static getCallBackQueryParams (setting, sql, errSql) {
+  static getCallBackQueryParams (setting, sql, errSql, BID) {
     let param = {
       func: 'sPC_TableData_InUpDe',
       exec_type: 'y',
@@ -563,19 +592,27 @@
 
     sql = _prevCustomScript + sql
     sql = sql + _backCustomScript
+    
+    if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
+      sql = sql.replace(/\$@/ig, '/*')
+      sql = sql.replace(/@\$/ig, '*/')
+    } else {
+      sql = sql.replace(/@\$|\$@/ig, '')
+    }
+
+    sql = sql.replace(/@ID@/ig, `''`)
+    sql = sql.replace(/@BID@/ig, `'${BID || ''}'`)
+    sql = sql.replace(/@LoginUID@/ig, `'${sessionStorage.getItem('LoginUID') || ''}'`)
+    sql = sql.replace(/@SessionUid@/ig, `'${localStorage.getItem('SessionUid') || ''}'`)
+    sql = sql.replace(/@UserID@/ig, `'${sessionStorage.getItem('UserID') || ''}'`)
+    sql = sql.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+    sql = sql.replace(/@time_id@/ig, `'${Utils.getguid().substring(0, 32) || ''}'`)
 
     if (window.GLOB.debugger === true || (window.debugger === true && options.sysType !== 'cloud')) {
       console.info(sql.replace(/\n\s{8}/ig, '\n'))
     }
 
     param.LText = sql
-    
-    if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺
-      param.LText = param.LText.replace(/\$@/ig, '/*')
-      param.LText = param.LText.replace(/@\$/ig, '*/')
-    } else {
-      param.LText = param.LText.replace(/@\$|\$@/ig, '')
-    }
 
     param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss')
     param.secretkey = Utils.encrypt('', param.timestamp)
@@ -749,13 +786,18 @@
  * @description 鐢熸垚sPC_Get_structured_data璇锋眰鍙傛暟
  * 1銆佹妸澶ф帴鍙PC_Get_structured_data鐨刲text鎷嗘垚涓変唤锛岀涓�娈碉細@LText1锛岀浜屾@LText锛岀涓夋@LText2
  */
-export function getStructuredParams (params, config, BID = '') {
+export function getStructuredParams (params, config, BID) {
   let LText_field = []
   let diffUser = false
   let transaction = false
-  
+  let time_id = Utils.getguid().substring(0, 32) || ''
+  let loginId = `'${sessionStorage.getItem('LoginUID') || ''}'`
+  let sessionId = `'${localStorage.getItem('SessionUid') || ''}'`
+  let userId = `'${sessionStorage.getItem('UserID') || ''}'`
+
   let _LText = params.map((item, index) => {
     let _script = item.script
+    let _sql = item.sql
 
     if (!diffUser && (/@userid@/ig.test(item.sql) || /@userid@/ig.test(_script))) {
       diffUser = true
@@ -764,10 +806,25 @@
       transaction = true
     }
 
+    _sql = _sql.replace(/@ID@/ig, `''`)
+    _script = _script.replace(/@ID@/ig, `''`)
+    _sql = _sql.replace(/@BID@/ig, `'${BID || ''}'`)
+    _script = _script.replace(/@BID@/ig, `'${BID || ''}'`)
+    _sql = _sql.replace(/@LoginUID@/ig, loginId)
+    _script = _script.replace(/@LoginUID@/ig, loginId)
+    _sql = _sql.replace(/@SessionUid@/ig, sessionId)
+    _script = _script.replace(/@SessionUid@/ig, sessionId)
+    _sql = _sql.replace(/@UserID@/ig, userId)
+    _script = _script.replace(/@UserID@/ig, userId)
+    _sql = _sql.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+    _script = _script.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`)
+    _sql = _sql.replace(/@time_id@/ig, `'${time_id}'`)
+    _script = _script.replace(/@time_id@/ig, `'${time_id}'`)
+
     item.columns.forEach(cell => {
       LText_field.push(`Select '${item.name}' as tablename,'${cell.field}' as fieldname,'${cell.datatype}' as field_type`)
     })
-    return `Select '${item.name}' as tablename,'${window.btoa(window.encodeURIComponent(item.sql))}' as LText,'${window.btoa(window.encodeURIComponent(_script))}' as Lcustomize,'${item.type}' as table_type,'${item.primaryKey}' as primary_key,'${item.par_tablename}' as par_tablename,'${item.foreign_key}' as foreign_key,'${index}' as Sort`
+    return `Select '${item.name}' as tablename,'${window.btoa(window.encodeURIComponent(_sql))}' as LText,'${window.btoa(window.encodeURIComponent(_script))}' as Lcustomize,'${item.type}' as table_type,'${item.primaryKey}' as primary_key,'${item.par_tablename}' as par_tablename,'${item.foreign_key}' as foreign_key,'${index}' as Sort`
   })
 
   let param = {

--
Gitblit v1.8.0