const CryptoJS =require('crypto-js')const JSEncrypt =require('jsencrypt');getAesKey=function(l){
l = l ||32;for(var n ="ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678", t = n.length, e ="", a =0; a < l; a++)
e += n.charAt(Math.floor(Math.random()* t));return e
}
privaKey =getAesKey(16)newEncrypt=function(l){var n = CryptoJS.enc.Utf8.parse(privaKey), t = CryptoJS.enc.Utf8.parse(privaKey), e = CryptoJS.enc.Utf8.parse(l), a = CryptoJS.AES.encrypt(e, n,{iv: t,mode: CryptoJS.mode.CBC,padding: CryptoJS.pad.Pkcs7
});return CryptoJS.enc.Base64.stringify(a.ciphertext)}newEncryptKeys=function(l){var n = CryptoJS.enc.Utf8.parse("a145b909b96732be"), t = CryptoJS.enc.Utf8.parse("a145b909b96732be"), e = CryptoJS.enc.Utf8.parse(l), a = CryptoJS.AES.encrypt(e, n,{iv: t,mode: CryptoJS.mode.CBC,padding: CryptoJS.pad.Pkcs7
});return CryptoJS.enc.Base64.stringify(a.ciphertext)}cmdRSAEncrypt=function(l){var n =newJSEncrypt();return n.setPublicKey("MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq5kq78xPZdZyDaDV+MoZEl1X2E+ckq46uAa8U5dS11RPql3EA4fi2M0FvzwlcQGj9OY765xCBzLreyOlq8I+/I30p9rJLX7bSlvuoNAVwE0ZhhvKlgOk6CRn0k2RBaUY7KnL8v4h4B4VIYikeHGZKCod8bdK9NjVXgz+vMFTipzvguiq4C1eFpwc3e5TatWaKapg8HeaEAr58RCUe4OA/9fj58E6Q7Eu9OQJvSO7kOu1O7mE9zAu4ueH46LEEiCCjc2y0sPjFfApUcscDKgTpagpl2iZg8e19f41UnNo7j218REy2WUxar2Wd3vF1aN4rp6BRtbqrTPUnN9qCnM54wIDAQAB"),
n.encrypt(l.toString())}var n ={"pageNo":1,"pageSize":9,"sold":"sold","commodityComClass":""}var f ={"body": n,"head":{"userCode":null,"channelCode":"101","transTime":1693466711355,"transToken":"","customerId":null,"transSerialNumber":""}}functionget_params(){varC=newEncrypt(JSON.stringify(f));var x =cmdRSAEncrypt(privaKey)var b =newEncryptKeys(CryptoJS.SHA256(JSON.stringify(n)).toString())var headers ={key: x,keys: b
}return[C, headers, privaKey]}newDecoto=function(l, privaKey){var n = CryptoJS.enc.Base64.parse(l), t = CryptoJS.enc.Utf8.parse(privaKey), e = CryptoJS.enc.Utf8.parse(privaKey), a = CryptoJS.lib.CipherParams.create({ciphertext: n
});return CryptoJS.AES.decrypt(a, t,{iv: e,mode: CryptoJS.mode.CBC,padding: CryptoJS.pad.Pkcs7
}).toString(CryptoJS.enc.Utf8)}functionget_data(returns, privaKey){var n = returns.replace(/[\r\n]/g,"")returnnewDecoto(n, privaKey);}