MCPcopy Create free account
hub / github.com/smallfawn/QLScriptPublic / run

Method run

wxapp/jingjianx_all.js:391–444  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

389 }
390
391 async run() {
392 const result = {
393 appName: this.app.name,
394 shopName: this.shop.shopName,
395 loginShopName: "",
396 member: false,
397 memberText: "",
398 assets: { coin: 0, integral: 0, ticket: 0, coupon: 0 },
399 sign: "未执行",
400 };
401
402 const cached = this.getCachedToken();
403 if (cached) {
404 this.token = cached.token || "";
405 this.isMember = !!cached.isMember;
406 this.member = cached.member || null;
407 this.loginShopName = cached.shopName || "";
408 $.log(`${this.prefix()} 使用缓存token ${shortToken(this.token)}`);
409 if (!(await this.checkToken())) {
410 this.clearToken();
411 $.log(`${this.prefix()} 缓存token失效,重新登录`);
412 }
413 }
414
415 if (!this.token) await this.login();
416 if (!this.token) {
417 result.sign = "登录失败";
418 $.log(`${this.prefix()} 结果=${result.sign}`);
419 return result;
420 }
421
422 const memberText = this.member
423 ? `${this.member.nickName || this.member.name || this.member.memberName || "member"}${this.member.phone ? ` ${maskPhone(this.member.phone)}` : ""}`
424 : "非会员";
425 const assets = this.isMember ? await this.getAssets() : result.assets;
426 result.loginShopName = this.loginShopName || this.shop.shopName;
427 result.member = this.isMember;
428 result.memberText = memberText;
429 result.assets = assets;
430
431 $.log(
432 `${this.prefix()} 查询: 登录门店=${result.loginShopName} member=${this.isMember} ${memberText} 代币=${assets.coin} 积分=${assets.integral} 彩票=${assets.ticket} 优惠券=${assets.coupon}`
433 );
434
435 if (!this.isMember) {
436 result.sign = "非会员跳过";
437 $.log(`${this.prefix()} 签到: ${result.sign}`);
438 return result;
439 }
440
441 result.sign = await this.sign();
442 $.log(`${this.prefix()} 签到: ${result.sign}`);
443 return result;
444 }
445
446 async checkToken() {
447 try {

Callers 1

jingjianx_all.jsFile · 0.45

Calls 10

getCachedTokenMethod · 0.95
prefixMethod · 0.95
checkTokenMethod · 0.95
clearTokenMethod · 0.95
loginMethod · 0.95
getAssetsMethod · 0.95
signMethod · 0.95
shortTokenFunction · 0.70
maskPhoneFunction · 0.70
logMethod · 0.45

Tested by

no test coverage detected