255 lines
12 KiB
JavaScript
255 lines
12 KiB
JavaScript
/*
|
|
签到有礼beta v2.0.0
|
|
|
|
https://cjhy-isv.isvjcloud.com/sign/signActivity?activityId=4879ca4f9b4d4e9580ac09eca30b44ac
|
|
https://lzkj-isv.isvjd.com/prod/cc/interaction/v2/10023/1001/?activityId=1752260456689242113&shopId=1000001706
|
|
https://lzkj-isv.isvjcloud.com/prod/cc/interactsaas/index?activityType=10002&activityId=1764492473030377474&templateId=20201228083300lxqdsl011&nodeId=101001003&prd=cjwx
|
|
https://jinggeng-rc.isvjcloud.com/ql/front/showSign?id=9e80802c8dc9f04d018df48f286509c1&user_id=10028198
|
|
https://txzj-isv.isvjcloud.com/sign_in/home?a=UHpDWkVHNFhlTzhGZ2MrYUV3
|
|
|
|
export M_WX_SHOP_SIGN_URL=""
|
|
|
|
cron: 1 1 1 1 *
|
|
const $ = new Env("签到有礼beta");
|
|
*/
|
|
|
|
let mode = __dirname.includes('bear');
|
|
|
|
let activityUrl = decodeURIComponent(process.argv.splice(2)?.[0] || process.env.M_WX_SHOP_SIGN_URL);
|
|
|
|
if (mode) {
|
|
activityUrl = "https://lzkj-isv.isvjd.com/prod/cc/interaction/v2/10023/1001/?activityId=1763116670225666049&shopId=10034889";
|
|
activityUrl = "https://cjhy-isv.isvjcloud.com/sign/signActivity?activityId=4879ca4f9b4d4e9580ac09eca30b44ac";
|
|
activityUrl = "https://jinggeng-rc.isvjcloud.com/ql/front/showSign?id=9e80802c8dc9f04d018df48f286509c1&user_id=10028198";
|
|
activityUrl = "https://lzkj-isv.isvjcloud.com/prod/cc/interactsaas/index?activityType=10002&activityId=1764492473030377474&templateId=20201228083300lxqdsl011&nodeId=101001003&prd=cjwx";
|
|
activityUrl = "https://cjhy-isv.isvjcloud.com/sign/signActivity?activityId=4879ca4f9b4d4e9580ac09eca30b44ac";
|
|
activityUrl = "https://lzkj-isv.isvjcloud.com/prod/cc/interactsaas/index?activityType=10023&activityId=1752867173633544194&templateId=2023110802rlqd&nodeId=101001&prd=cjwx";
|
|
activityUrl = "https://txzj-isv.isvjcloud.com/sign_in/home?a=UHpDWkVHNFhlTzhGZ2MrYUV3";
|
|
activityUrl = "https://lzkj-isv.isvjcloud.com/sign/signActivity2?activityId=f6bfaa803f59453b897876ccccd08cef&venderId=1000084244&adsource=tg_storePage";
|
|
activityUrl = "https://txzj-isv.isvjcloud.com/sign_in/home?a=TUdPWlJXOFFlK29GZ2MrZUV3";
|
|
activityUrl = "https://lzkj-isv.isvjcloud.com/prod/cc/interactsaas/index?activityType=10040&activityId=1772829299506323457&templateId=20210518190900qrqd011&nodeId=101001&prd=cjwx";
|
|
activityUrl = "https://jingyun-rc.isvjcloud.com/h5/pages/SignIn/SignIn?id=2085faf335324522080865dbc20ba790&userId=1000007503";
|
|
activityUrl = "https://lzkj-isv.isvjcloud.com/prod/cc/interactsaas/index?activityType=10023&templateId=20210518190900rlqd011&activityId=1791052003950125057";
|
|
activityUrl = "https://cjhy-isv.isvjcloud.com/signNew/signActivity?activityId=08701a732a354db6881c2afc969b5301&venderId=1000469545";
|
|
}
|
|
const {
|
|
RunMode: I11llI1I,
|
|
UserMode: iilIilli
|
|
} = require("./bear");
|
|
I11llI1I.envInfo = {
|
|
"name": "M签到有礼",
|
|
"runName": "m_jd_wx_shopSign",
|
|
"version": "2.0.0"
|
|
};
|
|
let iIl1l1iI = process.env.M_WX_SHOP_SIGN_BEAN_GOODS ? process.env.M_WX_SHOP_SIGN_BEAN_GOODS : false,
|
|
li1Il1il = ["10001", "10002", "10003", "10004", "10023", "10040"];
|
|
process.env.M_WX_SIGN_ACTIVITY_TYPES ? process.env.M_WX_SIGN_ACTIVITY_TYPES.split(/[@,&|]/).forEach(i1Iii1I => li1Il1il.push(i1Iii1I)) : "";
|
|
class ill1ii1 extends iilIilli {
|
|
constructor(II1i1lI, iI1l11I1) {
|
|
super(II1i1lI, iI1l11I1);
|
|
}
|
|
async ["v2Sign"](i11lliI = true) {
|
|
let l111lii = await this.taskPostByJson("api/" + this.activityType + "/sign");
|
|
this.debug(l111lii);
|
|
if (l111lii && l111lii.code === 200) this.putMsg(l111lii.data?.["prizeName"] || "签到成功");else l111lii?.["message"]["includes"]("不是店铺会员") && i11lliI && (await this.bindWithVender(), await this.sign(false));
|
|
}
|
|
async ["signPost"](llll1i1I = true) {
|
|
let IllIlIIi = await this.hdbApi("signPost");
|
|
this.debug(IllIlIIi);
|
|
if (IllIlIIi && IllIlIIi.succ) {
|
|
IllIlIIi?.["result"]?.["awardRes"]?.["needSend"] && this.putMsg(IllIlIIi.result?.["awardRes"]?.["dmActivityLog"]?.["awardName"] || "空气");
|
|
let lI1ii1Il = IllIlIIi.result?.["signLog"]?.["continueCount"];
|
|
this.putMsg("已连续签到" + lI1ii1Il + "天");
|
|
return;
|
|
}
|
|
let iliIiili = IllIlIIi?.["message"];
|
|
if (llll1i1I && iliIiili?.["includes"]("关注店铺") && (await this.follow())) return await this.signPost(false);
|
|
this.putMsg(iliIiili);
|
|
this.wxStop(iliIiili);
|
|
return;
|
|
}
|
|
async ["userTask"]() {
|
|
await this.isvObfuscator();
|
|
if (this.mode === "txzj") {
|
|
if (!this.activityId) return this.putMsg("活动链接错误"), this.stop();
|
|
let lili1lil = await this.taskPost("front/jd_store_user_info", {
|
|
"token": this.isvToken
|
|
});
|
|
if (!lili1lil || lili1lil.code !== "success") {
|
|
let llliiIii = lili1lil.msg || "获取用户信息失败";
|
|
return this.putMsg(llliiIii), this.wxStop(llliiIii);
|
|
}
|
|
let I1iil1li = await this.taskPost("sign_in/receive_prize", {
|
|
"pid": this.activityId
|
|
});
|
|
this.debug(I1iil1li);
|
|
if (I1iil1li && I1iil1li.code === "success") {
|
|
this.putMsg("签到成功");
|
|
if (I1iil1li?.["data"]?.["prize_title"]) switch (I1iil1li?.["data"]?.["prize_title"]["type"]) {
|
|
case "coupon":
|
|
this.putMsg("优惠券");
|
|
break;
|
|
case "bean":
|
|
this.putMsg((I1iil1li.data.prize_title?.["prize_title"] || I1iil1li.data.prize_title?.["once_num"]) + "京豆");
|
|
break;
|
|
case "integral":
|
|
this.putMsg((I1iil1li.data.prize_title?.["prize_title"] || I1iil1li.data.prize_title?.["once_num"]) + "积分");
|
|
break;
|
|
case "goods":
|
|
this.putMsg("" + I1iil1li.data.prize_title.prize_name);
|
|
break;
|
|
default:
|
|
this.putMsg(JSON.stringify(I1iil1li?.["data"]?.["prize_title"]));
|
|
}
|
|
return;
|
|
}
|
|
let llIl1 = I1iil1li?.["msg"] || "签到失败";
|
|
this.putMsg(llIl1);
|
|
this.wxStop(llIl1);
|
|
return;
|
|
}
|
|
if (this.mode === "v2") {
|
|
await this.login();
|
|
await this.v2Sign();
|
|
|
|
let iIi1liIl = await this.taskPostByJson("api/" + this.activityType + "/calendar");
|
|
|
|
this.debug(iIi1liIl);
|
|
if (iIi1liIl && iIi1liIl.code === 200) {
|
|
let IlIIIiIl = iIi1liIl.data.continuousSignDays;
|
|
this.putMsg("已连续签到" + IlIIIiIl + "天");
|
|
}
|
|
return;
|
|
}
|
|
if (this.mode === "jinggeng") {
|
|
this.userId = this.userId || this.getQueryString(this.activityUrl, "userId");
|
|
this.activityId = this.activityId || this.getQueryString(this.activityUrl, "actId");
|
|
await this.setMixNick();
|
|
await this.jinggengShopInfo();
|
|
await this.taskPost("front/followShop", {
|
|
"userId": this.userId
|
|
});
|
|
let lliIiI11 = await this.jinggengApi("saveSignIn");
|
|
this.debug(lliIiI11);
|
|
if (lliIiI11 && lliIiI11.succ) {
|
|
if (lliIiI11?.["msg"]?.["includes"]("签到成功但不需要发奖")) this.putMsg("签到成功");else {
|
|
let li1iiiii = JSON.parse(lliIiI11.msg);
|
|
li1iiiii?.["isSendSucc"] ? this.putMsg(li1iiiii?.["actLogDto"]?.["remark"]) : this.putMsg("空气");
|
|
}
|
|
return;
|
|
}
|
|
let i11ll1Il = lliIiI11?.["msg"] || "签到失败";
|
|
this.putMsg(i11ll1Il);
|
|
this.wxStop(i11ll1Il);
|
|
return;
|
|
}
|
|
if (this.mode === "hdb") return await this.login(), await this.reportPVUV(), await this.loadFrontAct(), await this.signPost();
|
|
await this.getDefenseUrls();
|
|
if (li1Il1il.includes(this.activityType)) {
|
|
await this.login();
|
|
let lIi1ilI = ["10001", "10002", "10003", "10004"].includes(this.activityType) ? "api/task/sign/add" : "api/task/daySign/getSignClick",
|
|
ili11Ii1 = await this.lzkjApi(lIi1ilI);
|
|
this.debug(ili11Ii1);
|
|
if (ili11Ii1 && ili11Ii1.resp_code === 0) {
|
|
this.putMsg("签到成功");
|
|
let lIIiiil1 = ili11Ii1?.["data"]?.["prizeName"];
|
|
this.putMsg(lIIiiil1);
|
|
ili11Ii1.data && ili11Ii1.data?.["prizeName"] && ili11Ii1.data?.["prizeType"] === 3 && ili11Ii1.data?.["addressId"] && ili11Ii1.data?.["dayTime"] === this.formatDate(Date.now(), "yyyy-MM-dd") && (this.addressId = ili11Ii1.data.addressId, this.prizeName = ili11Ii1.data?.["prizeName"], await this.saveAddress());
|
|
return;
|
|
}
|
|
let ii11111l = ili11Ii1?.["resp_msg"] || "签到失败";
|
|
this.putMsg(ii11111l);
|
|
this.wxStop(ii11111l);
|
|
return;
|
|
}
|
|
await this.wxCommonInfo();
|
|
await this.getSimpleActInfoVo();
|
|
this.defenseUrls.length === 0 ? await this.getMyPing() : await this.initPinToken();
|
|
await this.accessLog();
|
|
this.isSevenDay = this.activityUrl?.["includes"]("sevenDay");
|
|
this.isCj = this.activityUrl?.["includes"]("//cjhy");
|
|
this.signNew = this.activityUrl?.["includes"]("signNew");
|
|
if (this.index === 0) {
|
|
let I1iIIl1 = await this.wxApi(this.isSevenDay ? "sign/sevenDay/wx/getActivity" : (this.signNew ? "signNew/wx/getActivity" : "sign/wx/getActivity"), {
|
|
"actId": this.activityId,
|
|
"venderId": this.venderId
|
|
});
|
|
|
|
this.debug(I1iIIl1);
|
|
if(I1iIIl1?.isOk) {
|
|
let jsondata = JSON.parse(I1iIIl1?.act?.giftJson);
|
|
iilIilli.activity.prizeList = jsondata.giftConditions;
|
|
}
|
|
|
|
if (!I1iIIl1 || !I1iIIl1.isOk) {
|
|
let l1l11lil = I1iIIl1?.["msg"] || "活动已结束";
|
|
this.putMsg(l1l11lil);
|
|
this.wxStop(l1l11lil);
|
|
} else {
|
|
let i1iI1I1i = I1iIIl1?.["act"]?.["startTime"],
|
|
liIiiIi = I1iIIl1?.["act"]?.["endTime"];
|
|
iilIilli.activity.startTime = i1iI1I1i;
|
|
iilIilli.activity.endTime = liIiiIi;
|
|
if (i1iI1I1i && i1iI1I1i > this.timestamp()) {
|
|
return this.putMsg("活动未开始"), this.stop();
|
|
}
|
|
if (liIiiIi && liIiiIi < this.timestamp()) return this.putMsg("活动已结束"), this.stop();
|
|
let llll1IIi = [];
|
|
if (this.isSevenDay) {
|
|
for (let l1i11lll of I1iIIl1?.["act"]?.["giftBean"]?.["giftConditions"] || []) {
|
|
l1i11lll.gift && (l1i11lll.gift.dayNum = l1i11lll.dayNum, llll1IIi.push(l1i11lll.gift));
|
|
}
|
|
} else {
|
|
if (I1iIIl1?.["act"]?.["wxSignActivityGiftBean"]?.["hasGiftEveryDay"] === "y") {
|
|
llll1IIi.push(I1iIIl1?.["act"]?.["wxSignActivityGiftBean"]?.["gift"]);
|
|
}
|
|
if (I1iIIl1?.["act"]?.["wxSignActivityGiftBean"]?.["giftConditions"]?.["length"] > 0) {
|
|
for (let lliIi1Ii of I1iIIl1?.["act"]?.["wxSignActivityGiftBean"]?.["giftConditions"] || []) {
|
|
lliIi1Ii.gift && (lliIi1Ii.gift.dayNum = lliIi1Ii.dayNum, llll1IIi.push(lliIi1Ii.gift));
|
|
}
|
|
}
|
|
}
|
|
llll1IIi = llll1IIi.filter(l1Iil11I => ["6", "7", "9", "13", "14", "15", "16"].includes(l1Iil11I.giftType) && !l1Iil11I.insufficient);
|
|
if (llll1IIi.length === 0) return this.putMsg("垃圾或领完"), this.stop();
|
|
if (iIl1l1iI && llll1IIi.filter(ili111I1 => ["6", "7", "13", "14", "15", "16"].includes(ili111I1.giftType)).length === 0) return this.putMsg("垃圾或领完"), this.stop();
|
|
}
|
|
}
|
|
this.debug(this.isSevenDay ? "sign/sevenDay/wx/signUp" : (this.signNew ? "signNew/wx/signUp" : "sign/wx/signUp"));
|
|
let Ili1lIi = await this.wxApi(this.isSevenDay ? "sign/sevenDay/wx/signUp" : (this.signNew ? "signNew/wx/signUp" : "sign/wx/signUp"), {
|
|
"actId": this.activityId,
|
|
"pin": this.secretPin
|
|
});
|
|
this.debug(Ili1lIi);
|
|
if (Ili1lIi && Ili1lIi.isOk) {
|
|
this.putMsg("签到成功");
|
|
let I1lllii1 = this.isSevenDay ? Ili1lIi.signResult?.["gift"] : Ili1lIi.gift,
|
|
IIiiI11I = "";
|
|
if (I1lllii1) {
|
|
let iiIIlII = this.isSevenDay ? Ili1lIi.signResult?.["gift"]?.["giftName"] : Ili1lIi?.["gift"]?.["giftName"],
|
|
I1i111iI = this.isCj ? Ili1lIi?.["signResult"]?.["send"] ? "" : "(已发完)" : Ili1lIi?.["isSend"] ? "" : "(已发完)";
|
|
IIiiI11I = "" + iiIIlII + I1i111iI;
|
|
this.addressId = Ili1lIi?.["addressId"];
|
|
if (Ili1lIi?.["needWriteAddress"] === "y" && this.addressId) {
|
|
this.prizeName = iiIIlII;
|
|
await this.saveAddress();
|
|
}
|
|
}
|
|
this.putMsg(IIiiI11I);
|
|
return;
|
|
}
|
|
let il1liII1 = Ili1lIi?.["msg"] || Ili1lIi?.["errMsg"] || "签到失败";
|
|
this.putMsg(il1liII1);
|
|
this.wxStop(il1liII1);
|
|
}
|
|
}
|
|
I11llI1I.activity = {
|
|
"activityUrl": activityUrl
|
|
};
|
|
I11llI1I.TaskClass = ill1ii1;
|
|
I11llI1I.run({
|
|
"whitelist": ["1-100000"],
|
|
"main_thread": 5,
|
|
"wxProxyCheck": 2,
|
|
"wxProxySmart": 2
|
|
});
|