mtl-js-sdk
Version:
ynf-fw-mtl-api
103 lines (95 loc) • 2.28 kB
JavaScript
let UCGConfig;
let _FAIL_CODE = -1;
const defCon = {
default_tp: 'none',
time_out: 5000,
header: {}
};
const USER_INFO_KEY = 'ncc_userinfo';
function writeUCGConfig({ appcode, config, success, fail, complete }) {
if (!!appcode && typeof appcode === 'string') {
if (!UCGConfig) {
UCGConfig = {};
}
UCGConfig[appcode] = {
...defCon,
...config,
appcode
};
let data = {
domain: 'mtl_ucg_config',
key: appcode,
data: UCGConfig[appcode]
};
mtl.setStorage(data);
let result = {
code: '200',
message: 'success',
data: config
};
success && success(result);
complete && complete(result);
} else {
let result = {
code: _FAIL_CODE,
message: 'appcode is empty!',
data: null
};
fail && fail(result);
complete && complete(result);
}
}
function readUCGConfig({ appcode, success, fail, complete }) {
if (!!appcode && typeof appcode === 'string') {
if (!UCGConfig) {
let res = {
domain: 'mtl_ucg_config',
key: appcode,
success: function (res) {
UCGConfig = {};
UCGConfig[appcode] = res;
successCallback(UCGConfig[appcode], success, complete)
},
error: function (error) {
let result = {
code: _FAIL_CODE,
message: 'This configuration does not exist',
data: UCGConfig[appcode]
};
fail && fail(result);
complete && complete(result);
}
};
mtl.getStorage(res);
} else {
successCallback(UCGConfig[appcode], success, complete)
}
}
}
function successCallback(config, success, complete) {
let result = {
code: '200',
message: 'success',
data: config
};
success && success(result.data);
complete && complete(result);
}
function setLoginInfo(appCode, info) {
if (appCode) {
console.log('loginInfo set fail!');
return;
}
info.expiretime = getTime() + 2 * 60 * 60 * 1000;
localStorage.setItem(USER_INFO_KEY + appCode, JSON.stringify(info || null));
}
function getLoginInfo(clear = false, appCode) {
let loginInfo = localStorage.getItem(USER_INFO_KEY + appCode) || null;
loginInfo = JSON.parse(loginInfo);
return loginInfo;
}
function getToken(appCode) {
let loginInfo = getLoginInfo(appCode) || {};
return loginInfo.token;
}
export default { writeUCGConfig, readUCGConfig, setLoginInfo, getToken, getLoginInfo };