index.wxml 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. <wxs src="../../utils/filter.wxs" module="filters" />
  2. <view class="readingBox">
  3. <!-- 查看全部配音作品 -->
  4. <view class="moreWork" wx:if="{{readingType=='public'||readingType=='readMatch'}}">
  5. <view class="left">查看全部配音作品</view>
  6. <view class="right" bindtap="otherWork" style="width: {{(videoInfo.avatarList.length+1)*42+64}}rpx;">
  7. <block wx:for="{{videoInfo.avatarList}}" wx:key="index">
  8. <image class="moreImg" style="left: {{(index+1)*40}}rpx;" src="{{item}}"></image>
  9. </block>
  10. <image src="/static/more.png" class="moreImg" />
  11. </view>
  12. </view>
  13. <view class="videoBox" wx:if="{{!videoInfo.userReadExtend||videoInfo.userReadExtend.resourcesType==0}}">
  14. <image src="{{videoInfo.userRead.coverImg}}" class='poster' wx:if="{{!state&&!exampleState}}"
  15. bindtap="videoPlay" />
  16. <image src="/static/play-btn.png" bindtap="videoPlay" wx:if="{{!state&&!exampleState}}" class="playBtn" />
  17. <!-- 水印 -->
  18. <image src="{{videoInfo.readMaskTemplate.imgPath}}" class="watermark" />
  19. <video id="myVideo" src="{{videoPath}}" bindended='videoEnd' show-center-play-btn="{{readingReset}}"
  20. custom-cache="{{false}}" controls="{{!state&&!readingReset}}" muted="{{muted}}"></video>
  21. </view>
  22. <view class="audio" bindtap='videoPlay' wx:else>
  23. <!-- <image src="{{videoInfo.userRead.coverImg}}" class="audioBg" /> -->
  24. <!-- <view class="mask"></view> -->
  25. <view class="audioPlay" style="background-image: url({{videoInfo.userReadExtend.backgroundVirtualImg}});">
  26. <image src="/static/audioBg.png" class="audioPlayBg {{state?'circle':''}}" />
  27. <image src="/static/zhen.png" class="audioPlayZhen" />
  28. <image src="/static/play-btn.png" wx:if="{{!state&&!exampleState}}" class="playBtn" />
  29. <image src="{{videoInfo.userRead.coverImg}}" class="cover {{state||exampleState?'circle':''}}" mode="" />
  30. </view>
  31. <view class="progressBar">
  32. <image src="{{state||exampleState?'/static/aStop.png':'/static/aPlay.png'}}" class="audioSwitch" />
  33. <view class="time">{{silderData.currentTime}}</view>
  34. <slider class="slider" value="{{silderData.sliderValue}}" catchtap="false"
  35. disabled="{{!state&&!exampleState}}" catchchange="slider" block-size='12' backgroundColor='#ffffff50'
  36. selected-color="#ffffff" />
  37. <view class="time">{{silderData.endTime}}</view>
  38. </view>
  39. </view>
  40. <view class="workFooter" wx:if="{{readingType=='public'&&!readingReset&&!state}}">
  41. <view class="mangeL-box" bindtap="collect">
  42. <image src="{{videoInfo.isFavorites ? '/static/star_colored.png' : '/static/star.png'}}" class="icon" />
  43. <view class="icon-name">{{videoInfo.isFavorites?'已收藏':'收藏'}}</view>
  44. </view>
  45. <view class="mangeL-box" bindtap="openComment">
  46. <image src="/static/comment.png" class="icon" />
  47. <view class="icon-name">{{filters.numFilter(videoInfo.userRead.commentAmount)}}</view>
  48. </view>
  49. <view class="mangeL-box" bindtap="likeVideo">
  50. <image src="{{videoInfo.isLike ? '/static/heart_colored.png' : '/static/heart.png'}}" class="icon" />
  51. <view class="icon-name">{{filters.numFilter(videoInfo.userRead.likeAmount)}}</view>
  52. </view>
  53. </view>
  54. <view class="contentBox" wx:if="{{!readingReset}}">
  55. <view class="articleMask"></view>
  56. <scroll-view class="content" scroll-y enhanced show-scrollbar="{{false}}" scroll-top="{{scrollTop}}"
  57. scroll-with-animation>
  58. <view style="height: 100rpx;"></view>
  59. <view class="row {{currentRow==index?'currentRow':''}}" wx:for="{{article}}" wx:key="id">{{item.text}}
  60. </view>
  61. <view style="height: {{contentH}}rpx;"></view>
  62. </scroll-view>
  63. </view>
  64. <view class="scoreBoxC" wx:elif="{{readingReset&&readDetail.businessType!=2}}">
  65. <view class="scoreBox">
  66. <!-- 星星区域 -->
  67. <view class="lightBox">
  68. <image src="/static/{{readDetail.myOverall>=10?'stars-1.png':'stars-2.png'}}" class="stars stars-1"
  69. mode="" />
  70. <image src="/static/{{readDetail.myOverall>=30?'stars-1.png':'stars-2.png'}}" class="stars stars-2"
  71. mode="" />
  72. <image src="/static/{{readDetail.myOverall>=50?'stars-1.png':'stars-2.png'}}" class="stars stars-3"
  73. mode="" />
  74. <image src="/static/{{readDetail.myOverall>=70?'stars-1.png':'stars-2.png'}}" class="stars stars-4"
  75. mode="" />
  76. <image src="/static/{{readDetail.myOverall>=90?'stars-1.png':'stars-2.png'}}" class="stars stars-5"
  77. mode="" />
  78. <image src="/static/light.png" class="light" mode="" />
  79. </view>
  80. <!-- 主体得分区域 -->
  81. <view class="score">
  82. <view class="avatarBox">
  83. <image src="{{userInfo.avatar}}" class="avatar" mode="" />
  84. </view>
  85. <view class="nickName">
  86. {{userInfo.nickName||userInfo.eid}}
  87. </view>
  88. <view class="totalScore">
  89. <text>综合得分:</text>
  90. <text class="num">{{readDetail.myOverall}}</text>
  91. </view>
  92. <view class="progressBox">
  93. <view class="row">
  94. <view class="name">完整度</view>
  95. <progress class="progress" active percent='{{readDetail.integrity}}' stroke-width="18"
  96. activeColor="#70D9FF" />
  97. <view class="scoreInfo">
  98. {{readDetail.integrity}}/100
  99. </view>
  100. </view>
  101. <view class="row">
  102. <view class="name">正确率</view>
  103. <progress class="progress" active percent='{{readDetail.accuracy}}' stroke-width="18"
  104. activeColor="#918EFD" />
  105. <view class="scoreInfo">
  106. {{readDetail.accuracy}}/100
  107. </view>
  108. </view>
  109. <view class="row">
  110. <view class="name">流利度</view>
  111. <progress class="progress" active percent='{{readDetail.fluency}}' stroke-width="18"
  112. activeColor="#FE9500" />
  113. <view class="scoreInfo">
  114. {{readDetail.fluency}}/100
  115. </view>
  116. </view>
  117. <view class="row" wx:if="{{readDetail.businessType==0}}">
  118. <view class="name">语调</view>
  119. <progress class="progress" active percent='{{readDetail.tone}}' stroke-width="18"
  120. activeColor="#9BE74B " />
  121. <view class="scoreInfo">
  122. {{readDetail.tone}}/100
  123. </view>
  124. </view>
  125. </view>
  126. </view>
  127. </view>
  128. </view>
  129. <view class="controller">
  130. <!-- <image wx:else src="/static/work.png" class="playImg" bindtap="eeeeee" /> -->
  131. <view class="workBox">
  132. <view class="vipLogo" wx:if="{{!isVip}}">{{!free?'限免':'VIP'}}</view>
  133. <image wx:if="{{state}}" src="/static/readingNow.gif" class="readingNow" bindtap="setCountDown" />
  134. <image wx:else src="/static/work.png" class="playImg" bindtap="setCountDown" />
  135. </view>
  136. <view class="text">
  137. {{state?'完成录制':readingReset?'点击重录':readingType=='public'||readingType=='readMatch'?'开始朗读':'开始挑战'}}
  138. </view>
  139. <block wx:if="{{readingReset}}">
  140. <uploadFile activityId='{{activityId}}' readingType='{{readingType}}' class="btnPosition"
  141. wx:if="{{!uploadHide}}" />
  142. <view class="stBtn" bindtap="backReading">退出</view>
  143. </block>
  144. </view>
  145. <view class="playImgBg"></view>
  146. <!-- 倒计时 -->
  147. <view class="countDownBox" wx:if="{{countDown.state}}">
  148. <view class="countDown">
  149. <view class="number">{{countDown.num}}</view>
  150. <view class="tips">秒后开始</view>
  151. </view>
  152. </view>
  153. <page-container wx:if="{{readingType=='pk'}}" show="{{uploadState}}" bind:beforeleave='beforeleave'>
  154. <view class="uploadBox">
  155. <view class="upload">
  156. <image src="/static/uploadTips.png" class="tipsImg" />
  157. <view>{{readingType=='pk'?'挑战结算中,小朋友请耐心等待哦~':'作品上传中,小朋友请耐心等待哦~'}}</view>
  158. <view class="speed">
  159. {{percent}}%
  160. </view>
  161. </view>
  162. </view>
  163. </page-container>
  164. <buyVip id="buyVip" bind:toBuy="toBuy" />
  165. <canvas id='share' type="2d"> </canvas>
  166. <vipModal id="vipModal"></vipModal>
  167. <donutBuy id="donutBuy" bind:paySuccess='paySuccess'></donutBuy>
  168. <canvas id='vip' type="2d"> </canvas>
  169. <Comment id="comment" bind:addCommentNum="addCommentNum" />
  170. </view>