feat(timer): 训练时长低于阈值不记录并明确提示
- config.js 新增 minRecordSeconds: 20 阈值配置,改配置即可调整门槛 - timer.js: finishTraining/_onCircuitComplete 低时长不播完成语音; _saveAndShowCompletion 兜底判断,任何入口都不会把短时训练落库; 新增 _showNotRecorded: 不保存记录、不更新连胜,复用完成弹窗展示实际秒数 - timer.wxml/wxss: 完成弹窗新增"未计入记录"提示行(门槛说明), 未记录时隐藏"查看记录/分享"按钮,只留"再来一次+回到首页" - 修复状态残留: 未记录后点"再来一次",下次正常完成不会误显示"未计入记录"
This commit is contained in:
+12
-1
@@ -172,6 +172,15 @@
|
||||
<text class="streak-text">连续打卡 {{completionStreak}} 天</text>
|
||||
</view>
|
||||
|
||||
<!-- 未达最低记录时长:明确提示本次未计入记录,并说明门槛 -->
|
||||
<view class="completion-not-recorded" wx:if="{{completionNotRecorded}}">
|
||||
<view class="completion-not-recorded-main">
|
||||
<image class="completion-not-recorded-icon" src="{{icons.infoFill}}" mode="aspectFit"></image>
|
||||
<text class="completion-not-recorded-title">本次训练未计入记录</text>
|
||||
</view>
|
||||
<text class="completion-not-recorded-sub">撑满 {{minRecordSeconds}} 秒以上才会记录并计入连续打卡</text>
|
||||
</view>
|
||||
|
||||
<!-- 科学提示:价值行 + 弱化风险行(config.scienceTips 按时长选段) -->
|
||||
<view class="completion-tip" wx:if="{{completionTipValue}}">
|
||||
<text class="completion-tip-value">{{completionTipValue}}</text>
|
||||
@@ -185,13 +194,15 @@
|
||||
<view class="completion-btn completion-btn--primary" bindtap="onTrainAgain">
|
||||
<text>再来一次</text>
|
||||
</view>
|
||||
<view class="completion-btn" bindtap="onViewRecords">
|
||||
<!-- 未记录时没有成绩可看/可晒,隐藏查看记录与分享入口 -->
|
||||
<view class="completion-btn" wx:if="{{!completionNotRecorded}}" bindtap="onViewRecords">
|
||||
<text>查看记录</text>
|
||||
</view>
|
||||
<!-- openType="share" 会触发 Page.onShareAppMessage(已实现),
|
||||
没有这个属性 + onShareAppMessage 时分享按钮就是灰色的。
|
||||
ui-btn 透传 openType 到内部原生 button。 -->
|
||||
<ui-btn
|
||||
wx:if="{{!completionNotRecorded}}"
|
||||
variant="ghost"
|
||||
size="md"
|
||||
customStyle="flex:1; height:88rpx;"
|
||||
|
||||
Reference in New Issue
Block a user