From c7aece35a62b6e91fd98a625bf0e53f64bfbd18d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期四, 17 八月 2023 16:22:15 +0800 Subject: [PATCH] 2023-08-17 --- src/api/index.js | 117 ++++++++++++++++++++++++++-------------------------------- 1 files changed, 53 insertions(+), 64 deletions(-) diff --git a/src/api/index.js b/src/api/index.js index 607c1ae..abcfa0b 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -5,9 +5,9 @@ import CryptoJS from 'crypto-js' import jsSHA from 'jssha' import moment from 'moment' + import Utils from '@/utils/utils.js' import CacheUtils from './cacheutils' -import options from '@/store/options.js' window.GLOB.IndexDB = null window.GLOB.OuterToken = {} @@ -61,7 +61,7 @@ }, (error) => { let response = error.response || '' - if (response && (!response.data || !response.data.errors)) { // 杩囨护鏃疯鎶ラ敊淇℃伅 + if (response && response.status) { notification.error({ className: 'notification-custom-error', bottom: 0, @@ -241,7 +241,7 @@ Password: '', check_code: checkcode, way_no: 'sms_vcode', - systemType: options.sysType, + systemType: window.GLOB.sysType, login_city: sessionStorage.getItem('city') || '', login_id_address: sessionStorage.getItem('ipAddress') || '', kei_id: window.btoa(window.encodeURIComponent(window.GLOB.host)), @@ -252,11 +252,11 @@ let url = '/webapi/dologon' if (isCloud) { param.debug = 'Y' - if (options.cloudServiceApi) { - param.rduri = options.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon') + if (window.GLOB.cloudServiceApi) { + param.rduri = window.GLOB.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon') } } else if (window.GLOB.mainSystemApi) { - if (options.sysType !== 'cloud' && window.GLOB.systemType !== 'production') { + if (window.GLOB.sysType !== 'cloud' && window.GLOB.systemType !== 'production') { param.linkurl = window.GLOB.linkurl } param.rduri = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon') @@ -277,7 +277,7 @@ let param = { // func: 'webapi_login', UserName: username, - systemType: options.sysType, + systemType: window.GLOB.sysType, Type: 'S', login_city: sessionStorage.getItem('city') || '', login_id_address: sessionStorage.getItem('ipAddress') || '', @@ -307,11 +307,11 @@ if (isCloud) { param.debug = 'Y' - if (options.cloudServiceApi) { - param.rduri = options.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon') + if (window.GLOB.cloudServiceApi) { + param.rduri = window.GLOB.cloudServiceApi.replace(/\/webapi(.*)/, '/webapi/dologon') } } else if (window.GLOB.mainSystemApi) { - if (options.sysType !== 'cloud' && window.GLOB.systemType !== 'production') { + if (window.GLOB.sysType !== 'cloud' && window.GLOB.systemType !== 'production') { param.linkurl = window.GLOB.linkurl } param.rduri = window.GLOB.mainSystemApi.replace(/\/webapi(.*)/, '/webapi/dologon') @@ -333,29 +333,23 @@ if (!menuid) return let date = moment().format('YYYY-MM-DD HH:mm:ss') let _data = data ? JSON.stringify(data) : '' + let userid = sessionStorage.getItem('UserID') || '' - CacheUtils.writeCacheInIndexDB({menuid, CreateDate: date, LongParam: _data}) + CacheUtils.writeCacheInIndexDB({menuid: md5(menuid + userid), CreateDate: date, LongParam: _data}) } getLCacheConfig (menuid, minutes) { return new Promise((resolve, reject) => { - if (window.GLOB.IndexDB) { - let limit = minutes ? moment().subtract(minutes, 'minutes').format('YYYY-MM-DD HH:mm:ss') : '' - CacheUtils.getIndexDBCacheConfig(menuid, limit).then(res => { - if (res && res.LongParam) { - let _data = JSON.parse(res.LongParam) - if (_data.length === 0) { - resolve() - } else { - resolve(_data) - } - } else { - resolve() - } - }) - } else { - resolve() - } + let limit = minutes ? moment().subtract(minutes, 'minutes').format('YYYY-MM-DD HH:mm:ss') : '' + let userid = sessionStorage.getItem('UserID') || '' + + CacheUtils.getIndexDBCacheConfig(md5(menuid + userid)).then(res => { + if (res && res.LongParam) { + resolve({data: JSON.parse(res.LongParam), valid: !limit || res.CreateDate > limit}) + } else { + resolve({data: null, valid: false}) + } + }) }) } @@ -463,14 +457,14 @@ */ getCloudConfig (param) { param.lang = param.lang || sessionStorage.getItem('lang') || '' - param.appkey = window.GLOB.appkey || '' + param.appkey = param.appkey || window.GLOB.appkey || '' param.SessionUid = localStorage.getItem('SessionUid') || '' - param.userid = sessionStorage.getItem('CloudUserID') || '' - param.LoginUID = sessionStorage.getItem('CloudLoginUID') || '' + param.userid = param.userid || sessionStorage.getItem('CloudUserID') || '' + param.LoginUID = param.LoginUID || sessionStorage.getItem('CloudLoginUID') || '' param = this.encryptParam(param) - let url = options.cloudServiceApi ? options.cloudServiceApi : '/webapi/dostars' + let url = window.GLOB.cloudServiceApi ? window.GLOB.cloudServiceApi : '/webapi/dostars' if (param.func) { url = url + '/' + param.func } @@ -485,26 +479,26 @@ /** * @description 鑾峰彇鎴栦慨鏀圭郴缁熼厤缃紝澧炲姞appkey */ - // getSystemFuncs (time) { - // let param = { - // func: 's_get_func_base_sso', - // update_date: time, - // userid: sessionStorage.getItem('UserID') || '', - // lang: sessionStorage.getItem('lang') || '', - // SessionUid: localStorage.getItem('SessionUid') || '', - // LoginUID: sessionStorage.getItem('LoginUID') || '', - // appkey: window.GLOB.appkey - // } + getSystemFuncs (time) { + let param = { + func: 's_get_func_base_sso', + update_date: time, + userid: sessionStorage.getItem('UserID') || '', + lang: sessionStorage.getItem('lang') || '', + SessionUid: localStorage.getItem('SessionUid') || '', + LoginUID: sessionStorage.getItem('LoginUID') || '', + appkey: window.GLOB.appkey + } - // let url = window.GLOB.mainSystemApi || '/webapi/dostars' - // param = this.encryptParam(param) + let url = window.GLOB.mainSystemApi || '/webapi/dostars' + param = this.encryptParam(param) - // return axios({ - // url: `${url}/${param.func}`, - // method: 'post', - // data: JSON.stringify(param) - // }) - // } + return axios({ + url: `${url}/${param.func}`, + method: 'post', + data: JSON.stringify(param) + }) + } /** * @description 鑾峰彇鎴栦慨鏀圭郴缁熼厤缃紝澧炲姞appkey @@ -517,8 +511,8 @@ param.appkey = param.appkey || window.GLOB.appkey let url = '/webapi/dostars' - if (sessionStorage.getItem('isEditState') === 'true' && options.cloudServiceApi) { // 缂栬緫鐘舵�侊紝涓斿瓨鍦ㄤ簯绔湴鍧� - url = options.cloudServiceApi + if (window.GLOB.mkHS && window.GLOB.cloudServiceApi) { // HS涓嬶紝涓斿瓨鍦ㄤ簯绔湴鍧� + url = window.GLOB.cloudServiceApi param.userid = sessionStorage.getItem('CloudUserID') || '' param.LoginUID = sessionStorage.getItem('CloudLoginUID') || '' } else if (window.GLOB.mainSystemApi) { @@ -549,9 +543,9 @@ param.appkey = param.appkey || window.GLOB.appkey || '' let url = '/webapi/dostars' - if (sessionStorage.getItem('isEditState') === 'true') { // 缂栬緫鐘舵�侊紝鍗曠偣鐧诲綍鏈嶅姟鍣ㄤ负浜戠 - if (options.cloudServiceApi) { // 瀛樺湪浜戠鍦板潃鏃讹紝浣跨敤浜戠绯荤粺鍙傛暟 - url = options.cloudServiceApi + if (window.GLOB.mkHS) { // HS涓嬶紝鍗曠偣鐧诲綍鏈嶅姟鍣ㄤ负浜戠 + if (window.GLOB.cloudServiceApi) { // 瀛樺湪浜戠鍦板潃鏃讹紝浣跨敤浜戠绯荤粺鍙傛暟 + url = window.GLOB.cloudServiceApi param.userid = sessionStorage.getItem('CloudUserID') || '' param.LoginUID = sessionStorage.getItem('CloudLoginUID') || '' } @@ -770,7 +764,7 @@ } else { let _param = { UserName: token.username, - systemType: options.sysType, + systemType: window.GLOB.sysType, login_city: sessionStorage.getItem('city') || '', device_id: token.appkey || '', timestamp: moment().format('YYYY-MM-DD HH:mm:ss'), @@ -838,14 +832,9 @@ return new Promise(resolve => this.visitOuterSystem(param, resolve)) } - if (['sPC_Get_TableData', 'sPC_Get_TableData_debug', 'sPC_TableData_InUpDe', 'sPC_TableData_InUpDe_debug', 'sPC_Get_structured_data'].includes(param.func)) { - if (sessionStorage.getItem('isEditState') === 'true') { - param.username = sessionStorage.getItem('CloudUserName') || '' - param.fullname = sessionStorage.getItem('CloudFullName') || '' - } else { - param.username = sessionStorage.getItem('User_Name') || '' - param.fullname = sessionStorage.getItem('Full_Name') || '' - } + if (['sPC_TableData_InUpDe', 'sPC_TableData_InUpDe_debug'].includes(param.func)) { + param.username = sessionStorage.getItem('User_Name') || '' + param.fullname = sessionStorage.getItem('Full_Name') || '' } let login = false -- Gitblit v1.8.0