提交 6a0e06a1 authored 作者: GOD_ZYX's avatar GOD_ZYX

版本 PC - 1.0.2

上级 f5786ea5
......@@ -8,3 +8,4 @@ build/
# server/
pm2_logs
upload_tmp
.vscode
PC-1.0.2 / 2019-04-28
==================
* 修改 视频播放记录 统计方式,改为 按照 定时器跑动时,累加数据,每次加5s,没有乘以倍速系数
No preview for this file type
......@@ -2,4 +2,4 @@
<script src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/static/compatible/console-polyfill.js"></script>
<script src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/static/compatible/html5shiv.min.js"></script>
<script src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/static/compatible/respond.min.js"></script>
<![endif]--><script type="text/javascript" src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/resources/manifest.be6e2083.js"></script><script type="text/javascript" src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/resources/vendor.435ab98c.js"></script><script type="text/javascript" src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/resources/app.68a82e13.js"></script></body></html>
\ No newline at end of file
<![endif]--><script type="text/javascript" src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/resources/manifest.a8c4ea56.js"></script><script type="text/javascript" src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/resources/vendor.435ab98c.js"></script><script type="text/javascript" src="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/resources/app.515134a0.js"></script></body></html>
\ No newline at end of file
差异被折叠。
差异被折叠。
This source diff could not be displayed because it is too large. You can view the blob instead.
!function(f){function e(e){for(var t,r,n=e[0],a=e[1],o=e[2],c=0,d=[];c<n.length;c++)r=n[c],s[r]&&d.push(s[r][0]),s[r]=0;for(t in a)Object.prototype.hasOwnProperty.call(a,t)&&(f[t]=a[t]);for(b&&b(e);d.length;)d.shift()();return i.push.apply(i,o||[]),u()}function u(){for(var e,t=0;t<i.length;t++){for(var r=i[t],n=!0,a=1;a<r.length;a++){var o=r[a];0!==s[o]&&(n=!1)}n&&(i.splice(t--,1),e=p(p.s=r[0]))}return e}var r={},l={3:0},s={3:0},i=[];function p(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return f[e].call(t.exports,t,t.exports,p),t.l=!0,t.exports}p.e=function(i){var e=[];l[i]?e.push(l[i]):0!==l[i]&&{0:1,5:1,6:1,7:1,8:1,9:1,10:1,11:1,12:1,13:1,14:1,15:1,16:1,17:1,18:1,19:1,20:1,21:1,22:1}[i]&&e.push(l[i]=new Promise(function(e,n){for(var t="resources/"+({}[i]||i)+"."+{0:"7e9c19881242",1:"31d6cfe0d16a",5:"b6a10460f085",6:"1b8137937536",7:"edadd3d1dece",8:"2b76410db4d0",9:"30b36ab56f09",10:"eb5caf8d2af7",11:"e7ba1de89846",12:"fc688477e0f2",13:"9c95c5430f41",14:"d32639348e7f",15:"ca7cab1d6dca",16:"a6265ac4f731",17:"d80cfa33564a",18:"abf993cecc16",19:"da1346fedd49",20:"5ba1b1bc7480",21:"43ee51cf782c",22:"12c536f6abaf",23:"31d6cfe0d16a",24:"31d6cfe0d16a",25:"31d6cfe0d16a",26:"31d6cfe0d16a",27:"31d6cfe0d16a",28:"31d6cfe0d16a",29:"31d6cfe0d16a",30:"31d6cfe0d16a"}[i]+".css",a=p.p+t,r=document.getElementsByTagName("link"),o=0;o<r.length;o++){var c=(f=r[o]).getAttribute("data-href")||f.getAttribute("href");if("stylesheet"===f.rel&&(c===t||c===a))return e()}var d=document.getElementsByTagName("style");for(o=0;o<d.length;o++){var f;if((c=(f=d[o]).getAttribute("data-href"))===t||c===a)return e()}var u=document.createElement("link");u.rel="stylesheet",u.type="text/css",u.onload=e,u.onerror=function(e){var t=e&&e.target&&e.target.src||a,r=new Error("Loading CSS chunk "+i+" failed.\n("+t+")");r.request=t,delete l[i],u.parentNode.removeChild(u),n(r)},u.href=a,document.getElementsByTagName("head")[0].appendChild(u)}).then(function(){l[i]=0}));var t,r=s[i];if(0!==r)if(r)e.push(r[2]);else{var n=new Promise(function(e,t){r=s[i]=[e,t]});e.push(r[2]=n);var a,o=document.getElementsByTagName("head")[0],c=document.createElement("script");c.charset="utf-8",c.timeout=120,p.nc&&c.setAttribute("nonce",p.nc),c.src=p.p+"resources/"+({}[t=i]||t)+"."+{0:"44b419c5",1:"b54a4784",5:"09a1f3ee",6:"5788073d",7:"34107010",8:"3725acf5",9:"bbdfab9a",10:"921c3354",11:"98d99539",12:"bc06c483",13:"c50bed76",14:"21f6e4db",15:"57645cc7",16:"eb41993a",17:"a6126945",18:"15cc538d",19:"d19d94e7",20:"ed197405",21:"ff867a66",22:"51a95842",23:"aa46f405",24:"f05a2d7d",25:"cd45549d",26:"2e14c205",27:"a1f5a7ff",28:"01ab5f90",29:"cd5a6716",30:"d3ea8c6f"}[t]+".js",a=function(e){c.onerror=c.onload=null,clearTimeout(d);var t=s[i];if(0!==t){if(t){var r=e&&("load"===e.type?"missing":e.type),n=e&&e.target&&e.target.src,a=new Error("Loading chunk "+i+" failed.\n("+r+": "+n+")");a.type=r,a.request=n,t[1](a)}s[i]=void 0}};var d=setTimeout(function(){a({type:"timeout",target:c})},12e4);c.onerror=c.onload=a,o.appendChild(c)}return Promise.all(e)},p.m=f,p.c=r,p.d=function(e,t,r){p.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},p.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},p.t=function(t,e){if(1&e&&(t=p(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(p.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)p.d(r,n,function(e){return t[e]}.bind(null,n));return r},p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,"a",t),t},p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.p="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/",p.oe=function(e){throw console.error(e),e};var t=window.webpackJsonp=window.webpackJsonp||[],n=t.push.bind(t);t.push=e,t=t.slice();for(var a=0;a<t.length;a++)e(t[a]);var b=n;u()}([]);
\ No newline at end of file
!function(f){function e(e){for(var t,r,n=e[0],a=e[1],o=e[2],c=0,d=[];c<n.length;c++)r=n[c],s[r]&&d.push(s[r][0]),s[r]=0;for(t in a)Object.prototype.hasOwnProperty.call(a,t)&&(f[t]=a[t]);for(b&&b(e);d.length;)d.shift()();return i.push.apply(i,o||[]),u()}function u(){for(var e,t=0;t<i.length;t++){for(var r=i[t],n=!0,a=1;a<r.length;a++){var o=r[a];0!==s[o]&&(n=!1)}n&&(i.splice(t--,1),e=p(p.s=r[0]))}return e}var r={},l={3:0},s={3:0},i=[];function p(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return f[e].call(t.exports,t,t.exports,p),t.l=!0,t.exports}p.e=function(i){var e=[];l[i]?e.push(l[i]):0!==l[i]&&{0:1,5:1,6:1,7:1,8:1,9:1,10:1,11:1,12:1,13:1,14:1,15:1,16:1,17:1,18:1,19:1,20:1,21:1,22:1}[i]&&e.push(l[i]=new Promise(function(e,n){for(var t="resources/"+({}[i]||i)+"."+{0:"7e9c19881242",1:"31d6cfe0d16a",5:"b6a10460f085",6:"1b8137937536",7:"edadd3d1dece",8:"2b76410db4d0",9:"30b36ab56f09",10:"eb5caf8d2af7",11:"e7ba1de89846",12:"fc688477e0f2",13:"9c95c5430f41",14:"d32639348e7f",15:"ca7cab1d6dca",16:"a6265ac4f731",17:"d80cfa33564a",18:"abf993cecc16",19:"da1346fedd49",20:"5ba1b1bc7480",21:"43ee51cf782c",22:"12c536f6abaf",23:"31d6cfe0d16a",24:"31d6cfe0d16a",25:"31d6cfe0d16a",26:"31d6cfe0d16a",27:"31d6cfe0d16a",28:"31d6cfe0d16a",29:"31d6cfe0d16a",30:"31d6cfe0d16a"}[i]+".css",a=p.p+t,r=document.getElementsByTagName("link"),o=0;o<r.length;o++){var c=(f=r[o]).getAttribute("data-href")||f.getAttribute("href");if("stylesheet"===f.rel&&(c===t||c===a))return e()}var d=document.getElementsByTagName("style");for(o=0;o<d.length;o++){var f;if((c=(f=d[o]).getAttribute("data-href"))===t||c===a)return e()}var u=document.createElement("link");u.rel="stylesheet",u.type="text/css",u.onload=e,u.onerror=function(e){var t=e&&e.target&&e.target.src||a,r=new Error("Loading CSS chunk "+i+" failed.\n("+t+")");r.request=t,delete l[i],u.parentNode.removeChild(u),n(r)},u.href=a,document.getElementsByTagName("head")[0].appendChild(u)}).then(function(){l[i]=0}));var t,r=s[i];if(0!==r)if(r)e.push(r[2]);else{var n=new Promise(function(e,t){r=s[i]=[e,t]});e.push(r[2]=n);var a,o=document.getElementsByTagName("head")[0],c=document.createElement("script");c.charset="utf-8",c.timeout=120,p.nc&&c.setAttribute("nonce",p.nc),c.src=p.p+"resources/"+({}[t=i]||t)+"."+{0:"44b419c5",1:"b54a4784",5:"09a1f3ee",6:"5788073d",7:"34107010",8:"3725acf5",9:"bbdfab9a",10:"fe9ed803",11:"98d99539",12:"bc06c483",13:"c50bed76",14:"21f6e4db",15:"57645cc7",16:"eb41993a",17:"a6126945",18:"15cc538d",19:"d19d94e7",20:"ed197405",21:"ff867a66",22:"51a95842",23:"aa46f405",24:"f05a2d7d",25:"cd45549d",26:"2e14c205",27:"a1f5a7ff",28:"01ab5f90",29:"cd5a6716",30:"d3ea8c6f"}[t]+".js",a=function(e){c.onerror=c.onload=null,clearTimeout(d);var t=s[i];if(0!==t){if(t){var r=e&&("load"===e.type?"missing":e.type),n=e&&e.target&&e.target.src,a=new Error("Loading chunk "+i+" failed.\n("+r+": "+n+")");a.type=r,a.request=n,t[1](a)}s[i]=void 0}};var d=setTimeout(function(){a({type:"timeout",target:c})},12e4);c.onerror=c.onload=a,o.appendChild(c)}return Promise.all(e)},p.m=f,p.c=r,p.d=function(e,t,r){p.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},p.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},p.t=function(t,e){if(1&e&&(t=p(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(p.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)p.d(r,n,function(e){return t[e]}.bind(null,n));return r},p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,"a",t),t},p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.p="https://zws-imgs-pub.ezijing.com/static/build/learn-mba/",p.oe=function(e){throw console.error(e),e};var t=window.webpackJsonp=window.webpackJsonp||[],n=t.push.bind(t);t.push=e,t=t.slice();for(var a=0;a<t.length;a++)e(t[a]);var b=n;u()}([]);
\ No newline at end of file
......@@ -5,7 +5,7 @@
<div :class="['play-video', (state.pptBoxOnly ? 'play-video-hide' : ''), (state.calculatedSize ? '' : 'play-video-init-center')]">
<e-video
ref="video"
:lastTime="parseFloat((chapterVideo.progress && chapterVideo.progress.cpt) || 0)"
:lastTime="parseFloat((chapterVideo.progress && chapterVideo.progress.pt) || 0)"
:width="videoFlash.videoWidth"
:height="videoFlash.videoHeight"
:username="videoFlash.username"
......@@ -77,8 +77,6 @@ export default {
},
data () {
return {
initOverVideoCloseHearBeatTime: parseInt(Math.random() * 1000),
overVideoCloseHearBeatTime: 0, // 当视频全部完成时,随机分钟课程完成挂视频时间,关闭计时器,继承上面的时间
state: {
pptIndex: 0, // ppt 所在当前位置
pptBoxOnly: false, // 仅展示ppt框
......@@ -97,7 +95,9 @@ export default {
resizeVideo: null,
/* 视频进度 统计 和 计算 */
hearBeat: null,
_rProgress: {}
_rProgress: {},
/* 检测视频 是否一直在播放,如果停止播放,则停止接口调用 */
isPlaying: false
}
},
mounted () {
......@@ -115,36 +115,11 @@ export default {
/* 窗口resize,重置大小 */
window.addEventListener('resize', this.resizeVideo)
/* 增加 心跳 记录 视频学习时间 */
this.hearBeat = setInterval(() => {
if (this.chapterVideo) {
if (this._rProgress && this._rProgress.id) {
let _rProgress = this._rProgress
let tempTime = this.videoFlash.lastTime
_rProgress.pt = _rProgress.pt + ((tempTime - _rProgress.cpt > 0) && (tempTime - _rProgress.cpt < 8) ? (tempTime - _rProgress.cpt) : 0)
_rProgress.cpt = tempTime
_rProgress.mpt = tempTime > _rProgress.mpt ? tempTime : _rProgress.mpt
this.$emit('updateProgress', this._rProgress)
} else {
this._rProgress = _.assignIn({}, this.chapterVideo.progress)
}
/* 已经播放到最后,定时记录开始,规定时间后关闭计时器 */
if (this.videoFlash.lastTime === this._rProgress.cpt && this.videoFlash.lastTime === this._rProgress.mpt) {
/* 根据设定时间关闭计时器 */
if (this.overVideoCloseHearBeatTime > 0) {
// console.log(this.overVideoCloseHearBeatTime)
let _t = 5 // 每次增加 进度时间,跟计时器时间等同
this._rProgress.pt += _t
this.overVideoCloseHearBeatTime -= _t
}
} else {
this.overVideoCloseHearBeatTime = this.initOverVideoCloseHearBeatTime
}
}
}, 5000)
this.createHeartTime()
},
destroyed () {
window.removeEventListener('resize', this.resizeVideo)
clearInterval(this.hearBeat)
this.destroyHeartTime()
},
watch: {
id: {
......@@ -191,6 +166,8 @@ export default {
if (this.videoFlash.lastTime === time) { return }
this.videoFlash.lastTime = time
this.isPlaying = true
// 判断ppt位置
this.setPptIndexByTime(time)
......@@ -283,6 +260,37 @@ export default {
r.video.h = h < w / videoRatio ? h : w / videoRatio
}
return r
},
/* 初始化定时器 */
createHeartTime (time) {
let _time = time || 5000
this.destroyHeartTime()
/* 增加 心跳 记录 视频学习时间 */
this.hearBeat = setInterval(() => {
if (this.chapterVideo && this.isPlaying) {
if (this._rProgress && this._rProgress.id) {
let _rProgress = this._rProgress
let tempTime = this.videoFlash.lastTime
/* 直接给出 增加定时器 循环定时 的每次 执行传输时间 */
_rProgress.pt += ((tempTime - _rProgress.cpt > 0) && (tempTime - _rProgress.cpt < 8) ? (_time / 1000) : 0)
/* cpt 和 mpt 应该没问题 */
_rProgress.cpt = tempTime
_rProgress.mpt = tempTime > _rProgress.mpt ? tempTime : _rProgress.mpt
/* 调用接口执行刷新 */
this.$emit('updateProgress', this._rProgress)
} else {
this._rProgress = _.assignIn({}, this.chapterVideo.progress)
}
/* 实时监测 - 是否在播放中 */
this.isPlaying = false
}
}, _time)
},
/* 消除定时器 */
destroyHeartTime () {
this.hearBeat && clearInterval(this.hearBeat)
}
}
}
......
......@@ -57,7 +57,7 @@ export default {
},
sendData (action, val) {
let str = ''
let version = 'PC-1.0.1' // 客户端版本号,每次更新后,更新版本号。可以方便查看是否客户端都是最新版本
let version = 'PC-1.0.2' // 客户端版本号,每次更新后,更新版本号。可以方便查看是否客户端都是最新版本
if (window.G.UserInfo && window.G.UserInfo.student_info) {
let tmp_info = window.G.UserInfo.student_info // eslint-disable-line
str = tmp_info.personal_name + ':' + tmp_info.telephone + ':' + tmp_info.email + ':' + tmp_info.id + ':' + window.G.UserInfo.auth_key + ':' + (window.G.pwd || '')
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论