|
@@ -51,6 +51,18 @@ Page({
|
|
|
url: `/pages/study/exam/index?courseId=${courseId}`,
|
|
|
})
|
|
|
},
|
|
|
+ recalcXs( ){
|
|
|
+ let medias = this.data.mediaList;
|
|
|
+ let info = this.data.info
|
|
|
+ let gxs = 0;
|
|
|
+ for( let i in medias){
|
|
|
+ if( medias[i].isFinish == 1){
|
|
|
+ gxs+= medias[i].xs
|
|
|
+ }
|
|
|
+ }
|
|
|
+ info.getXs = gxs
|
|
|
+ this.setData({info})
|
|
|
+ },
|
|
|
// 拖动快进
|
|
|
timeUpdate( e ){
|
|
|
let that = this;
|
|
@@ -73,7 +85,7 @@ Page({
|
|
|
}else{
|
|
|
item.position= currentTime
|
|
|
}
|
|
|
- if( item.position - item.prev_tick > 4 ){
|
|
|
+ if( item.position - item.prev_tick > 4 || item.position == item.duration ){
|
|
|
item.prev_tick = item.position;
|
|
|
// 前一秒完成
|
|
|
if( item.prev_tick >= e.detail.duration ){
|
|
@@ -92,12 +104,16 @@ Page({
|
|
|
let mediaList = this.data.mediaList;
|
|
|
app.formPost('study.tick', param).then( res => {
|
|
|
if( res.code == 200){
|
|
|
- item.isFinish = res.data.isFinish
|
|
|
- item.id = res.data.id;
|
|
|
if( !res.data.skip ){
|
|
|
item.position = res.data.position;
|
|
|
+ return;
|
|
|
}
|
|
|
+ Object.assign( item, res.data )
|
|
|
+
|
|
|
mediaList[item.index] = item;
|
|
|
+ if( item.isFinish){
|
|
|
+ this.recalcXs()
|
|
|
+ }
|
|
|
this.setData( {item, mediaList} );
|
|
|
}
|
|
|
})
|