From 11b6387d74467f81e33eba8f882bff610f240115 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 18 九月 2023 20:01:09 +0800
Subject: [PATCH] Merge branch 'master' into positec

---
 src/api/index.js |   69 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/src/api/index.js b/src/api/index.js
index ca423f9..80bf911 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -1051,6 +1051,75 @@
       data: qs.stringify(data)
     })
   }
+
+  /**
+   * @description sql妫�楠�
+   */
+  sDebug (sql, rduri = null) {
+    let param = {
+      func: 's_debug_sql',
+      exec_type: 'y',
+      timestamp: moment().format('YYYY-MM-DD HH:mm:ss'),
+      userid: sessionStorage.getItem('UserID') || '',
+      lang: sessionStorage.getItem('lang') || '',
+      SessionUid: localStorage.getItem('SessionUid') || '',
+      LoginUID: sessionStorage.getItem('LoginUID') || '',
+      appkey: window.GLOB.appkey || ''
+    }
+
+    if (window.GLOB.externalDatabase !== null) {
+      sql = sql.replace(/@db@/ig, window.GLOB.externalDatabase)
+    }
+
+    console.info(`/* sql 楠岃瘉 */\n${sql.replace(/\n\s{6,20}/ig, '\n')}`)
+
+    sql = sql.replace(/\n/ig, ' ')
+
+    param.LText = Utils.formatOptions(sql)
+    param.secretkey = Utils.encrypt('', param.timestamp)
+
+    param = this.encryptParam(param)
+
+    let url = '/webapi/dostars'
+
+    if (rduri) {
+      url = rduri
+    }
+
+    let timer = setTimeout(() => {
+      let _param = {
+        func: 's_debug_sql_cancel',
+        userid: sessionStorage.getItem('UserID') || '',
+        lang: sessionStorage.getItem('lang') || '',
+        SessionUid: localStorage.getItem('SessionUid') || '',
+        LoginUID: sessionStorage.getItem('LoginUID') || '',
+        appkey: window.GLOB.appkey || ''
+      }
+      _param = this.encryptParam(_param)
+      axios({
+        url: `${url}/s_debug_sql_cancel`,
+        method: 'post',
+        data: JSON.stringify(_param)
+      })
+    }, 20000)
+
+    return new Promise(resolve => {
+      axios({
+        url: `${url}/s_debug_sql`,
+        method: 'post',
+        data: JSON.stringify(param)
+      }).then(res => {
+        clearTimeout(timer)
+        if (/Shared Memory Provider|浼氳瘽澶勪簬缁堟鐘舵�亅褰撳墠鍛戒护鍙戠敓浜嗕弗閲嶉敊璇�/.test(res.message)) {
+          res.message = '楠岃瘉澶辫触锛岃妫�鏌QL涓槸鍚﹀瓨鍦ㄦ寰幆銆�'
+        }
+        resolve(res)
+      }, () => {
+        clearTimeout(timer)
+        resolve({status: false, ErrCode: 'E', message: '楠岃瘉澶辫触锛�1璇锋鏌QL涓槸鍚﹀瓨鍦ㄦ寰幆锛�2璇锋鏌ョ綉缁滆繛鎺ユ槸鍚︽甯搞��'})
+      })
+    })
+  }
 }
 
 export default new Api()
\ No newline at end of file

--
Gitblit v1.8.0