From 88f5adf20ac7f7891c1282a4deb578f148e47c96 Mon Sep 17 00:00:00 2001 From: guyuexuan <2651919937@qq.com> Date: Mon, 11 Jan 2021 17:16:16 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BA=AC=E5=96=9C=E5=86=9C=E5=9C=BA]=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E3=80=90=E9=A2=84=E6=B5=8B=E3=80=91?= =?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8C=E6=8C=89=E7=85=A7=E4=BB=8A=E6=97=A5?= =?UTF-8?q?=E6=80=BB=E8=8E=B7=E5=BE=97=E6=B0=B4=E6=BB=B4=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E9=A2=84=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jd_jxnc.js | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/jd_jxnc.js b/jd_jxnc.js index 14825d1c..40ee058a 100644 --- a/jd_jxnc.js +++ b/jd_jxnc.js @@ -46,6 +46,7 @@ const openUrl = `openjd://virtual?params=${encodeURIComponent('{ "category": "ju let subTitle = '', message = '', option = {'open-url': openUrl}; // 消息副标题,消息正文,消息扩展参数 const JXNC_API_HOST = 'https://wq.jd.com/'; +$.detail = []; // 今日明细列表 $.helpTask = null; $.allTask = []; // 任务列表 $.info = {}; // 用户信息 @@ -265,6 +266,7 @@ function getTaskList() { try { const res = data.match(/try\{whyour\(([\s\S]*)\)\;\}catch\(e\)\{\}/)[1]; const {detail, msg, task = [], retmsg, ...other} = JSON.parse(res); + $.detail = detail; $.helpTask = task.filter(x => x.tasktype === 2)[0] || {eachtimeget: 0, limit: 0}; $.allTask = task.filter(x => x.tasktype !== 3 && x.tasktype !== 2 && parseInt(x.left) > 0); $.info = other; @@ -362,11 +364,22 @@ function getMessage(endInfo, startInfo) { const need = endInfo.target - endInfo.score; const get = endInfo.modifyscore; // 本地变更获得水滴 const leaveGet = startInfo.modifyscore; // 离开时获得水滴 - message += `【水滴】本次水滴${get} 离线获得${leaveGet} 还需水滴${need}\n`; - if (get > 0 || leaveGet > 0) { - notifyBool = notifyBool && notifyLevel >= 1; - const day = parseInt(need / (get + leaveGet)); + let dayGet = 0; // 今日共获取水滴数 + if ($.detail) { + let dayTime = new Date(new Date().toLocaleDateString()).getTime() / 1000; // 今日 0 点时间戳(10位数) + $.detail.forEach(function (item, index) { + if (item.time >= dayTime && item.score) { + dayGet += item.score; + } + }); + } + message += `【水滴】本次获得${get} 离线获得${leaveGet} 今日获得${dayGet} 还需水滴${need}\n`; + if (get > 0 || leaveGet > 0 || dayGet > 0) { + const day = parseInt(need / (dayGet > 0 ? dayGet : (get + leaveGet))); message += `【预测】还需 ${day} 天\n`; + } + if (get > 0 || leaveGet > 0) { // 本次 或 离线 有水滴 + notifyBool = notifyBool && notifyLevel >= 1; } else { notifyBool = notifyBool && notifyLevel >= 2; }