* @description 开始任务
()
| 5244 | * @description 开始任务 |
| 5245 | */ |
| 5246 | async function startTask() { |
| 5247 | // 未完成任务 |
| 5248 | if (taskConfig.some((task) => task.active && !task.status)) { |
| 5249 | // 开始任务 |
| 5250 | taskStatus.value = TaskStatusType.START; |
| 5251 | try { |
| 5252 | // 学习 |
| 5253 | await study(); |
| 5254 | // 同屏任务 |
| 5255 | if (settings[SettingType.SAME_TAB]) { |
| 5256 | // 关闭窗口 |
| 5257 | closeFrame(); |
| 5258 | // 窗口不存在 |
| 5259 | frame.exist = false; |
| 5260 | } |
| 5261 | } |
| 5262 | catch (err) { |
| 5263 | if (err instanceof Error) { |
| 5264 | // 提示 |
| 5265 | createTip(err.message); |
| 5266 | // 错误 |
| 5267 | error(err.message); |
| 5268 | return; |
| 5269 | } |
| 5270 | // 提示 |
| 5271 | createTip(err); |
| 5272 | // 错误 |
| 5273 | error(err); |
| 5274 | } |
| 5275 | } |
| 5276 | // 刷新任务 |
| 5277 | taskStatus.value = TaskStatusType.FINISH; |
| 5278 | log('已完成'); |
| 5279 | // 创建提示 |
| 5280 | createTip('完成学习!'); |
| 5281 | // 远程推送 |
| 5282 | if (settings[SettingType.REMOTE_PUSH]) { |
| 5283 | // 推送 |
| 5284 | const res = await pushModal({ |
| 5285 | title: '学习推送', |
| 5286 | to: userinfo.nick, |
| 5287 | content: [ |
| 5288 | '学习强国, 学习完成!', |
| 5289 | `当天积分: ${getHighlightHTML(todayScore.value)} 分`, |
| 5290 | `总积分: ${getHighlightHTML(totalScore.value)} 分`, |
| 5291 | ...taskConfig.map((task) => getProgressHTML(task.title, task.currentScore, task.dayMaxScore)), |
| 5292 | ], |
| 5293 | type: 'success', |
| 5294 | }, pushToken.value); |
| 5295 | createTip(`学习推送${res ? '成功' : '失败'}!`); |
| 5296 | } |
| 5297 | } |
| 5298 | // 已在等待 |
| 5299 | let flag = false; |
| 5300 | // 自动答题 |
no test coverage detected