From 08929dbc66fb157307921026974c459f762209e2 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 25 二月 2021 15:31:24 +0800
Subject: [PATCH] 2021-02-25

---
 src/api/index.js |   63 ++++++++++++++++++++-----------
 1 files changed, 41 insertions(+), 22 deletions(-)

diff --git a/src/api/index.js b/src/api/index.js
index 2eec82e..f84456f 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -197,7 +197,10 @@
       if (options.cloudServiceApi) {
         param.rduri = options.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon')
       }
-    } else if (!isCloud && window.GLOB.mainSystemApi) {
+    } else if (window.GLOB.mainSystemApi) {
+      if (options.sysType !== 'cloud' && window.GLOB.systemType !== 'production') {
+        param.linkurl = window.GLOB.linkurl
+      }
       param.rduri = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon')
     }
 
@@ -228,7 +231,10 @@
       if (options.cloudServiceApi) {
         param.rduri = options.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon')
       }
-    } else if (!isCloud && window.GLOB.mainSystemApi) {
+    } else if (window.GLOB.mainSystemApi) {
+      if (options.sysType !== 'cloud' && window.GLOB.systemType !== 'production') {
+        param.linkurl = window.GLOB.linkurl
+      }
       param.rduri = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon')
     }
 
@@ -274,14 +280,15 @@
                   clear = true
                 }
               })
+
+              if (clear) {
+                CacheUtils.clearWebSqlConfig()
+              } else {
+                let keys = res.menu_data.map(mid => `'${mid.menuid}'`).join(',')
+                CacheUtils.delWebSqlConfig(keys)
+              }
             }
-  
-            if (clear) {
-              CacheUtils.clearWebSqlConfig()
-            } else if (res.menu_data && res.menu_data.length > 0) {
-              let keys = res.menu_data.map(mid => `'${mid.menuid}'`).join(',')
-              CacheUtils.delWebSqlConfig(keys)
-            }
+            
             if (msg.version) {
               CacheUtils.updateWebSqlTime(curTime)
             } else {
@@ -303,21 +310,33 @@
             func: 's_get_app_version',
             modifydate: msg.createDate || curTime,
           }
-  
+
           this.getSystemConfig(param).then(res => {
             if (!res.status) {
               reject()
               return
             }
+            let clear = false
             let version = res.app_version || '1.00'
             appVersion.newVersion = version
             appVersion.oldVersion = appVersion.oldVersion || version
   
             if (res.menu_data && res.menu_data.length > 0) {
-              CacheUtils.clearIndexDBConfig()
+              res.menu_data.forEach(mid => {
+                if (systemMenuKeys.indexOf(mid.menuid) > -1) {
+                  clear = true
+                }
+              })
+
+              if (clear) {
+                CacheUtils.clearIndexDBConfig()
+              } else if (res.menu_data && res.menu_data.length > 0) {
+                let keys = res.menu_data.map(mid => `'${mid.menuid}'`)
+                CacheUtils.delIndexDBConfig(keys)
+              }
             }
 
-            CacheUtils.updateIndexDBversion({version: version, createDate: curTime})
+            CacheUtils.updateIndexDBversion({version: appVersion.oldVersion, createDate: curTime})
   
             resolve(appVersion)
           })
@@ -360,7 +379,7 @@
    * @description 鑾峰彇鎴栦慨鏀逛簯绔厤缃�
    */
   getCloudConfig (param) {
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = param.lang || sessionStorage.getItem('lang') || ''
     param.appkey = window.GLOB.appkey || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
 
@@ -390,7 +409,7 @@
    * @description 鑾峰彇浜戠閰嶇疆锛屽苟缂撳瓨淇℃伅
    */
   getCloudCacheConfig (param) {
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = param.lang || sessionStorage.getItem('lang') || ''
     param.appkey = window.GLOB.appkey || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
 
@@ -439,7 +458,7 @@
    */
   getSystemConfig (param) {
     param.userid = sessionStorage.getItem('UserID') || ''
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = param.lang || sessionStorage.getItem('lang') || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
     param.LoginUID = sessionStorage.getItem('LoginUID') || ''
     param.appkey = window.GLOB.appkey || ''
@@ -466,7 +485,7 @@
    */
   getLocalConfig (param) {
     param.userid = sessionStorage.getItem('UserID') || ''
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = param.lang || sessionStorage.getItem('lang') || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
     param.LoginUID = sessionStorage.getItem('LoginUID') || ''
     param.appkey = window.GLOB.appkey || ''
@@ -486,7 +505,7 @@
    */
   getCacheConfig (param) {
     param.userid = sessionStorage.getItem('UserID') || ''
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = param.lang || sessionStorage.getItem('lang') || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
     param.LoginUID = sessionStorage.getItem('LoginUID') || ''
     param.appkey = window.GLOB.appkey || ''
@@ -580,7 +599,7 @@
    */
   getLocalCacheConfig (param) {
     param.userid = sessionStorage.getItem('UserID') || ''
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = param.lang || sessionStorage.getItem('lang') || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
     param.LoginUID = sessionStorage.getItem('LoginUID') || ''
     param.appkey = window.GLOB.appkey || ''
@@ -637,7 +656,7 @@
    */
   getSystemCacheConfig (param) {
     param.userid = param.userid || sessionStorage.getItem('UserID') || ''
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = param.lang || sessionStorage.getItem('lang') || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
     param.LoginUID = param.LoginUID || sessionStorage.getItem('LoginUID') || ''
     param.appkey = window.GLOB.appkey || ''
@@ -674,7 +693,7 @@
    */
   genericInterface (param) {
     param.userid = sessionStorage.getItem('UserID')
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = sessionStorage.getItem('lang') || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
     param.LoginUID = sessionStorage.getItem('LoginUID') || ''
     param.appkey = window.GLOB.appkey || ''
@@ -698,7 +717,7 @@
    */
   getExcelOut (param, name) {
     param.userid = sessionStorage.getItem('UserID')
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = sessionStorage.getItem('lang') || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
     param.LoginUID = sessionStorage.getItem('LoginUID') || ''
     param.appkey = window.GLOB.appkey || ''
@@ -752,7 +771,7 @@
   fileuploadbase64 (param) {
     param.func = ''
     param.BasePath = 'Content/Upload'
-    param.lang = localStorage.getItem('lang') || ''
+    param.lang = sessionStorage.getItem('lang') || ''
     param.appkey = window.GLOB.appkey || ''
     param.SessionUid = localStorage.getItem('SessionUid') || ''
 

--
Gitblit v1.8.0