king
2021-02-22 5a7e0659e6365709e2f5c02307d5d5b0a6bd1cc8
src/api/index.js
@@ -274,14 +274,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 +304,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)
          })
@@ -343,14 +356,24 @@
   * @description 删除某个菜单配置信息
   */
  deleteMenuStorage (menuId) {
    return CacheUtils.delMenuWebSqlConfig(menuId)
    if (window.GLOB.IndexDB) {
      let key = menuId + (sessionStorage.getItem('UserID') || '')
      if (sessionStorage.getItem('isEditState') === 'true' && options.cloudServiceApi) {
        key = menuId + (sessionStorage.getItem('CloudUserID') || '')
      }
      return CacheUtils.delMenuIndexDBConfig(key)
    } else {
      return CacheUtils.delMenuWebSqlConfig(menuId)
    }
  }
  /**
   * @description 获取或修改云端配置
   */
  getCloudConfig (param) {
    param.lang = localStorage.getItem('lang') || ''
    param.lang = param.lang || localStorage.getItem('lang') || ''
    param.appkey = window.GLOB.appkey || ''
    param.SessionUid = localStorage.getItem('SessionUid') || ''
@@ -380,7 +403,7 @@
   * @description 获取云端配置,并缓存信息
   */
  getCloudCacheConfig (param) {
    param.lang = localStorage.getItem('lang') || ''
    param.lang = param.lang || localStorage.getItem('lang') || ''
    param.appkey = window.GLOB.appkey || ''
    param.SessionUid = localStorage.getItem('SessionUid') || ''
@@ -429,7 +452,7 @@
   */
  getSystemConfig (param) {
    param.userid = sessionStorage.getItem('UserID') || ''
    param.lang = localStorage.getItem('lang') || ''
    param.lang = param.lang || localStorage.getItem('lang') || ''
    param.SessionUid = localStorage.getItem('SessionUid') || ''
    param.LoginUID = sessionStorage.getItem('LoginUID') || ''
    param.appkey = window.GLOB.appkey || ''
@@ -456,7 +479,7 @@
   */
  getLocalConfig (param) {
    param.userid = sessionStorage.getItem('UserID') || ''
    param.lang = localStorage.getItem('lang') || ''
    param.lang = param.lang || localStorage.getItem('lang') || ''
    param.SessionUid = localStorage.getItem('SessionUid') || ''
    param.LoginUID = sessionStorage.getItem('LoginUID') || ''
    param.appkey = window.GLOB.appkey || ''
@@ -476,7 +499,7 @@
   */
  getCacheConfig (param) {
    param.userid = sessionStorage.getItem('UserID') || ''
    param.lang = localStorage.getItem('lang') || ''
    param.lang = param.lang || localStorage.getItem('lang') || ''
    param.SessionUid = localStorage.getItem('SessionUid') || ''
    param.LoginUID = sessionStorage.getItem('LoginUID') || ''
    param.appkey = window.GLOB.appkey || ''
@@ -518,6 +541,32 @@
          })
        })
      })
    } else if (window.GLOB.IndexDB) {
      return new Promise(resolve => {
        CacheUtils.getIndexDBMenuConfig(param.MenuID, param.userid).then(res => {
          resolve(res)
        }, () => {
          param = this.encryptParam(param)
          axios({
            url: `/webapi/dostars${param.func ? '/' + param.func : ''}`,
            method: 'post',
            data: param
          }).then(res => {
            if (res.status && window.GLOB.IndexDB) {
              let msg = {
                ...res,
                userid: param.userid,
                menuid: param.MenuID,
                id: param.MenuID + param.userid
              }
              CacheUtils.writeInIndexDB(msg)
            } else if (res.status) {
              window.GLOB.CacheMap.set(_param, res)
            }
            resolve(res)
          })
        })
      })
    } else if (window.GLOB.CacheMap.has(_param)) {
      return Promise.resolve(window.GLOB.CacheMap.get(_param))
    } else {
@@ -544,7 +593,7 @@
   */
  getLocalCacheConfig (param) {
    param.userid = sessionStorage.getItem('UserID') || ''
    param.lang = localStorage.getItem('lang') || ''
    param.lang = param.lang || localStorage.getItem('lang') || ''
    param.SessionUid = localStorage.getItem('SessionUid') || ''
    param.LoginUID = sessionStorage.getItem('LoginUID') || ''
    param.appkey = window.GLOB.appkey || ''
@@ -601,7 +650,7 @@
   */
  getSystemCacheConfig (param) {
    param.userid = param.userid || sessionStorage.getItem('UserID') || ''
    param.lang = localStorage.getItem('lang') || ''
    param.lang = param.lang || localStorage.getItem('lang') || ''
    param.SessionUid = localStorage.getItem('SessionUid') || ''
    param.LoginUID = param.LoginUID || sessionStorage.getItem('LoginUID') || ''
    param.appkey = window.GLOB.appkey || ''