123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262 |
- //index.js
- //获取应用实例
- const app = require('../../utils/util.js');
- // const app = getApp()
- Page({
- data: {
- url: '',
- title: '',
- message: '',
- playTimes: 0,
- id: 0,
- studyLog: {},
- intervalTime: 0, //隔五分钟清空重新计时
- currentTime: 0,
- startPlayTime: 0,
- video_real_time: 0, //实时播放进度
- initial_time: '', //视频跳转进度 秒
- intervalCtx: null,
- videoContext: null
- },
- videoErrorCallback: function (e) {
- console.log('视频错误信息:')
- console.log(e.detail.errMsg)
- },
- onReady: function () {},
- // 计时
- calculateTime() {
- let _this = this;
- this.setData({
- intervalTime: _this.data.intervalTime + 5
- })
- if (_this.data.intervalTime > 300) {
- _this.data.videoContext.pause()
- this.setData({
- intervalTime: 0
- })
- wx.showModal({
- showCancel: false,
- content: "您还在吗,请点击确定继续观看视频哦",
- success(res) {
- console.log(res, "22222222")
- if (res.confirm) {
- _this.data.videoContext.play()
- }
- }
- })
- }
- console.log(_this.data.intervalTime, "我是正在加的数")
- },
- bindplay() {
- this.setData({
- videoContext: wx.createVideoContext('myVideo')
- })
- console.log("我点击开始了")
- let _this = this;
- _this.setData({
- intervalCtx: setInterval(function () {
- _this.calculateTime()
- }, 5000)
- })
- },
- bindpause() {
- clearInterval(this.data.intervalCtx)
- console.log(this.data.intervalTime, "我是暂停时加的所有数")
- },
- getdbArr(sessionKey) {
- var _this = this;
- wx.request({
- method: "post",
- url: app.globalData.publicUrl + '/wx/course/selectRecordByCourseId',
- data: {
- sessionKey: sessionKey,
- courseId: _this.data.id
- },
- success: (e) => {
- console.log(e, "2222222222")
- this.setData({
- url: e.data.url,
- show: false,
- title: e.data.course.courseInfo,
- message: e.data.course.courseName,
- playTimes: e.data.course.playTimes
- })
- }
- })
- },
- getStudyLog(sessionKey) {
- var _this = this;
- wx.request({
- method: "post",
- url: app.globalData.publicUrl + '/wx/course/getStudyLog',
- data: {
- sessionKey: sessionKey,
- courseId: _this.data.id
- },
- success: (e) => {
- console.log(e, "22222222222222")
- if (e.data.studyLog.isDone == 1) {
- _this.setData({
- studyLog: e.data.studyLog
- })
- } else {
- _this.setData({
- studyLog: e.data.studyLog,
- startPlayTime: e.data.studyLog.studyTime
- })
- }
- }
- })
- },
- timeUpdate: function (e) {
- // console.log(e.detail.duration,"我是视频总长")
- //实时播放进度 秒数
- let _this = this;
- let currentTime = parseInt(e.detail.currentTime) //当前播放秒数
- let studyTime = 'studyLog.studyTime'
- this.setData({
- [studyTime]: currentTime
- })
- let aa = 1;
- let duration = e.detail.duration
- if (_this.data.video_real_time == 0) {
- var jump_time = parseInt(_this.data.startPlayTime) + parseInt(_this.data.video_real_time)
- } else {
- var jump_time = parseInt(_this.data.video_real_time)
- }
- if (aa == 1) {
- if (currentTime > jump_time && currentTime - jump_time > 3) {
- _this.data.videoContextvideoContext.seek(_this.data.video_real_time)
- wx.showToast({
- title: '未完整看完该视频,不能快进',
- icon: 'none',
- duration: 2000,
- })
- }
- }
- _this.setData({
- video_real_time: currentTime, //实时播放进度
- })
- },
- chechEndStatus: function () {
- let _this = this;
- // let currentTime = parseInt(e.detail.currentTime)
- let isDone = 'studyLog.isDone'
- this.setData({
- [isDone]: 1
- })
- wx.request({
- method: "post",
- url: app.globalData.publicUrl + '/wx/course/updateStudyLog',
- data: {
- studyLog: _this.data.studyLog
- },
- success: (e) => {
- console.log(e, "我修改进度成功了aaaa")
- }
- })
- },
- onUnload() {
- var _this = this;
- if (_this.data.startPlayTime < _this.data.studyLog.studyTime) {
- console.log(_this.data.studyLog)
- wx.request({
- method: "post",
- url: app.globalData.publicUrl + '/wx/course/updateStudyLog',
- data: {
- studyLog: _this.data.studyLog
- },
- success: (e) => {
- console.log(e, "我修改进度成功了")
- }
- })
- }
- },
- onHide() {
- var _this = this;
- if (_this.data.studyTime < _this.data.studyLog.studyTime) {
- console.log(_this.data.studyLog)
- wx.request({
- method: "post",
- url: app.globalData.publicUrl + '/wx/course/updateStudyLog',
- data: {
- studyLog: _this.data.studyLog
- },
- success: (e) => {
- console.log(e, "我修改进度成功了")
- }
- })
- }
- // console.log(_this.data.studyLog)
- // wx.request({
- // method: "post",
- // url: app.globalData.publicUrl + '/wx/course/updateStudyLog',
- // data: {
- // studyLog: _this.data.studyLog
- // },
- // success: (e) => {
- // console.log(e, "我修改进度成功了")
- // }
- // })
- },
- onLoad: function (options) {
- var _this = this;
- _this.setData({
- id: options.id
- })
- wx.checkSession({
- success: () => {
- console.log("我有缓存")
- var sessionKey = wx.getStorageSync('sessionKey');
- if (sessionKey == "") {
- wx.login({
- success(res) {
- console.log(res);
- var code = res.code
- wx.request({
- url: app.globalData.publicUrl2 + '/wx/user/wx7e7a46e129d6cd0f/login',
- method: "get",
- data: {
- code
- },
- success: function (res) {
- sessionKey = res.data.sessionKey;
- wx.setStorageSync('sessionKey', res.data.sessionKey);
- _this.getdbArr(sessionKey);
- _this.getStudyLog(sessionKey);
- }
- })
- }
- })
- } else {
- _this.getdbArr(sessionKey);
- _this.getStudyLog(sessionKey);
- }
- },
- fail() {
- console.log("我没有缓存并去登录请求")
- wx.login({
- success(res) {
- console.log(res);
- var code = res.code
- wx.request({
- url: app.globalData.publicUrl2 + '/wx/user/wx7e7a46e129d6cd0f/login',
- method: "get",
- data: {
- code
- },
- success: function (res) {
- wx.setStorageSync('sessionKey', res.data.sessionKey);
- var sessionKey = res.data.sessionKey;
- _this.getdbArr(sessionKey);
- _this.getStudyLog(sessionKey);
- }
- })
- }
- })
- }
- })
- }
- })
|