()
| 228 | } |
| 229 | |
| 230 | async sign() { |
| 231 | const actId = await this.detectSignActId(); |
| 232 | if (!actId) { |
| 233 | this.summary.sign = "未找到签到活动ID"; |
| 234 | this.log(this.summary.sign); |
| 235 | return; |
| 236 | } |
| 237 | try { |
| 238 | const info = await axios.get(`${this.app.apiBase}/marketing/sign-info?marketing_activity_id=${actId}`, { |
| 239 | headers: this.authHeaders(), |
| 240 | timeout: 30000, |
| 241 | }); |
| 242 | if (info.data?.code === 200) { |
| 243 | const d = info.data.data || {}; |
| 244 | const activityName = d.activity?.name || actId; |
| 245 | this.log(`签到活动: ${activityName} 已签=${d.is_sign_today || 0} 累计=${d.sign_day || 0}天`); |
| 246 | if (Number(d.is_sign_today) === 1) { |
| 247 | this.summary.sign = `今日已签到 累计=${d.sign_day || 0}天`; |
| 248 | return; |
| 249 | } |
| 250 | } else { |
| 251 | this.log(`签到状态查询: ${info.data?.msg || JSON.stringify(info.data)}`); |
| 252 | } |
| 253 | |
| 254 | const { data } = await axios.get(`${this.app.apiBase}/marketing/new-sign?marketing_activity_id=${actId}`, { |
| 255 | headers: this.authHeaders(), |
| 256 | timeout: 30000, |
| 257 | }); |
| 258 | const gifts = Array.isArray(data?.data?.gifts) |
| 259 | ? data.data.gifts.map((item) => `${item.num ?? item.gift_num ?? ""}${item.asset_name || item.name || ""}`.trim()).filter(Boolean) |
| 260 | : []; |
| 261 | this.summary.sign = `${data?.msg || "签到返回"}${gifts.length ? `: ${gifts.join("、")}` : ""}`; |
| 262 | this.log(this.summary.sign); |
| 263 | } catch (e) { |
| 264 | this.summary.sign = `签到失败: ${e.message || e}`; |
| 265 | this.log(this.summary.sign); |
| 266 | } |
| 267 | } |
| 268 | |
| 269 | async run() { |
| 270 | try { |
no test coverage detected