|
@@ -189,7 +189,6 @@
|
|
|
src="https://cdn.bootcss.com/vConsole/3.2.0/vconsole.min.js"
|
|
|
></script>
|
|
|
<script src="https://cdn.bootcss.com/jquery-weui/1.2.1/js/jquery-weui.min.js"></script>
|
|
|
- <script type="text/javascript" src="WXdraw.js"></script>
|
|
|
<script type="text/javascript" src="jmuxer.js"></script>
|
|
|
<script type="text/javascript" src="spsParser.js"></script>
|
|
|
<script
|
|
@@ -202,9 +201,9 @@
|
|
|
var baseUrl = url[0] + '//' + url[2];
|
|
|
|
|
|
var parameters = GetRequest();
|
|
|
- var form = {};
|
|
|
- form.token = parameters['token'];
|
|
|
- form.userCardId = parameters['userCardId'];
|
|
|
+ var token = parameters['token'];
|
|
|
+ var userCardId = parameters['userCardId'];
|
|
|
+ var mealType = parameters['mealType'];
|
|
|
var videoTimer = null,
|
|
|
videoTime = 0,
|
|
|
adType = 0,
|
|
@@ -232,6 +231,92 @@
|
|
|
$('.loading_sceen_pic').attr('src', '../static/img/home_bg_PRO.png');
|
|
|
}
|
|
|
initAD();
|
|
|
+ let dbName = parameters['username'],
|
|
|
+ version = 1,
|
|
|
+ storeName = 'usercard';
|
|
|
+ let indexedDB = window.indexedDB;
|
|
|
+ let db, socketURL, cUrl, cardToken, resolvingPower;
|
|
|
+ const request = indexedDB.open(dbName, version);
|
|
|
+ request.onsuccess = function (event) {
|
|
|
+ db = event.target.result; // 数据库对象
|
|
|
+ console.log('数据库打开成功');
|
|
|
+ };
|
|
|
+
|
|
|
+ request.onerror = function (event) {
|
|
|
+ console.log('数据库打开报错');
|
|
|
+ };
|
|
|
+
|
|
|
+ request.onupgradeneeded = function (event) {
|
|
|
+ // 数据库创建或升级的时候会触发
|
|
|
+ console.log('onupgradeneeded');
|
|
|
+ db = event.target.result; // 数据库对象
|
|
|
+ let objectStore;
|
|
|
+ if (!db.objectStoreNames.contains(storeName)) {
|
|
|
+ objectStore = db.createObjectStore(storeName, { keyPath: 'id' }); // 创建表
|
|
|
+ }
|
|
|
+ };
|
|
|
+ // 添加数据
|
|
|
+ function addData(db, storeName, data) {
|
|
|
+ let request = db
|
|
|
+ .transaction([storeName], 'readwrite') // 事务对象 指定表格名称和操作模式("只读"或"读写")
|
|
|
+ .objectStore(storeName) // 仓库对象
|
|
|
+ .add(data);
|
|
|
+
|
|
|
+ request.onsuccess = function (event) {
|
|
|
+ console.log('数据写入成功');
|
|
|
+ };
|
|
|
+
|
|
|
+ request.onerror = function (event) {
|
|
|
+ console.log('数据写入失败');
|
|
|
+ throw new Error(event.target.error);
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ // 根据id获取数据
|
|
|
+ function getDataByKey(db, storeName, key) {
|
|
|
+ let transaction = db.transaction([storeName]); // 事务
|
|
|
+ let objectStore = transaction.objectStore(storeName); // 仓库对象
|
|
|
+ let request = objectStore.get(key);
|
|
|
+
|
|
|
+ request.onerror = function (event) {
|
|
|
+ connect('add');
|
|
|
+ };
|
|
|
+
|
|
|
+ request.onsuccess = function (event) {
|
|
|
+ console.log('主键查询结果: ', request.result);
|
|
|
+ if (request.result) {
|
|
|
+ socketURL = request.result.socketURL;
|
|
|
+ cUrl = request.result.cUrl;
|
|
|
+ cardToken = request.result.cardToken;
|
|
|
+ resolvingPower = request.result.resolvingPower;
|
|
|
+ doConnectBusiness();
|
|
|
+ doConnectDirectives();
|
|
|
+ } else {
|
|
|
+ connect('add');
|
|
|
+ }
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ // 根据id修改数
|
|
|
+ function updateDB(db, storeName, data) {
|
|
|
+ let request = db
|
|
|
+ .transaction([storeName], 'readwrite') // 事务对象
|
|
|
+ .objectStore(storeName) // 仓库对象
|
|
|
+ .put(data);
|
|
|
+
|
|
|
+ request.onsuccess = function () {
|
|
|
+ console.log('数据更新成功');
|
|
|
+ };
|
|
|
+
|
|
|
+ request.onerror = function () {
|
|
|
+ console.log('数据更新失败');
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ // 由于打开indexDB是异步的加个定时器避免 db对象还没获取到值导致 报错
|
|
|
+ setTimeout(() => {
|
|
|
+ getDataByKey(db, storeName, userCardId);
|
|
|
+ }, 1000);
|
|
|
var isAudioPlay = false;
|
|
|
if (navigator.userAgent.toLowerCase().includes('toutiaomicroapp')) {
|
|
|
var video = document.getElementById('playerVideo');
|
|
@@ -291,21 +376,72 @@
|
|
|
Module.onRuntimeInitialized = function () {
|
|
|
isFinish = true;
|
|
|
};
|
|
|
-
|
|
|
- var isWSS = true;
|
|
|
- var ip = parameters['ip'];
|
|
|
- var cardToken = parameters['cardToken'];
|
|
|
- cardToken = cardToken && decodeURIComponent(cardToken);
|
|
|
- var appletPushAddress = parameters['appletPushAddress'];
|
|
|
- var socketURL = isWSS
|
|
|
- ? 'wss://' +
|
|
|
- appletPushAddress +
|
|
|
- '?cardIp=' +
|
|
|
- ip +
|
|
|
- '&token=' +
|
|
|
- cardToken +
|
|
|
- '&type=business'
|
|
|
- : 'ws://' + appletPushAddress + '?cardIp=' + ip + '&token=' + cardToken;
|
|
|
+ function connect() {
|
|
|
+ $.ajax({
|
|
|
+ url: baseUrl + '/api/resources/user/cloud/connect',
|
|
|
+ type: 'post',
|
|
|
+ data: JSON.stringify({
|
|
|
+ userCardId: Number(userCardId),
|
|
|
+ }),
|
|
|
+ headers: {
|
|
|
+ 'content-Type': 'application/json',
|
|
|
+ Authorization: token,
|
|
|
+ },
|
|
|
+ dataType: 'json',
|
|
|
+ async: false,
|
|
|
+ success: function (res) {
|
|
|
+ if (res.status === 0) {
|
|
|
+ if (res.data.internetHttps) {
|
|
|
+ socketURL =
|
|
|
+ 'wss://' +
|
|
|
+ res.data.internetHttps +
|
|
|
+ '/plugflow?cardIp=' +
|
|
|
+ res.data.localIp +
|
|
|
+ '&token=' +
|
|
|
+ res.data.cardToken +
|
|
|
+ '&type=business';
|
|
|
+ cUrl =
|
|
|
+ 'wss://' +
|
|
|
+ res.data.internetHttps +
|
|
|
+ '/businessChannel?cardIp=' +
|
|
|
+ res.data.localIp +
|
|
|
+ '&token=' +
|
|
|
+ res.data.cardToken +
|
|
|
+ '&type=directives';
|
|
|
+ cardToken = res.data.cardToken;
|
|
|
+ resolvingPower = res.data.resolvingPower;
|
|
|
+ doConnectBusiness();
|
|
|
+ doConnectDirectives();
|
|
|
+ if (type === 'add') {
|
|
|
+ addData(db, storeName, {
|
|
|
+ id: userCardId,
|
|
|
+ socketURL: socketURL,
|
|
|
+ cUrl: cUrl,
|
|
|
+ cardToken: res.data.cardToken,
|
|
|
+ resolvingPower: res.data.resolvingPower,
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ updateDB(db, storeName, {
|
|
|
+ id: userCardId,
|
|
|
+ socketURL: socketURL,
|
|
|
+ cUrl: cUrl,
|
|
|
+ cardToken: res.data.cardToken,
|
|
|
+ resolvingPower: res.data.resolvingPower,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $.toast('网络异常,请稍后重试', 'text');
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $.toast('画面异常,请重新进入', 'text');
|
|
|
+ clearInterval(intervaler);
|
|
|
+ quit();
|
|
|
+ ws.close();
|
|
|
+ wsss.close();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ });
|
|
|
+ }
|
|
|
|
|
|
var jmuxer = new JMuxer({
|
|
|
node: 'playerVideo',
|
|
@@ -324,7 +460,7 @@
|
|
|
};
|
|
|
var ws,
|
|
|
errorTime = 0;
|
|
|
- doConnect();
|
|
|
+
|
|
|
// 节流
|
|
|
// 设置一个标志
|
|
|
function throttle(fn, delay) {
|
|
@@ -340,7 +476,7 @@
|
|
|
};
|
|
|
}
|
|
|
var intervaler;
|
|
|
- function doConnect() {
|
|
|
+ function doConnectBusiness() {
|
|
|
ws = new WebSocket(socketURL);
|
|
|
ws.binaryType = 'arraybuffer';
|
|
|
intervaler = setInterval(() => {
|
|
@@ -363,7 +499,7 @@
|
|
|
ws.addEventListener('error', function (event) {
|
|
|
ws.close();
|
|
|
clearInterval(intervaler);
|
|
|
- throttle(doConnect, 100);
|
|
|
+ throttle(doConnectBusiness, 100);
|
|
|
if (errorTime > 1000) {
|
|
|
$.toast('画面异常,请重新进入', 'text');
|
|
|
wsss.close();
|
|
@@ -547,11 +683,7 @@
|
|
|
var checkBuffer = GetScreenState();
|
|
|
ws.send(checkBuffer);
|
|
|
} else {
|
|
|
- $.toast('画面异常,请重新进入', 'text');
|
|
|
- clearInterval(intervaler);
|
|
|
- quit();
|
|
|
- ws.close();
|
|
|
- wsss.close();
|
|
|
+ connect('update');
|
|
|
}
|
|
|
}
|
|
|
if (input[23] == 0x05) {
|
|
@@ -601,9 +733,6 @@
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- var form = {};
|
|
|
- form.token = parameters['token'];
|
|
|
- form.userCardId = parameters['userCardId'];
|
|
|
function array_unique(arr) {
|
|
|
return arr.filter(function (e, i) {
|
|
|
return arr.indexOf(e) === i;
|
|
@@ -621,7 +750,7 @@
|
|
|
$.ajax({
|
|
|
url: baseUrl + '/api/public/v5/shear/content',
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
type: 'get',
|
|
|
dataType: 'json',
|
|
@@ -684,7 +813,7 @@
|
|
|
$.ajax({
|
|
|
url: baseUrl + '/api/public/v5/shear/content?' + ids,
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
type: 'DELETE',
|
|
|
dataType: 'json',
|
|
@@ -712,7 +841,7 @@
|
|
|
$.ajax({
|
|
|
url: baseUrl + '/api/public/v5/shear/content?ids=' + id,
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
type: 'DELETE',
|
|
|
dataType: 'json',
|
|
@@ -983,16 +1112,15 @@
|
|
|
$.ajax({
|
|
|
url: baseUrl + '/api/pay/v5/trialCodeConfig/getConfigByPhoneType',
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
data: {
|
|
|
- userCardId: form.userCardId,
|
|
|
- phoneType: form.mealType,
|
|
|
+ userCardId: userCardId,
|
|
|
+ phoneType: mealType,
|
|
|
},
|
|
|
type: 'get',
|
|
|
dataType: 'json',
|
|
|
success: function (res) {
|
|
|
- console.log(res);
|
|
|
let obj = res.data;
|
|
|
if (res.status === 0) {
|
|
|
resolve(obj);
|
|
@@ -1009,7 +1137,7 @@
|
|
|
$.ajax({
|
|
|
url: baseUrl + '/api/resources/v4/freetrial/setmeal/list',
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
type: 'get',
|
|
|
dataType: 'json',
|
|
@@ -1043,7 +1171,7 @@
|
|
|
return $.ajax({
|
|
|
url: baseUrl + '/api/public/v5/advertising/getAdInfoByAdPlace',
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
data: JSON.stringify({
|
|
|
adPlace: adType,
|
|
@@ -1254,10 +1382,10 @@
|
|
|
$.ajax({
|
|
|
url: baseUrl + '/api/resources/v1/trial/report',
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
data: JSON.stringify({
|
|
|
- userCardId: form.userCardId,
|
|
|
+ userCardId: userCardId,
|
|
|
reportType: type,
|
|
|
}),
|
|
|
type: 'POST',
|
|
@@ -1336,7 +1464,12 @@
|
|
|
} else {
|
|
|
// 过期续费按钮进入
|
|
|
wx.miniProgram.navigateTo({
|
|
|
- url: `/packageA/order/renew/index?buyType=${sourceType == 1 ? '试用弹窗购买按钮进入-普通试用' : '试用弹窗购买按钮进入-激活码试用'}&record=` + form.userCardId,
|
|
|
+ url:
|
|
|
+ `/packageA/order/renew/index?buyType=${
|
|
|
+ sourceType == 1
|
|
|
+ ? '试用弹窗购买按钮进入-普通试用'
|
|
|
+ : '试用弹窗购买按钮进入-激活码试用'
|
|
|
+ }&record=` + userCardId,
|
|
|
});
|
|
|
}
|
|
|
});
|
|
@@ -1363,7 +1496,7 @@
|
|
|
$.ajax({
|
|
|
url: baseUrl + '/api/public/v1/systemBuriedPoint/stat',
|
|
|
headers: {
|
|
|
- Authorization: form.token,
|
|
|
+ Authorization: token,
|
|
|
},
|
|
|
type: 'post',
|
|
|
data: JSON.stringify({
|
|
@@ -1374,19 +1507,6 @@
|
|
|
success: function (res) {},
|
|
|
});
|
|
|
}
|
|
|
- // 观看广告次数上报
|
|
|
- function reportFrequency() {
|
|
|
- $.ajax({
|
|
|
- url: baseUrl + '/api/resoures/v1/trial/reportFrequency/' + form.userCardId,
|
|
|
- headers: {
|
|
|
- Authorization: form.token
|
|
|
- },
|
|
|
- type: 'post',
|
|
|
- contentType: 'application/json',
|
|
|
- dataType: 'json',
|
|
|
- success: function (res) {},
|
|
|
- });
|
|
|
- }
|
|
|
function quit() {
|
|
|
if (navigator.userAgent.toLowerCase().includes('toutiaomicroapp')) {
|
|
|
tt.miniProgram.switchTab({
|
|
@@ -1407,6 +1527,7 @@
|
|
|
wsss.close();
|
|
|
};
|
|
|
</script>
|
|
|
+ <script type="text/javascript" src="WXdraw.js"></script>
|
|
|
<script type="text/javascript" src="aac.js"></script>
|
|
|
</body>
|
|
|
</html>
|