From 977ce3d348f898d64ea240c8397b83d3e1cc5bb4 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 18 十二月 2019 09:23:05 +0800 Subject: [PATCH] 2019-12-18 --- src/api/index.js | 210 ++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 162 insertions(+), 48 deletions(-) diff --git a/src/api/index.js b/src/api/index.js index bdfc7bf..026eddc 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -1,6 +1,8 @@ import axios from 'axios' import qs from 'qs' +import {notification } from 'antd' +// axios.defaults.baseURL = 'http://qingqiumarket.cn' axios.defaults.crossDomain = true // axios.defaults.headers.common['token'] = 'token' axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8' @@ -8,7 +10,7 @@ axios.interceptors.request.use((config) => { config.method = 'post' - if (config.url.includes('LoginAndRedirect')) { + if (config.url.includes('LoginAndRedirect') || config.url.includes('getjsonresult')) { config.data = qs.stringify(config.data) } else { config.headers.token = sessionStorage.getItem('TOKEN') || '' @@ -20,18 +22,40 @@ return Promise.reject(error) }) +const setCurrentUrl = () => { + if (!!(window.history && window.history.pushState)) { + window.history.replaceState(null, null, window.location.href.split('#')[0] + '#/login') + window.location.reload() + } +} + +let GlobMap = new Map() + axios.interceptors.response.use((response) => { - return Promise.resolve(response.data) + if (response.data.ErrCode === 'LoginError') { + setCurrentUrl() + // return Promise.resolve(response.data) + } else { + return Promise.resolve(response.data) + } }, (error) => { + notification.error({ + className: 'notification-custom-error', + bottom: 0, + message: '鐘舵�佺爜-' + error.response.status + '锛岃鑱旂郴绠$悊鍛�', + placement: 'bottomRight', + duration: 15 + }) return Promise.reject(error) }) class Api { constructor() { + let service = window.GLOB.service ? (/\/$/.test(window.GLOB.service) ? window.GLOB.service : window.GLOB.service + '/') : '' if (process.env.NODE_ENV === 'production') { - axios.defaults.baseURL = document.location.origin + '/MKWMS' + axios.defaults.baseURL = document.location.origin + '/' + service } else { - axios.defaults.baseURL = 'http://127.0.0.1:8888' + // axios.defaults.baseURL = 'http://127.0.0.1:8888' } } @@ -40,9 +64,9 @@ */ systemauth (appId, timestamp) { return axios({ - // url: 'http://minkesoft.com/mksepc/webapi/dostar', - url: '/mksepc', + url: '/webapi/dostar', data: { + rduri: 'http://minkesoft.com/mksepc/webapi/dostar', func: 'sEmpowerCloud_Get_LinkUrl', userid: '', AppID: appId, @@ -51,41 +75,29 @@ }) } - // /** - // * @description 鐧诲綍绯荤粺 - // */ - // loginsystem (username, password) { - // return axios({ - // url: 'http://qingqiumarket.cn/MKWMS/zh-CN/Home/LoginAndRedirect', - // data: { - // Username: username, - // Password: password - // } - // }) - // } - /** * @description 鐧诲綍绯荤粺 */ loginsystem (username, password) { return axios({ - url: '/login', + url: '/zh-CN/Home/LoginAndRedirect', data: { Username: username, Password: password } }) } - + /** - * @description 鐧诲嚭绯荤粺 + * @description 鐧诲綍绯荤粺, 鑾峰彇鐢ㄦ埛淇℃伅 */ - logoutsystem () { + getusermsg (username, password) { return axios({ - url: '/dostar', + url: 'webapi/getjsonresult', data: { - func: 'logout', - userid: sessionStorage.getItem('UserID') + DBT: 'proc', + DBS: 'webapi_login', + DBP: JSON.stringify({ 'UserName': username, 'Password': password }) } }) } @@ -95,9 +107,9 @@ */ resetpassword (originpwd, newpwd) { return axios({ - url: '/dostar', + url: '/local/dostar', data: { - func: 'ResetPassword', + func: 's_PwdUpt', userid: sessionStorage.getItem('UserID'), OriginPwd: originpwd, NewPwd: newpwd @@ -106,30 +118,87 @@ } /** - * @description 鑾峰彇涓昏彍鍗曟暟鎹� + * @description 鑾峰彇鎴栦慨鏀圭郴缁熼厤缃紝澧炲姞appkey */ - getMainMenuData () { + getSystemConfig (param) { + param.userid = sessionStorage.getItem('UserID') + param.lang = localStorage.getItem('lang') || '' + param.SessionUid = sessionStorage.getItem('SessionUid') || '' + param.LoginUID = sessionStorage.getItem('LoginUID') || '' + param.appkey = window.GLOB.appkey || '' + if (window.GLOB.mainSystemApi) { + param.rduri = window.GLOB.mainSystemApi + } + return axios({ - url: '/dostar', - data: { - func: 'GetTopMenus', - userid: sessionStorage.getItem('UserID') - } + url: '/webapi/dostar', + data: param }) } /** - * @description 鑾峰彇瀛愯彍鍗曟暟鎹� - * @param {String} menuId 涓昏彍鍗旾d + * @description 鑾峰彇鎴栦慨鏀规湰鍦伴厤缃紝澧炲姞appkey */ - getSubMenuData (menuId) { + getLocalConfig (param) { + param.userid = sessionStorage.getItem('UserID') + param.lang = localStorage.getItem('lang') || '' + param.SessionUid = sessionStorage.getItem('SessionUid') || '' + param.LoginUID = sessionStorage.getItem('LoginUID') || '' + param.appkey = window.GLOB.appkey || '' + return axios({ - url: '/dostar', - data: { - func: 'GetSubMenus', - userid: sessionStorage.getItem('UserID'), - ParentID: menuId - } + url: '/webapi/dostar', + data: param + }) + } + + /** + * @description 鑾峰彇绯荤粺閰嶇疆锛屼紭鍏堜粠缂撳瓨涓彇鍊硷紝澧炲姞appkey + */ + getSystemCacheConfig (param) { + param.userid = sessionStorage.getItem('UserID') + param.lang = localStorage.getItem('lang') || '' + param.SessionUid = sessionStorage.getItem('SessionUid') || '' + param.LoginUID = sessionStorage.getItem('LoginUID') || '' + param.appkey = window.GLOB.appkey || '' + if (window.GLOB.mainSystemApi) { + param.rduri = window.GLOB.mainSystemApi + } + + let _param = JSON.parse(JSON.stringify(param)) // 缂撳瓨鏍¢獙锛屽幓闄ゆ椂闂村拰鍔犲瘑瀛楃 + delete _param.timestamp + delete _param.secretkey + _param = JSON.stringify(_param) + + if (GlobMap.has(_param)) { + return Promise.resolve(GlobMap.get(_param)) + } else { + return new Promise(resolve => { + axios({ + url: '/webapi/dostar', + data: param + }).then(res => { + + GlobMap.set(_param, res) + resolve(res) + }) + }) + } + } + + /** + * @description 鑾峰彇涓氬姟閫氱敤鎺ュ彛 + */ + genericInterface (param) { + param.userid = sessionStorage.getItem('UserID') + param.lang = localStorage.getItem('lang') || '' + param.SessionUid = sessionStorage.getItem('SessionUid') || '' + param.LoginUID = sessionStorage.getItem('LoginUID') || '' + // param.appkey = window.GLOB.appkey || '' + + return axios({ + url: '/webapi/dostar', + data: param }) } @@ -139,7 +208,7 @@ */ getMainConfigsData (MenuNo) { return axios({ - url: '/dostar', + url: '/local/dostar', data: { func: 'GetMainConfigs', userid: sessionStorage.getItem('UserID'), @@ -154,7 +223,7 @@ */ getMainTableData (MenuNo, pageIndex = 1, pageSize = 10, orderColumn = '', orderType = '', search) { return axios({ - url: '/dostar', + url: '/local/dostar', data: { func: 'GetMainData', userid: sessionStorage.getItem('UserID'), @@ -174,7 +243,7 @@ */ getModelFormData (MenuNo) { return axios({ - url: '/dostar', + url: '/local/dostar', data: { func: 'getModelFormData', userid: sessionStorage.getItem('UserID'), @@ -190,10 +259,55 @@ setActionSubmit (param) { param.userid = sessionStorage.getItem('UserID') return axios({ - url: '/dostar', + url: '/local/dostar', data: param }) } + + /** + * @description 閫氱敤鎺ュ彛 + * @param {Object} param 鏌ヨ鍙婃彁浜ゅ弬鏁� + */ + commonInterface (param) { + param.userid = sessionStorage.getItem('UserID') + param.lang = localStorage.getItem('lang') || '' + param.SessionUid = sessionStorage.getItem('SessionUid') || '' + param.LoginUID = sessionStorage.getItem('LoginUID') || '' + param.BID = param.BID || '' + param.debug = param.debug || '' + return axios({ + url: '/webapi/dostar', + data: param + }) + } + + /** + * @description 閫氱敤鎺ュ彛(鎻愪氦) + * @param {Object} param 鏌ヨ鍙婃彁浜ゅ弬鏁� + */ + submitInterface (param) { + param.userid = sessionStorage.getItem('UserID') + param.lang = localStorage.getItem('lang') || '' + param.SessionUid = sessionStorage.getItem('SessionUid') || '' + param.LoginUID = sessionStorage.getItem('LoginUID') || '' + return axios({ + url: '/webapi/dostar', + data: param + }) + } + + // /** + // * @description 鐧诲嚭绯荤粺 + // */ + // logoutsystem () { + // return axios({ + // url: '/local/dostar', + // data: { + // func: 'logout', + // userid: sessionStorage.getItem('UserID') + // } + // }) + // } } export default new Api() \ No newline at end of file -- Gitblit v1.8.0