salary-management-front/pc4mobx/hrmSalary/util/RSAUtil.js

33 lines
904 B
JavaScript

import loadjs from "loadjs";
const RSAEcrypt = (openRSA, param) => {
return new Promise((resolve, reject) => {
//异步加载ras文件
loadjs.isDefined("rsa") ? loadjs.ready("rsa", () => {
if (openRSA && openRSA == "1") {
Object.keys(param).forEach(key => {
param[key] = __RSAEcrypt__.rsa_data_encrypt(param[key]);
});
}
resolve(param);
}) : loadjs(["/js/rsa/jsencrypt.js", "/js/rsa/rsa.js"], "rsa", {
async: false,
success: () => {
if (openRSA && openRSA == "1") {
const callback = () => {
Object.keys(param).forEach(key => {
param[key] = __RSAEcrypt__.rsa_data_encrypt(param[key]);
});
resolve(param);
};
__RSAEcrypt__.initRsaCode(callback);
} else {
resolve(param);
}
}
});
});
};
export { RSAEcrypt };