MCPcopy Create free account
hub / github.com/Semporia/Scripts / exchangeProNotify

Function exchangeProNotify

jd_dreamFactory.js:1253–1294  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1251
1252//商品可兑换时的通知
1253async function exchangeProNotify() {
1254 await GetShelvesList();
1255 let exchangeEndTime, exchangeEndHours, nowHours;
1256 //脚本运行的UTC+8时区的时间戳
1257 let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset()*60*1000 + 8*60*60*1000);
1258 if ($.shelvesList && $.shelvesList.length > 0) console.log(`\n 商品名 兑换状态`)
1259 for (let shel of $.shelvesList) {
1260 console.log(`${shel['name']} ${shel['exchangeStatus'] === 1 ? '未兑换' : shel['exchangeStatus'] === 2 ? '已兑换' : '兑换超时'}`)
1261 if (shel['exchangeStatus'] === 1) {
1262 exchangeEndTime = shel['exchangeEndTime'] * 1000;
1263 $.picture = shel['picture'];
1264 // 兑换截止时间点
1265 exchangeEndHours = new Date(exchangeEndTime + new Date().getTimezoneOffset()*60*1000 + 8*60*60*1000).getHours();
1266 //兑换截止时间(年月日 时分秒)
1267 $.exchangeEndTime = new Date(exchangeEndTime + new Date().getTimezoneOffset()*60*1000 + 8*60*60*1000).toLocaleString('zh', {hour12: false});
1268 //脚本运行此时的时间点
1269 nowHours = nowTimes.getHours();
1270 } else if (shel['exchangeStatus'] === 3) {
1271 //兑换超时
1272 }
1273 }
1274 if (exchangeEndTime) {
1275 //比如兑换(超时)截止时间是2020/12/8 09:20:04,现在时间是2020/12/6
1276 if (nowTimes < exchangeEndTime) {
1277 // 一:在兑换超时这一天(2020/12/8 09:20:04)的前3小时内通知(每次运行都通知)
1278 let flag = true;
1279 if ((exchangeEndTime - nowTimes.getTime()) <= 3600000 * 3) {
1280 let expiredTime = parseFloat(((exchangeEndTime - nowTimes.getTime()) / (60*60*1000)).toFixed(1))
1281 $.msg($.name, ``, `【京东账号${$.index}】${$.nickName}\n【生产商品】${$.productName}${expiredTime}小时后兑换超时\n【兑换截止时间】${$.exchangeEndTime}\n请速去京喜APP->首页->好物0元造进行兑换`, {'open-url': jxOpenUrl, 'media-url': $.picture})
1282 // if ($.isNode()) await notify.sendNotify(`${$.name} - 京东账号${$.index} - ${$.nickName}`, `【京东账号${$.index}】${$.nickName}\n【生产商品】${$.productName}${(exchangeEndTime - nowTimes) / 60*60*1000}分钟后兑换超时\n【兑换截止时间】${$.exchangeEndTime}\n请速去京喜APP->首页->好物0元造进行兑换`, { url: jxOpenUrl })
1283 if ($.isNode()) allMessage += `【京东账号${$.index}】${$.nickName}\n【生产商品】${$.productName}${expiredTime}小时后兑换超时\n【兑换截止时间】${$.exchangeEndTime}\n请速去京喜APP->首页->好物0元造进行兑换${$.index !== cookiesArr.length ? '\n\n' : ''}`
1284 flag = false;
1285 }
1286 //二:在可兑换的时候,0,2,4等等小时通知一次
1287 if (nowHours % 2 === 0 && flag) {
1288 $.msg($.name, ``, `【京东账号${$.index}】${$.nickName}\n【生产商品】${$.productName}已可兑换\n【兑换截止时间】${$.exchangeEndTime}\n请速去京喜APP->首页->好物0元造进行兑换`, {'open-url': jxOpenUrl, 'media-url': $.picture})
1289 // if ($.isNode()) await notify.sendNotify(`${$.name} - 京东账号${$.index} - ${$.nickName}`, `【京东账号${$.index}】${$.nickName}\n【生产商品】${$.productName}已可兑换\n【兑换截止时间】${$.exchangeEndTime}\n请速去京喜APP->首页->好物0元造进行兑换`, { url: jxOpenUrl })
1290 if ($.isNode()) allMessage += `【京东账号${$.index}】${$.nickName}\n【生产商品】${$.productName}已可兑换\n【兑换截止时间】${$.exchangeEndTime}\n请速去京喜APP->首页->好物0元造进行兑换${$.index !== cookiesArr.length ? '\n\n' : ''}`
1291 }
1292 }
1293 }
1294}
1295async function showMsg() {
1296 return new Promise(async resolve => {
1297 message += `【收取自己零件】${$.pickUpMyselfComponent ? `获得${$.pickEle}电力` : `今日已达上限`}\n`;

Callers 1

jdDreamFactoryFunction · 0.85

Calls 4

GetShelvesListFunction · 0.85
logMethod · 0.45
msgMethod · 0.45
isNodeMethod · 0.45

Tested by

no test coverage detected