diff --git a/jd_immortal.js b/jd_immortal.js index d7b6e504..72d02a00 100644 --- a/jd_immortal.js +++ b/jd_immortal.js @@ -1,6 +1,7 @@ /* 京东神仙书院 活动时间:2021-1-20至2021-2-5 +增加自动积分兑换京豆(条件默认为:至少700积分,1.4倍率) 暂不加入品牌会员,需要自行填写坐标,用于做逛身边好店任务 环境变量:JD_IMMORTAL_LATLON(经纬度) 示例:JD_IMMORTAL_LATLON={"lat":33.1, "lng":118.1} @@ -31,6 +32,8 @@ const notify = $.isNode() ? require('./sendNotify') : ''; const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; let jdNotify = true;//是否关闭通知,false打开通知推送,true关闭通知推送 const randomCount = $.isNode() ? 20 : 5; +let scoreToBeans = $.isNode()?(process.env.JD_IMMORTAL_SCORE || 700):$.getdata('scoreToBeans') || 700; //兑换多少数量的京豆(20或者1000),0表示不兑换,默认兑换20京豆,如需兑换把0改成20或者1000,或者'商品名称'(商品名称放到单引号内)即可 + //IOS等用户直接用NobyDa的jd cookie let cookiesArr = [], cookie = '', message; if ($.isNode()) { @@ -58,6 +61,7 @@ const inviteCodes = [ $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', {"open-url": "https://bean.m.jd.com/bean/signIndex.action"}); return; } + console.log(`您设置的兑换积分下限为${scoreToBeans}`) for (let i = 0; i < cookiesArr.length; i++) { if (cookiesArr[i]) { cookie = cookiesArr[i]; @@ -195,11 +199,14 @@ function getHomeData(info = false) { } else { data = JSON.parse(data); if (data && data['retCode'] === "200") { - const {userCoinNum} = data.result + const {userCoinNum, userRemainScore} = data.result if (info) { $.earn = userCoinNum - $.coin } else { - console.log(`当前用户金币${userCoinNum}`) + console.log(`当前用户金币${userCoinNum},积分${userRemainScore}`) + if (userRemainScore) { + await getExchangeInfo() + } } $.coin = userCoinNum } else { @@ -217,6 +224,64 @@ function getHomeData(info = false) { }) } +function getExchangeInfo() { + return new Promise((resolve) => { + $.post(taskPostUrl('mcxhd_brandcity_exchangePage'), async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + data = JSON.parse(data); + if (data && data['retCode'] === "200") { + const {userRemainScore, exchageRate} = data.result + console.log(`当前用户兑换比率${exchageRate}`) + if (exchageRate === 1.4 && userRemainScore >= scoreToBeans) { + console.log(`已达到最大比率,去兑换`) + await exchange() + } + } else { + $.risk = true + console.log(`账号被风控,无法参与活动`) + message += `账号被风控,无法参与活动\n` + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }) + }) +} + +function exchange() { + return new Promise((resolve) => { + $.post(taskPostUrl('mcxhd_brandcity_exchange'), async (err, resp, data) => { + try { + if (err) { + console.log(`${JSON.stringify(err)}`) + console.log(`${$.name} API请求失败,请检查网路重试`) + } else { + data = JSON.parse(data); + if (data && data['retCode'] === "200") { + const {consumedUserScore, receivedJbeanNum} = data.result + console.log(`兑换成功,消耗${consumedUserScore}积分,获得${receivedJbeanNum}京豆`) + } else { + $.risk = true + console.log(`账号被风控,无法参与活动`) + message += `账号被风控,无法参与活动\n` + } + } + } catch (e) { + $.logErr(e, resp); + } finally { + resolve(); + } + }) + }) +} + function getTaskList(body = {}) { return new Promise(resolve => { diff --git a/jd_nian.js b/jd_nian.js index c29e1217..04ff6d3f 100644 --- a/jd_nian.js +++ b/jd_nian.js @@ -50,8 +50,8 @@ const inviteCodes = [ `cgxZaDXWZPCmiUa2akPVmFMI27K6antJzucULQPYNim_BPEW1Dwd@cgxZdTXtIrPYuAqfDgSpusxr97nagU6hwFa3TXxnqM95u3ib-xt4nWqZdz8@cgxZdTXtIO-O6QmYDVf67KCEJ19JcybuMB2_hYu8NSNQg0oS2Z_FpMce45g@cgxZdTXtILiLvg7OAASp61meehou4OeZvqbjghsZlc3rI5SBk7b3InUqSQ0@cgxZdTXtIumO4w2cDgSqvYcqHwjaAzLxu0S371Dh_fctFJtN0tXYzdR7JaY` ]; const pkInviteCodes = [ - 'IgNWdiLGaPadvlqJQnnKp27-YpAvKvSYNTSkTGvZylf_0wcvqD9EMkohEdI@IgNWdiLGaPaZskfACQyhgLSpZWps-WtQEW3McifY@IgNWdiLGaPaAvmHPAQf769XqjJjMyRirPzN9-AS-WHY9Y_G7t9Cwe5gdiI2qEvHU@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hJTS2SQzU0vulL0fHeULJaIfgqHFd7f_KY@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hLRjZBAJLHzBpcl18AeskNYctp-_w', - 'IgNWdiLGaPadvlqJQnnKp27-YpAvKvSYNTSkTGvZylf_0wcvqD9EMkohEdI@IgNWdiLGaPaZskfACQyhgLSpZWps-WtQEW3McifY@IgNWdiLGaPaAvmHPAQf769XqjJjMyRirPzN9-AS-WHY9Y_G7t9Cwe5gdiI2qEvHU@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hJTS2SQzU0vulL0fHeULJaIfgqHFd7f_KY@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hLRjZBAJLHzBpcl18AeskNYctp-_w' + 'IgNWdiLGaPadvlqJQnnKp27-YpAvKvSYNTSkTGvZylf_0wcvqD9EMkohEdI@IgNWdiLGaPaZskfACQyhgLSpZWps-WtQEW3McifY@IgNWdiLGaPaAvmHPAQf769XqjJjMyRirPzN9-AS-WHY9Y_G7t9Cwe5gdiI2qEvHU@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hJTS2SQzU0vulL0fHeULJaIfgqHFd7f_KY@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hLRjZBAJLHzBpcl18AeskNYctp-_w@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hLRjZBCduDyApZxg5BPuhRfnJvQsw', + 'IgNWdiLGaPadvlqJQnnKp27-YpAvKvSYNTSkTGvZylf_0wcvqD9EMkohEdI@IgNWdiLGaPaZskfACQyhgLSpZWps-WtQEW3McifY@IgNWdiLGaPaAvmHPAQf769XqjJjMyRirPzN9-AS-WHY9Y_G7t9Cwe5gdiI2qEvHU@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hJTS2SQzU0vulL0fHeULJaIfgqHFd7f_KY@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hLRjZBAJLHzBpcl18AeskNYctp-_w@IgNWdiLGaPYCeJUfsq18UNi5ln9xEZSPRdOue8Wl3hLRjZBCduDyApZxg5BPuhRfnJvQsw' ] !(async () => { await requireConfig();