()
| 265 | } |
| 266 | |
| 267 | async signIn() { |
| 268 | try { |
| 269 | const monthInfo = await this.request("marketing/cusSign/v1/getUserSignInfo", { |
| 270 | signMonth: formatMonth(), |
| 271 | }, "GET"); |
| 272 | const signList = Array.from(new Set(monthInfo.data?.signDateList || [])); |
| 273 | $.log(`账号[${this.index}] 签到记录: 本月${signList.length}天 连续${monthInfo.data?.continuousSignDays || 0}天`); |
| 274 | |
| 275 | const justSign = await this.request("marketing/sign/woBeiCus/v1/justSign", {}, "POST", { allowAnyCode: true }); |
| 276 | if (justSign.code !== 200 && /已签|签到/.test(String(justSign.message || ""))) { |
| 277 | $.log(`账号[${this.index}] 今日已签到`); |
| 278 | return; |
| 279 | } |
| 280 | if (justSign.code !== 200) throw new Error(justSign.message || JSON.stringify(justSign)); |
| 281 | if (justSign.data === 0 || justSign.data === "0") { |
| 282 | $.log(`账号[${this.index}] 今日已签到`); |
| 283 | return; |
| 284 | } |
| 285 | |
| 286 | const callback = await this.request("marketing/v1/client-sign/sign-callback", { |
| 287 | enterpriseNo: ENTERPRISE_NO, |
| 288 | userId: this.userId, |
| 289 | }, "GET", { allowAnyCode: true }); |
| 290 | if (callback.code === 200) { |
| 291 | const rewards = Array.isArray(callback.data) ? callback.data : []; |
| 292 | const energy = rewards.find((item) => String(item.rewardType) === "1" || String(item.rewardType) === "2"); |
| 293 | $.log(`账号[${this.index}] 签到成功: +${energy?.rewardValue || justSign.data || "未知"}能量`); |
| 294 | } else { |
| 295 | $.log(`账号[${this.index}] 签到回调失败: ${callback.message || callback.code}`); |
| 296 | } |
| 297 | } catch (e) { |
| 298 | const message = e.message || e; |
| 299 | if (/已签|今日已签到|重复/.test(String(message))) { |
| 300 | $.log(`账号[${this.index}] 今日已签到`); |
| 301 | return; |
| 302 | } |
| 303 | $.log(`账号[${this.index}] 签到失败: ${message}`); |
| 304 | if (isTokenError(message)) this.removeCachedToken(); |
| 305 | } |
| 306 | } |
| 307 | |
| 308 | async getTaskList() { |
| 309 | const result = await this.request("marketing/sign/marketing/v1/cus/get-user-task-list", { |
no test coverage detected