king
2024-10-15 68b6626ece8b94c1faa091ee3811e09c4af6d28f
src/api/index.js
@@ -47,6 +47,18 @@
        okText: '知道了',
        onOk: () => {
          window.GLOB.$error = false
          localStorage.removeItem('UserID')
          localStorage.removeItem('LoginUID')
          localStorage.removeItem('User_Name')
          localStorage.removeItem('Full_Name')
          localStorage.removeItem('avatar')
          localStorage.removeItem('dataM')
          localStorage.removeItem('localDataM')
          localStorage.removeItem('debug')
          localStorage.removeItem('role_id')
          localStorage.removeItem('mk_user_type')
          sessionStorage.clear()
          if (!!(window.history && window.history.pushState)) {
            window.history.replaceState(null, null, window.location.href.split('#')[0] + '#/login')
@@ -98,6 +110,25 @@
  }
  /**
   * @description 使用dostar接口,跳过验证
   * @param {Object} param 查询及提交参数
   */
  loginAndRedirect (param) {
    let url = ''
    if (process.env.NODE_ENV === 'production') {
      url = document.location.origin + '/zh-CN/Home/LoginAndRedirect'
    } else {
      url = window.GLOB.location + '/zh-CN/Home/LoginAndRedirect'
    }
    return axios({
      url: url,
      method: 'post',
      data: qs.stringify(param)
    })
  }
  /* @description 直接请求
   * @description 微信业务请求 原接口 'wxpay/getaccesstoken'
   */
  // wxAccessToken (appId, domain = '') {
@@ -706,6 +737,65 @@
    param.LoginUID = param.LoginUID || sessionStorage.getItem('LoginUID') || ''
    param.appkey = window.GLOB.appkey || ''
    if (param.$backend) {
      delete param.$backend
      let id = ''
      if (cache) {
        id = param.data[0].id
        if (window.GLOB.CacheMap.has(id)) {
          return Promise.resolve(window.GLOB.CacheMap.get(id))
        }
      }
      param.username = sessionStorage.getItem('User_Name') || ''
      param.fullname = sessionStorage.getItem('Full_Name') || ''
      param.s_debug = window.GLOB.debugger ? 'Y' : ''
      param.data_md5 = param.data_md5 || ''
      param.time_limit = param.time_limit || 0
      let url = '/webapi/exstars'
      if (param.rduri) {
        param.rduri = param.rduri.replace(/dostars/ig, 'exstars')
        if (!window.GLOB.transfer) {
          url = param.rduri
          delete param.rduri
        }
      }
      if (param.$type) {
        url += '/' + param.$type
      }
      delete param.$type
      param = this.encryptParam(param)
      return new Promise((resolve) => {
        axios({
          url: url,
          method: 'post',
          data: JSON.stringify(param)
        }).then(res => {
          if (res.mksqls) {
            res.mksqls.forEach(n => {
              n = n.replace(/(UNION ALL\s+)?SELECT obj_name='[\S\s]+sub_field=''\s+/ig, '')
              window.mkInfo(n)
            })
          }
          if (res.ErrCode === 'version_error') {
            res.ErrCode = '-2'
            MKEmitter.emit('reloadTabs')
          }
          if (res.status && id) {
            window.GLOB.CacheMap.set(id, res)
          }
          resolve(res)
        })
      })
    }
    let url = '/webapi/dostars'
    if (param.rduri && !window.GLOB.transfer) { // positecgroup
      url = param.rduri
@@ -973,6 +1063,52 @@
          }
        })
      })
    } else if (param.$backend) {
      delete param.$backend
      let url = '/webapi/exstars'
      if (param.rduri) {
        param.rduri = param.rduri.replace(/dostars/ig, 'exstars')
        if (!window.GLOB.transfer) {
          url = param.rduri
          delete param.rduri
        }
      }
      if (param.$type) {
        url += '/' + param.$type
      }
      delete param.$type
      param.username = sessionStorage.getItem('User_Name') || ''
      param.fullname = sessionStorage.getItem('Full_Name') || ''
      param.s_debug = window.GLOB.debugger ? 'Y' : ''
      param.data_md5 = param.data_md5 || ''
      param.time_limit = param.time_limit || 0
      param = this.encryptParam(param)
      return new Promise((resolve) => {
        axios({
          url: url,
          method: 'post',
          data: JSON.stringify(param),
          requestId
        }).then(res => {
          if (res.mksqls) {
            res.mksqls.forEach(n => {
              n = n.replace(/(UNION ALL\s+)?SELECT obj_name='[\S\s]+sub_field=''\s+/ig, '')
              window.mkInfo(n)
            })
          }
          if (res.ErrCode === 'version_error') {
            res.ErrCode = '-2'
            MKEmitter.emit('reloadTabs')
          }
          resolve(res)
        })
      })
    } else {
      let url = '/webapi/dostars'
      if (param.rduri && (!window.GLOB.transfer || /https:\/\/sso.mk9h.cn/.test(param.rduri)) && /\/dostars/.test(param.rduri) && param.func !== 'webapi_ChangeUser') {
@@ -992,6 +1128,27 @@
  }
  /**
   * @description 清空后端缓存
   */
  cacheInterface (param) {
    param.appkey = window.GLOB.appkey || ''
    let url = '/webapi/excache'
    if (param.rduri && !window.GLOB.transfer) {
      url = param.rduri
      delete param.rduri
    }
    param = this.encryptParam(param)
    return axios({
      url: url,
      method: 'post',
      data: JSON.stringify(param),
    })
  }
  /**
   * @description 上传base64
   * @param {String} base64 base64图片编码
   */