From d0132cef1d20bf842aac229e9ee62548be0b5816 Mon Sep 17 00:00:00 2001 From: lxk0301 <778732665@qq.com> Date: Thu, 26 Nov 2020 13:02:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=9C=E4=B8=9C=E5=B7=A5=E5=8E=82=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=20=E6=97=A7=E7=94=A8=E6=88=B7=E4=B8=94=E6=9C=AA?= =?UTF-8?q?=E9=80=89=E8=B4=AD=E5=95=86=E5=93=81=E7=9A=84=E8=B4=A6=E5=8F=B7?= =?UTF-8?q?=E5=8F=AF=E5=81=9A=E4=BB=BB=E5=8A=A1=E4=B8=8E=E6=94=B6=E9=9B=86?= =?UTF-8?q?=E7=94=B5=E5=8A=9B=20=E4=BC=98=E5=8C=96=E6=97=A7=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E4=B8=94=E6=9C=AA=E9=80=89=E8=B4=AD=E5=95=86=E5=93=81?= =?UTF-8?q?=E7=9A=84=E8=B4=A6=E5=8F=B7=E6=8A=95=E5=85=A5=E7=94=B5=E5=8A=9B?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jd_dreamFactory.js | 2 +- jd_jdfactory.js | 44 +++++++++++++++++++++++++++++++++++++------- 2 files changed, 38 insertions(+), 8 deletions(-) diff --git a/jd_dreamFactory.js b/jd_dreamFactory.js index 23ba9583..20cdfcb3 100644 --- a/jd_dreamFactory.js +++ b/jd_dreamFactory.js @@ -290,7 +290,7 @@ function hireAward() { message += `【打工电力】:收取成功\n` } else { console.log(`打工电力:收取失败,${data.msg}`) - message += `【打工电力】:收取失败,${data.msg}\n` + message += `【打工电力】收取失败,${data.msg}\n` } } else { console.log(`京东服务器返回空数据`) diff --git a/jd_jdfactory.js b/jd_jdfactory.js index ed7b63ff..4bc5b756 100644 --- a/jd_jdfactory.js +++ b/jd_jdfactory.js @@ -2,7 +2,7 @@ * @Author: lxk0301 https://github.com/lxk0301 * @Date: 2020-11-25 18:19:21 * @Last Modified by: lxk0301 - * @Last Modified time: 2020-11-26 10:20:02 + * @Last Modified time: 2020-11-26 12:58:02 */ /* 东东工厂,不是京喜工厂 @@ -85,7 +85,9 @@ const inviteCodes = [`P04z54XCjVWnYaS5u2ak7ZCdan1Bdd2GGiWvC6_uERj`, 'P04z54XCjVW async function jdFactory() { await jdfactory_getHomeData(); await helpFriends(inviteCodes); - if ($.newUser === 1 || ($.newUser !==1 && $.haveProduct === 2)) return + // $.newUser !==1 && $.haveProduct === 2,老用户但未选购商品 + // $.newUser === 1新用户 + if ($.newUser === 1) return await jdfactory_collectElectricity();//收集产生的电量 await jdfactory_getTaskDetail(); await doTask(); @@ -117,6 +119,7 @@ async function algorithm() { $.haveProduct = data.data.result.haveProduct; $.userName = data.data.result.userName; $.newUser = data.data.result.newUser; + wantProduct = $.isNode() ? (process.env.FACTORAY_WANTPRODUCT_NAME ? process.env.FACTORAY_WANTPRODUCT_NAME : wantProduct) : ($.getdata('FACTORAY_WANTPRODUCT_NAME') ? $.getdata('FACTORAY_WANTPRODUCT_NAME') : wantProduct); if (data.data.result.factoryInfo) { let { totalScore, useScore, produceScore, remainScore, couponCount, name } = data.data.result.factoryInfo console.log(`\n已选商品:${name}`); @@ -130,11 +133,10 @@ async function algorithm() { message += `已选商品剩余量:${couponCount}\n`; message += `当前总电量:${remainScore * 1 + useScore * 1}\n`; message += `当前完成度:${((remainScore * 1 + useScore * 1)/(totalScore * 1)).toFixed(2) * 100}%\n`; - wantProduct = $.isNode() ? (process.env.FACTORAY_WANTPRODUCT_NAME ? process.env.FACTORAY_WANTPRODUCT_NAME : wantProduct) : ($.getdata('FACTORAY_WANTPRODUCT_NAME') ? $.getdata('FACTORAY_WANTPRODUCT_NAME') : wantProduct); if (wantProduct) { console.log(`BoxJs或环境变量提供的心仪商品:${wantProduct}\n`); await jdfactory_getProductList(true); - let wantProductSkuId = '', fullScore; + let wantProductSkuId = ''; for (let item of $.canMakeList) { if (item.name.indexOf(wantProduct) > - 1) { totalScore = item['fullScore'] * 1; @@ -167,6 +169,33 @@ async function algorithm() { console.log(`故不一次性投入电力,一直放到蓄电池累计\n`); } } + } else { + console.log(`\n此账号${$.index}${$.nickName}暂未选择商品\n`); + if (wantProduct) { + console.log(`BoxJs或环境变量提供的心仪商品:${wantProduct}\n`); + await jdfactory_getProductList(true); + let wantProductSkuId = '', name, totalScore, couponCount, remainScore; + for (let item of $.canMakeList) { + if (item.name.indexOf(wantProduct) > - 1) { + totalScore = item['fullScore'] * 1; + couponCount = item.couponCount; + name = item.name; + } + if (item.name.indexOf(wantProduct) > - 1 && item.couponCount > 0) { + wantProductSkuId = item.skuId; + } + } + if (wantProductSkuId && (($.batteryValue * 1) >= (totalScore))) { + console.log(`\n提供的心仪商品${name}目前数量:${couponCount},且当前总电量为:${$.batteryValue * 1},【满足】兑换此商品所需总电量:${totalScore}`); + console.log(`请去活动页面更换成心仪商品并手动投入电量兑换\n`); + $.msg($.name, '', `京东账号${$.index}${$.nickName}\n您提供的心仪商品${name}目前数量:${couponCount}\n当前总电量为:${$.batteryValue * 1}\n【满足】兑换此商品所需总电量:${totalScore}\n请去活动页面选择此心仪商品并手动投入电量兑换`); + await notify.sendNotify(`${$.name} - 账号${$.index} - ${$.nickName}`, `您提供的心仪商品${name}目前数量:${couponCount}\n当前总电量为:${$.batteryValue * 1}\n【满足】兑换此商品所需总电量:${totalScore}\n请去活动页面选择此心仪商品并手动投入电量兑换`); + } else { + console.log(`您心仪商品${name}\n当前数量为:${couponCount}\n兑换所需电量为:${totalScore}\n您当前总电量为:${$.batteryValue * 1}\n不满足兑换心仪商品的条件\n`) + } + } else { + console.log(`BoxJs或环境变量暂未提供心仪商品\n如需兑换心仪商品,请提供心仪商品名称\n`); + } } } else { console.log(`异常:${JSON.stringify(data)}`) @@ -350,7 +379,8 @@ function jdfactory_collectElectricity() { if (safeGet(data)) { data = JSON.parse(data); if (data.data.bizCode === 0) { - console.log(`成功收集${data.data.result.electricityValue}电量,当前蓄电池总电量:${data.data.result.batteryValue}\n`) + console.log(`成功收集${data.data.result.electricityValue}电量,当前蓄电池总电量:${data.data.result.batteryValue}\n`); + $.batteryValue = data.data.result.batteryValue; } } } @@ -484,9 +514,9 @@ function jdfactory_getHomeData() { // $.msg($.name, '暂未开启活动', `京东账号${$.index}${$.nickName}暂未开启${$.name}活动\n请去京东APP->搜索'玩一玩'->东东工厂->开启\n或点击弹窗即可到达${$.name}活动`, {'open-url': 'openjd://virtual?params=%7B%20%22category%22:%20%22jump%22,%20%22des%22:%20%22m%22,%20%22url%22:%20%22https://h5.m.jd.com/babelDiy/Zeus/2uSsV2wHEkySvompfjB43nuKkcHp/index.html%22%20%7D'}); } if ($.newUser !== 1 && $.haveProduct === 2) { - console.log(`此京东账号${$.index}${$.nickName}暂未选购商品\n现在为您从库存里面现有数量中选择一商品`); + console.log(`此京东账号${$.index}${$.nickName}暂未选购商品\n现在也能为您做任务和收集免费电力`); // $.msg($.name, '暂未选购商品', `京东账号${$.index}${$.nickName}暂未选购商品\n请去京东APP->搜索'玩一玩'->东东工厂->选购一件商品\n或点击弹窗即可到达${$.name}活动`, {'open-url': 'openjd://virtual?params=%7B%20%22category%22:%20%22jump%22,%20%22des%22:%20%22m%22,%20%22url%22:%20%22https://h5.m.jd.com/babelDiy/Zeus/2uSsV2wHEkySvompfjB43nuKkcHp/index.html%22%20%7D'}); - await jdfactory_getProductList();//选购商品 + // await jdfactory_getProductList();//选购商品 } } else { console.log(`异常:${JSON.stringify(data)}`)