教练端在学生报告页录入体质数据并生成报告,新增报告查看页;学员端从报告页查看最新评估结果、体测指标与运动建议。请求统一走现有 QA 后端并携带登录令牌。 教学资源改用后台音频管理器,支持进度拖动、曲目切换、时长探测及网络异常时下载恢复;修正跳绳和开合跳动作提示文案。 验证:相关 JS 语法、页面 JSON 解析和 git diff --cached --check 均通过。
82 lines
3.4 KiB
Plaintext
82 lines
3.4 KiB
Plaintext
<view class="page-content player-page">
|
||
<mp-bar background="transparent" title="{{title}}" color="#ffffff"></mp-bar>
|
||
|
||
<view class="player-card">
|
||
<view class="record-wrap {{isPlay ? 'record-playing' : ''}}">
|
||
<view class="record">
|
||
<view class="record-line line-one"></view>
|
||
<view class="record-line line-two"></view>
|
||
<view class="record-core">
|
||
<text class="record-note">♫</text>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="song-name">{{data.resourceName || '暂无音频'}}</view>
|
||
<view class="song-count" wx:if="{{playlist.length}}">{{currentIndex + 1}} / {{playlist.length}}</view>
|
||
|
||
<view class="progress-area">
|
||
<slider
|
||
class="progress-slider"
|
||
min="0"
|
||
max="{{durationSeconds}}"
|
||
step="1"
|
||
value="{{sliderValue}}"
|
||
activeColor="#fbb716"
|
||
backgroundColor="#e5eaf0"
|
||
block-color="#fbb716"
|
||
block-size="18"
|
||
bindchanging="onSliderChanging"
|
||
bindchange="onSliderChange"
|
||
/>
|
||
<view class="time">
|
||
<text>{{value}}</text>
|
||
<text>{{duration}}</text>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="btnlist">
|
||
<view class="tool-button" bind:tap="toggleLoop">
|
||
<image src="https://yuedong-wechatapplet.oss-cn-shanghai.aliyuncs.com/static/teacher/{{isSingleLoop ? 'reload' : 'repeat'}}.png" class="tool-icon" />
|
||
<text>{{isSingleLoop ? '单曲' : '列表'}}</text>
|
||
</view>
|
||
<image bind:tap="playPrevious" src="https://yuedong-wechatapplet.oss-cn-shanghai.aliyuncs.com/static/teacher/play-previous.png" class="switch-icon" />
|
||
<view class="play-button" bind:tap="btnCilck">
|
||
<mp-icon icon="{{!isPlay ? 'play' : 'pause'}}" type="field" size="52" color="#ffffff"></mp-icon>
|
||
</view>
|
||
<image bind:tap="playNext" src="https://yuedong-wechatapplet.oss-cn-shanghai.aliyuncs.com/static/teacher/play-next.png" class="switch-icon" />
|
||
<view class="tool-button" bind:tap="showList">
|
||
<image src="https://yuedong-wechatapplet.oss-cn-shanghai.aliyuncs.com/static/teacher/play-list.png" class="tool-icon" />
|
||
<text>列表</text>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view wx:if="{{isShow}}" class="playlist-mask {{isClosing ? 'playlist-mask-leave' : 'playlist-mask-enter'}}" bind:tap="hideList">
|
||
<view class="playlist-panel {{isClosing ? 'playlist-panel-leave' : 'playlist-panel-enter'}}" catch:tap="preventClose">
|
||
<view class="playlist-header">
|
||
<view>
|
||
<view class="playlist-title">播放列表</view>
|
||
<view class="playlist-subtitle">共 {{playlist.length}} 首</view>
|
||
</view>
|
||
<view class="close-button" bind:tap="hideList">×</view>
|
||
</view>
|
||
<scroll-view scroll-y class="playlist-scroll" scroll-into-view="song-{{currentIndex}}">
|
||
<view wx:if="{{!playlist.length}}" class="empty-list">暂无可播放歌曲</view>
|
||
<view
|
||
wx:for="{{playlist}}"
|
||
wx:key="resourceUrl"
|
||
id="song-{{index}}"
|
||
class="playlist-item {{index === currentIndex ? 'playlist-active' : ''}}"
|
||
data-index="{{index}}"
|
||
bind:tap="selectTrack"
|
||
>
|
||
<view class="song-index">{{index === currentIndex && isPlay ? '♪' : index + 1}}</view>
|
||
<view class="playlist-name">{{item.resourceName}}</view>
|
||
<view wx:if="{{index === currentIndex}}" class="playing-label">{{isPlay ? '播放中' : '当前'}}</view>
|
||
</view>
|
||
</scroll-view>
|
||
</view>
|
||
</view>
|
||
</view>
|