kydc/review/review-result/review-result.wxml
2026-05-03 21:44:16 +08:00

92 lines
3.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<view class="page">
<view class="bg-orb orb1"></view>
<view class="bg-orb orb2"></view>
<view class="hero">
<view class="badge">
<view class="badge-inner">🏆</view>
</view>
<view class="hero-copy">
<text class="headline">复习结果</text>
<text class="subtitle">本次复习已完成</text>
</view>
</view>
<view wx:if="{{error}}" class="empty-state">
<text class="empty-title">{{error}}</text>
<text class="empty-subtitle">可重新进入结果页,或再完成一次复习会话</text>
</view>
<view wx:elif="{{!total}}" class="empty-state">
<text class="empty-title">暂无复习结果</text>
<text class="empty-subtitle">请先完成一次复习会话</text>
</view>
<view wx:else class="grid">
<view class="hero-card">
<view class="hero-card-head">
<view>
<text class="metric-label">正确率</text>
<view class="metric-row">
<text class="metric-big">{{accuracy}}</text>
<text class="metric-unit">%</text>
</view>
</view>
<view class="ring">✓</view>
</view>
</view>
<view class="mini-card">
<view class="mini-head"><text class="mini-ico">⏱</text><text class="mini-label">耗时</text></view>
<text class="mini-value">{{timeUsed}}</text>
</view>
<view class="mini-card">
<view class="mini-head"><text class="mini-ico">📚</text><text class="mini-label">总题数</text></view>
<text class="mini-value">{{total}}</text>
</view>
<view class="breakdown">
<view class="break-item">
<text class="break-num cyan">{{mastered}}</text>
<text class="break-label">已掌握</text>
</view>
<view class="break-item">
<text class="break-num pink">{{reviewNeeded}}</text>
<text class="break-label">需加强</text>
</view>
<view class="break-item">
<text class="break-num green">{{improved}}</text>
<text class="break-label">进步题目</text>
</view>
<view class="break-item">
<text class="break-num amber">{{regressed}}</text>
<text class="break-label">退步题目</text>
</view>
</view>
<view wx:if="{{clozeResults.length}}" class="cloze-panel">
<text class="panel-title">填空逐空反馈</text>
<view wx:for="{{clozeResults}}" wx:for-item="item" wx:for-index="itemIndex" wx:key="record_id" class="cloze-result-card">
<view class="cloze-result-head">
<text class="cloze-result-index">题目 {{itemIndex + 1}}</text>
<text class="cloze-result-status {{item.is_correct ? 'ok' : 'bad'}}">{{item.is_correct ? '正确' : '错误'}}</text>
</view>
<view wx:if="{{item.prompt_text}}" class="cloze-result-prompt">{{item.prompt_text}}</view>
<view class="cloze-result-body">
<view wx:for="{{item.blanks}}" wx:for-item="blank" wx:for-index="blankIndex" wx:key="index" class="cloze-blank-line">
<text class="cloze-result-answer">空 {{blankIndex + 1}}{{blank.user_answer || '(空)'}}</text>
<text class="cloze-result-answer">答案:{{blank.correct_answers.join(' / ') || '—'}}</text>
</view>
</view>
</view>
</view>
</view>
<view class="actions">
<button class="primary-btn" bindtap="restart">再来一组</button>
<button class="secondary-btn" bindtap="goHome">返回首页</button>
</view>
</view>