asp-smart-ui-plus-test
Version:
A Component Library for Vue 3
97 lines (92 loc) • 2.98 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue = require('vue');
function useOneForLogin({
cmpassAppId,
ACTIVITY_ID,
SUCCESS_CODE = "0000",
channelId,
preSignRSA,
uniTokenValidate,
userStore
}) {
const hasVal = (str) => str && str !== "undefined" && str !== "";
const error = vue.ref("");
const result = vue.ref(null);
const user = userStore();
const userInfo = vue.reactive({
phoneNumMask: vue.computed(() => user.phoneNumMask),
usessionid: vue.computed(() => user.usessionid)
});
const oneForLogin = async (callback, failCallback) => {
if (!hasVal(cmpassAppId)) {
error.value = "\u53C2\u6570\u7F3A\u5931";
failCallback && failCallback(error.value);
return;
}
const cmpassVersion = "1.2";
const preSign = YDRZ.getSign(cmpassAppId, cmpassVersion);
let sign = "";
try {
const preSignResult = await preSignRSA({ preSign });
if (!preSignResult) {
error.value = "\u83B7\u53D6\u7B7E\u540D\u5931\u8D25";
failCallback && failCallback(error.value);
return;
}
const { data, result: preSignResultData } = preSignResult;
if (preSignResultData && preSignResultData.resultCode === SUCCESS_CODE) {
sign = data.sign || "";
YDRZ.getTokenInfo({
data: {
sign,
version: cmpassVersion,
appId: cmpassAppId,
openType: "1",
expandParams: "",
isTest: ""
},
success: async (resp) => {
const { code, message, token, userInformation } = resp;
if (code === "000000") {
const getTokenResult = await uniTokenValidate({
token,
userInformation,
activityId: ACTIVITY_ID,
channelId
});
const { result: getTokenResultData } = getTokenResult;
if (getTokenResultData && getTokenResultData.resultCode === SUCCESS_CODE) {
result.value = getTokenResult;
callback && callback(getTokenResult);
} else {
failCallback && failCallback(getTokenResultData.resultDes);
error.value = getTokenResultData.resultDes;
}
} else {
failCallback && failCallback(message);
error.value = message;
}
},
error: (err) => {
failCallback && failCallback(err.code);
error.value = err.code;
}
});
} else {
failCallback && failCallback(preSignResultData.resultDes);
error.value = preSignResultData.resultDes;
}
} catch (e) {
error.value = "\u83B7\u53D6\u624B\u673A\u53F7\u7801\u5931\u8D25";
failCallback && failCallback(error.value);
}
};
return {
oneForLogin,
error,
result,
userInfo
};
}
exports.useOneForLogin = useOneForLogin;