李勇

1.修改白板标注模块的删除逻辑,批量删除;2.全局替换http为https的逻辑

... ... @@ -58,9 +58,17 @@ export default class MessageEntrance extends Emiter {
constructor() {
super();
//sdk 信息
GlobalConfig.sdkVersion = "v1.67.2.20170811";
GlobalConfig.sdkVersion = "v1.68.2.20170812";
loger.warn("sdkVersion:" + GlobalConfig.sdkVersion);
//设置
let locationProtocol= location.protocol;
if(locationProtocol!="https:"){
GlobalConfig.locationProtocol="http://";
}else {
GlobalConfig.locationProtocol="https://";
}
loger.warn("protocol:" + GlobalConfig.locationProtocol);
//获取设备和系统信息
SystemConfig.getSystemInfo();
... ...
... ... @@ -517,7 +517,7 @@ GlobalConfig.classDetail = {}; //Sass直接返回的当前课堂基本信息
GlobalConfig.isRecordPlayBack = false; //是否是录制回放,默认是否
GlobalConfig.allowRecordMaxTime = 14400; //(秒)允许录制的最长时间,默认是4小时
GlobalConfig.allowRecordMaxTime = 24*60*60; //(秒)允许录制的最长时间
GlobalConfig.siteId_letv = 'shchuanbao'; //乐视,MS不需要动态选点的站点
GlobalConfig.ssTunnelAppURL = ''; //屏幕共享插件的地址
... ... @@ -533,5 +533,7 @@ GlobalConfig.platform="pc";//平台 IOS/ANDROID/PC
GlobalConfig.explorer="未知";//浏览器
GlobalConfig.explorerVersion="未知";//浏览器版本
GlobalConfig.os="未知";//系统
GlobalConfig.locationProtocol="http://";//https;或http:
export default GlobalConfig;
... ...
... ... @@ -9,7 +9,7 @@ import MD5 from "md5";
import iphunter from 'iphunter';
import fetchJsonp from 'fetch-jsonp';
import ServerConfig from "config/ServerConfig";
import GlobalConfig from "GlobalConfig";
// 日志对象
const loger = Loger.getLoger('IpManager');
... ... @@ -80,7 +80,8 @@ class IpManager extends Emiter {
// //("addr=" + ip + "&token=b657c3507b324353e09c1958ee956a98efceb3e3"),转成MD5
let md5Str = MD5("addr=" + userIp + "&token=b657c3507b324353e09c1958ee956a98efceb3e3");
let timestamp = new Date().getTime();
let url = `http://ipapi.ipip.net/find?addr=${userIp}&sid=14&uid=5237&sig=${md5Str}&_=${timestamp}`;
//let url = `http://ipapi.ipip.net/find?addr=${userIp}&sid=14&uid=5237&sig=${md5Str}&_=${timestamp}`;
let url = `${GlobalConfig.locationProtocol}ipapi.ipip.net/find?addr=${userIp}&sid=14&uid=5237&sig=${md5Str}&_=${timestamp}`;
loger.log("获取IP信息->", url);
let _this = this;
fetchJsonp(url, {
... ...
... ... @@ -246,7 +246,8 @@ class RecordPlayBackParse extends Emiter {
this.initReplay();
loger.log("读取回放数据");
//let url = `http://123.56.73.119:80/h5dev/20170306/1357644520_20170306.rec`;
let url = `http://${ GlobalConfig.RecordServerIP}:${ GlobalConfig.RecordServerPort}/${GlobalConfig.recordFileName}`;
//let url = `http://${ GlobalConfig.RecordServerIP}:${ GlobalConfig.RecordServerPort}/${GlobalConfig.recordFileName}`;
let url = `${GlobalConfig.locationProtocol+ GlobalConfig.RecordServerIP}:${ GlobalConfig.RecordServerPort}/${GlobalConfig.recordFileName}`;
loger.log(url);
fetch(url, {
timeout: 180000 //加载文件超时时间3分
... ...
... ... @@ -38,7 +38,8 @@ class Sass extends Emiter {
msType int 媒体服务器类型
classType 课堂类型
*/
let url = `http://${_initInfo.portal}/3m/api/meeting/joinParams.do?meetingNumber=${_initInfo.classId}&userID=${_initInfo.userId}`;
//let url = `http://${_initInfo.portal}/3m/api/meeting/joinParams.do?meetingNumber=${_initInfo.classId}&userID=${_initInfo.userId}`;
let url = `${GlobalConfig.locationProtocol+_initInfo.portal}/3m/api/meeting/joinParams.do?meetingNumber=${_initInfo.classId}&userID=${_initInfo.userId}`;
loger.log('1.初始化init获取课堂校验信息.');
loger.log(url);
loger.log(_initInfo);
... ... @@ -117,7 +118,9 @@ class Sass extends Emiter {
isTeacher = 1
}
let url = `http://${confInfo.portal}/3m/api/meeting/signIn.do?siteId=${confInfo.siteId}&classId=${confInfo.classId}&isTeacher=${isTeacher}&password=${confInfo.password}`;
//let url = `http://${confInfo.portal}/3m/api/meeting/signIn.do?siteId=${confInfo.siteId}&classId=${confInfo.classId}&isTeacher=${isTeacher}&password=${confInfo.password}`;
let url = `${GlobalConfig.locationProtocol+confInfo.portal}/3m/api/meeting/signIn.do?siteId=${confInfo.siteId}&classId=${confInfo.classId}&isTeacher=${isTeacher}&password=${confInfo.password}`;
loger.log('3.课堂密码校验', url);
fetch(url, {
timeout: 5000
... ... @@ -154,7 +157,9 @@ class Sass extends Emiter {
//MD5校验-----------------------------------------------------------------------------------------
sendMD5Checking() {
let url = `http://${confInfo.portal}/3m/meeting/md5CheckMeeting.do?siteId=${confInfo.siteId}&meetingNumber=${confInfo.classId}&userId=${confInfo.userId}&userName=${confInfo.userName}&userType=${confInfo.userType}&nopassword=${confInfo.passwordRequired}&md5=${confInfo.md5}`;
// let url = `http://${confInfo.portal}/3m/meeting/md5CheckMeeting.do?siteId=${confInfo.siteId}&meetingNumber=${confInfo.classId}&userId=${confInfo.userId}&userName=${confInfo.userName}&userType=${confInfo.userType}&nopassword=${confInfo.passwordRequired}&md5=${confInfo.md5}`;
let url = `${GlobalConfig.locationProtocol+confInfo.portal}/3m/meeting/md5CheckMeeting.do?siteId=${confInfo.siteId}&meetingNumber=${confInfo.classId}&userId=${confInfo.userId}&userName=${confInfo.userName}&userType=${confInfo.userType}&nopassword=${confInfo.passwordRequired}&md5=${confInfo.md5}`;
loger.log('4.MD5校验', url);
fetch(url, {
timeout: 5000
... ... @@ -187,7 +192,9 @@ class Sass extends Emiter {
// 获取课堂基本详情------------------------------------------------------------------------------------
getClassDetail() {
let url = `http://${GlobalConfig.portal}/3m/meeting/getClassH5.do?classNumber=${GlobalConfig.classId}`;
// let url = `http://${GlobalConfig.portal}/3m/meeting/getClassH5.do?classNumber=${GlobalConfig.classId}`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/meeting/getClassH5.do?classNumber=${GlobalConfig.classId}`;
loger.log('获取Class详情.', url);
fetch(url, {
timeout: 5000
... ... @@ -236,7 +243,9 @@ class Sass extends Emiter {
*/
var timestamp = new Date().getTime();
var authId = MD5(GlobalConfig.classId + "" + timestamp); //课堂号+时间戳 的字符串,转成MD5
let url = `http://${GlobalConfig.portal}/3m/api/meeting/detail.do?meetingNumber=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
//let url = `http://${GlobalConfig.portal}/3m/api/meeting/detail.do?meetingNumber=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/meeting/detail.do?meetingNumber=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
loger.log('5.获取课堂课堂的完整信息 ');
loger.log(url);
fetch(url, {
... ... @@ -286,8 +295,10 @@ class Sass extends Emiter {
}
var timestamp = new Date().getTime();
var authId = MD5(_param.docId + "" + _param.classId + "" + timestamp); // docId+classId+timestamp的字符串,转成MD5
let url = `http://${GlobalConfig.portal}/3m/api/document/deleteRelation.do?docId=${_param.docId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
loger.log('sassDeleteDocument', url);
//let url = `http://${GlobalConfig.portal}/3m/api/document/deleteRelation.do?docId=${_param.docId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/document/deleteRelation.do?docId=${_param.docId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
loger.log('删除文档', url);
fetch(url, {
timeout: 5000
... ... @@ -326,7 +337,9 @@ class Sass extends Emiter {
console.warn('删除Music共享实现...');
var timestamp = new Date().getTime();
var authId = MD5(_param.fileId + "" + _param.classId + "" + timestamp); // docId+classId+timestamp的字符串,转成MD5
let url = `http://${GlobalConfig.portal}/3m/api/media/deleteRelation.do?mediaId=${_param.fileId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
//let url = `http://${GlobalConfig.portal}/3m/api/media/deleteRelation.do?mediaId=${_param.fileId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/media/deleteRelation.do?mediaId=${_param.fileId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
loger.log('删除媒体共享文件', url);
fetch(url, {
... ... @@ -366,7 +379,9 @@ class Sass extends Emiter {
}
var timestamp = new Date().getTime();
var authId = MD5(_param.fileId + "" + _param.classId + "" + timestamp); // docId+classId+timestamp的字符串,转成MD5
let url = `http://${GlobalConfig.portal}/3m/api/sharedMedia/deleteRelation.do?fileId=${_param.fileId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
//let url = `http://${GlobalConfig.portal}/3m/api/sharedMedia/deleteRelation.do?fileId=${_param.fileId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/sharedMedia/deleteRelation.do?fileId=${_param.fileId}&classId=${GlobalConfig.classId}&timestamp=${timestamp}&authId=${authId}`;
loger.log('删除媒体共享文件', url);
fetch(url, {
... ... @@ -419,7 +434,9 @@ class Sass extends Emiter {
var timestamp = new Date().getTime();
var authId = MD5(GlobalConfig.classId + "" + timestamp); // (classId+timestamp)的字符串,转成MD5
let classStatusInfo = JSON.stringify(_param.classStatusInfo);
let url = `http://${GlobalConfig.portal}/3m/api/meeting/saveInfo.do`;
//let url = `http://${GlobalConfig.portal}/3m/api/meeting/saveInfo.do`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/meeting/saveInfo.do`;
loger.log('saveClassStatusInfo', url);
fetch(url, {
method: 'POST',
... ... @@ -483,7 +500,9 @@ class Sass extends Emiter {
let timestamp = new Date().getTime();
let authId = MD5(key + siteID + meetingID + timestamp);
let url = `http://${GlobalConfig.portal}/3m/recordingMeeting/insertRecordingMeeting.do`;
//let url = `http://${GlobalConfig.portal}/3m/recordingMeeting/insertRecordingMeeting.do`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/recordingMeeting/insertRecordingMeeting.do`;
loger.log('saveClassRecordContrlInfo', url);
fetch(encodeURI(url), {
... ... @@ -546,7 +565,8 @@ class Sass extends Emiter {
let correct = _param.correct.toString();
let options = JSON.stringify(_param.options);
let url = `http://${GlobalConfig.portal}/3m/api/question/add.do`;
//let url = `http://${GlobalConfig.portal}/3m/api/question/add.do`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/question/add.do`;
loger.log('创建答题数据', url);
fetch(encodeURI(url), {
... ... @@ -622,7 +642,8 @@ class Sass extends Emiter {
let userId = _param.userId;
let userName = _param.userName;
let url = `http://${GlobalConfig.portal}/3m/api/question/answer.do`;
// let url = `http://${GlobalConfig.portal}/3m/api/question/answer.do`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/question/answer.do`;
loger.log('保存答题数据', url);
fetch(encodeURI(url), {
... ... @@ -675,7 +696,8 @@ class Sass extends Emiter {
//questionId long 题目id
let questionId = parseInt(_param.questionId); //题目id
let url = `http://${GlobalConfig.portal}/3m/api/question/get.do`;
// let url = `http://${GlobalConfig.portal}/3m/api/question/get.do`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/question/get.do`;
loger.log('查询题目数据', url);
//接口中用的是GET
fetch(encodeURI(url), {
... ... @@ -733,7 +755,8 @@ class Sass extends Emiter {
//questionId long 题目id
let questionId = parseInt(_param.questionId); //题目id
let url = `http://${GlobalConfig.portal}/3m/api/question/results.do`;
//let url = `http://${GlobalConfig.portal}/3m/api/question/results.do`;
let url = `${GlobalConfig.locationProtocol+GlobalConfig.portal}/3m/api/question/results.do`;
loger.log('查询答题结果数据', url);
fetch(encodeURI(url), {
... ...
... ... @@ -46,7 +46,8 @@ class MediaModule {
fileName = 'playlist.m3u8';
}
port = (GlobalConfig.MS_PLAY_HLS_PORT == "" || GlobalConfig.MS_PLAY_HLS_PORT == null) ? "" : ":" + GlobalConfig.MS_PLAY_HLS_PORT;
path = "http://" + GlobalConfig.MS_PLAY_HLS_IP
//path = "http://" + GlobalConfig.MS_PLAY_HLS_IP
path =GlobalConfig.locationProtocol + GlobalConfig.MS_PLAY_HLS_IP
+ port + "/live/"
+ _param.streamId
+ ".m3u8";//
... ... @@ -79,7 +80,8 @@ class MediaModule {
}
//M3U8 http://123.56.73.119:6001/live/h5dev_2106728010_8ab3b0ed5a3a9220015a3a958f0d0003_983041_1489113860/total.m3u8
let port = (GlobalConfig.RS_RECORD_PLAY_PORT == "" || GlobalConfig.RS_RECORD_PLAY_PORT == null) ? "" : ":" + GlobalConfig.RS_RECORD_PLAY_PORT;
let path = "http://" + GlobalConfig.RS_RECORD_PLAY_IP
//let path = "http://" + GlobalConfig.RS_RECORD_PLAY_IP
let path =GlobalConfig.locationProtocol + GlobalConfig.RS_RECORD_PLAY_IP
+ port + "/live/"
+ _param.streamId
+ "/total.m3u8";
... ...
... ... @@ -59,13 +59,14 @@ class WhiteBoardApe extends Ape {
}
//清除当前模块的数据
clearData(){
clearData() {
loger.log("clearData->")
this.annoInfos = {};//储存所有的标注数据
this.insertHistory = [];//添加的白板记录,用于撤回操作
}
//更新文档模块的录制信息,每次开启录制的时候需要把当前文档的信息更新一次
updaterRecordApeStatus(_param){
updaterRecordApeStatus(_param) {
/* if(GlobalConfig.isHost&&!GlobalConfig.isRecordPlayBack){
let curPageAnnos={};
for (let key in this.annoInfos) {
... ... @@ -81,18 +82,18 @@ class WhiteBoardApe extends Ape {
loger.log("开启录制成功->当前没有标注数据需要更新->docId:", GlobalConfig.activeDocId, 'page:',GlobalConfig.activeDocCurPage);
}
}*/
let curPageAnnos={};
let curPageAnnos = {};
for (let key in this.annoInfos) {
let item = this.annoInfos[key];
if (item && item.parentId == GlobalConfig.activeDocId && item.curPageNo == GlobalConfig.activeDocCurPage) {
curPageAnnos[key]=item;
curPageAnnos[key] = item;
}
}
if(Object.keys(curPageAnnos).length>0){
loger.warn("录制状态发送改变->更新当前的标注数据->docId:", GlobalConfig.activeDocId, 'page:',GlobalConfig.activeDocCurPage);
this.sendUpdaterAnnotaion({"itemIdxArr":curPageAnnos});
}else {
loger.warn("录制状态发送改变->当前没有标注数据需要更新->docId:", GlobalConfig.activeDocId, 'page:',GlobalConfig.activeDocCurPage);
if (Object.keys(curPageAnnos).length > 0) {
loger.warn("录制状态发送改变->更新当前的标注数据->docId:", GlobalConfig.activeDocId, 'page:', GlobalConfig.activeDocCurPage);
this.sendUpdaterAnnotaion({"itemIdxArr": curPageAnnos});
} else {
loger.warn("录制状态发送改变->当前没有标注数据需要更新->docId:", GlobalConfig.activeDocId, 'page:', GlobalConfig.activeDocCurPage);
}
}
... ... @@ -100,7 +101,7 @@ class WhiteBoardApe extends Ape {
// 添加标注,发送信息
sendInsetAnnotaion(_param) {
if (_param == null || EngineUtils.isEmptyObject(_param)) {
loger.warn('添加标注失败->参数错误->',_param);
loger.warn('添加标注失败->参数错误->', _param);
this._emit(MessageTypes.MCU_ERROR, MessageTypes.ERR_APE_INTERFACE_PARAM_WRONG);
return;
}
... ... @@ -108,7 +109,7 @@ class WhiteBoardApe extends Ape {
let itemIdx = EngineUtils.creatSoleNumberFromTimestamp();//创建时间戳,保证每条数据的唯一
let whiteBoardModelPdu = this.packPdu(_param, itemIdx);
if (whiteBoardModelPdu == null) {
loger.warn('添加标注失败-->参数错误->',_param);
loger.warn('添加标注失败-->参数错误->', _param);
this._emit(MessageTypes.MCU_ERROR, MessageTypes.ERR_APE_INTERFACE_PARAM_WRONG);
return;
}
... ... @@ -140,7 +141,7 @@ class WhiteBoardApe extends Ape {
adapterPdu.type = pdu.RCPDU_REG_ADAPTER;
adapterPdu.item.push(adapterItemPdu);
loger.log("添加标注->itemIdx=" + tableItemPdu.itemIdx);
//loger.log("添加标注->itemIdx=" + tableItemPdu.itemIdx);
this.sendUniform(adapterPdu, true);
}
... ... @@ -151,49 +152,49 @@ class WhiteBoardApe extends Ape {
loger.warn("无法继续上一步操作,已经没有可以撤销的数据");
return;
}
let annoItem=this.insertHistory.pop();
if(annoItem){
let temAnnos={};
temAnnos[annoItem.itemIdx]=annoItem;
this.sendDeleteAnnotaion({"itemIdxArr":temAnnos});
let annoItem = this.insertHistory.pop();
if (annoItem) {
let temAnnos = {};
temAnnos[annoItem.itemIdx] = annoItem;
this.sendDeleteAnnotaion({"itemIdxArr": temAnnos});
}
}
//删除当前页码的所有标注
sendDeleteCurPageAnnotation(_param) {
this.insertHistory=[];
let curPageAnnos={};
this.insertHistory = [];
let curPageAnnos = {};
for (let key in this.annoInfos) {
let item = this.annoInfos[key];
if (item && item.parentId == GlobalConfig.activeDocId && item.curPageNo == GlobalConfig.activeDocCurPage) {
//loger.log("sendDeleteCurPageAnnotation 删除当前页面上的标注", key);
//this.sendDeleteAnnotaion({"itemIdx": key});
curPageAnnos[key]=item;
curPageAnnos[key] = item;
}
}
this.sendDeleteAnnotaion({"itemIdxArr":curPageAnnos});
this.sendDeleteAnnotaion({"itemIdxArr": curPageAnnos});
}
//删除所有标注
sendDeleteAllAnnotation(_param) {
this.insertHistory=[];
this.insertHistory = [];
/* for (let key in this.annoInfos) {
this.sendDeleteAnnotaion({"itemIdx": key});
}*/
this.sendDeleteAnnotaion({"itemIdxArr":this.annoInfos});
this.sendDeleteAnnotaion({"itemIdxArr": this.annoInfos});
}
//删除标注,发送信息 {"itemIdxArr":{}}
sendDeleteAnnotaion(_param) {
if (_param == null||_param.itemIdxArr==null) {
loger.warn("要删除的数据不存在->",_param);
if (_param == null || _param.itemIdxArr == null) {
loger.warn("要删除的数据不存在->", _param);
return;
}
let adapterPdu = new pdu['RCAdapterPdu'];
adapterPdu.type = pdu.RCPDU_REG_ADAPTER;
for (let key in _param.itemIdxArr) {
/*for (let key in _param.itemIdxArr) {
let tableDeleteItemPdu = new pdu['RCRegistryTableDeleteItemPdu'];
tableDeleteItemPdu.type = pdu.RCPDU_REG_TABLE_DELETE_PDU;//
tableDeleteItemPdu.itemIdx = parseInt(key);//这里需要设置要删除的数据的itemIdx,每条数据的这个id都不一样
... ... @@ -208,10 +209,28 @@ class WhiteBoardApe extends Ape {
adapterItemPdu.type = pdu.RCPDU_REG_UPDATE_OBJ;
adapterItemPdu.itemData = updateObjPdu.toArrayBuffer();
adapterPdu.item.push(adapterItemPdu);
}*/
let tableDeleteItemPdu = new pdu['RCRegistryTableDeleteItemPdu'];
tableDeleteItemPdu.type = pdu.RCPDU_REG_TABLE_DELETE_PDU;//
for (let key in _param.itemIdxArr) {
tableDeleteItemPdu.itemIdx.push(parseInt(key));//这里需要设置要删除的数据的itemIdx,每条数据的这个id都不一样
}
loger.log("发送删除白板标注数据->长度:" + adapterPdu.item.length);
loger.log("发送删除白板标注数据->数量:" + tableDeleteItemPdu.itemIdx.length);
let updateObjPdu = new pdu['RCRegistryUpdateObjPdu'];
updateObjPdu.objId = ApeConsts.WHITEBOARD_OBJ_TABLE_ID;
updateObjPdu.subType = tableDeleteItemPdu.type;
updateObjPdu.userData = tableDeleteItemPdu.toArrayBuffer();
//同步
let adapterItemPdu = new pdu['RCAdapterItemPdu'];
adapterItemPdu.type = pdu.RCPDU_REG_UPDATE_OBJ;
adapterItemPdu.itemData = updateObjPdu.toArrayBuffer();
adapterPdu.item.push(adapterItemPdu);
//loger.log("发送删除白板标注数据->长度:" + tableDeleteItemPdu.itemIdx.length);
this.sendUniform(adapterPdu, true);
}
/*sendDeleteAnnotaion(_param) {
if (_param == null) {
loger.warn("要删除的数据不存在");
... ... @@ -243,11 +262,9 @@ class WhiteBoardApe extends Ape {
}*/
//更新标注
sendUpdaterAnnotaion(_param) {
if (_param == null ||_param.itemIdxArr==null) {
if (_param == null || _param.itemIdxArr == null) {
loger.log('更新标注数据->失败->参数错误');
this._emit(MessageTypes.MCU_ERROR, MessageTypes.ERR_APE_INTERFACE_PARAM_WRONG);
return;
... ... @@ -255,8 +272,8 @@ class WhiteBoardApe extends Ape {
let adapterPdu = new pdu['RCAdapterPdu'];
adapterPdu.type = pdu.RCPDU_REG_ADAPTER;
for (let key in _param.itemIdxArr) {
let itemIdx =parseInt(key);
let item= _param.itemIdxArr[key];
let itemIdx = parseInt(key);
let item = _param.itemIdxArr[key];
let whiteBoardModelPdu = this.packPdu(item, itemIdx);
if (whiteBoardModelPdu == null) {
loger.log('更新标注数据->失败->数据无效');
... ... @@ -285,11 +302,11 @@ class WhiteBoardApe extends Ape {
adapterItemPdu.itemData = updateObjPdu.toArrayBuffer();
adapterPdu.item.push(adapterItemPdu);
}
let len=adapterPdu.item.length
if(len>0){
loger.log("更新标注数据->发送数量->",adapterPdu.item.length);
let len = adapterPdu.item.length
if (len > 0) {
loger.log("更新标注数据->发送数量->", adapterPdu.item.length);
this.sendUniform(adapterPdu, true);
}else {
} else {
loger.log("更新标注数据->没有可更新的数据");
}
}
... ... @@ -297,7 +314,7 @@ class WhiteBoardApe extends Ape {
/////收到消息处理/////////////////////////////////////////////////////////////////////////////////
tableInsertHandler(owner, itemIdx, itemData) {
let whiteBoardModel = this.unPackPdu(owner, itemIdx, itemData);
loger.log('tableInsertHandler',"activeDocId->",GlobalConfig.activeDocId ,"parentId->", whiteBoardModel.parentId);
loger.log('新增标注', "activeDocId->", GlobalConfig.activeDocId, "parentId->", whiteBoardModel.parentId);
//loger.log(whiteBoardModel);
if (whiteBoardModel) {
if (GlobalConfig.activeDocId == whiteBoardModel.parentId && GlobalConfig.activeDocCurPage == whiteBoardModel.curPageNo) {
... ... @@ -317,9 +334,9 @@ class WhiteBoardApe extends Ape {
}*/
}
tableUpdateApeHandler(_tableUpdateItems,_seekTime){
tableUpdateApeHandler(_tableUpdateItems, _seekTime) {
let tableUpdateItemsLen = _tableUpdateItems.length;
loger.log('白板标注更新->',"activeDocId->",GlobalConfig.activeDocId ,"数量->", tableUpdateItemsLen);
loger.log('白板标注更新->', "activeDocId->", GlobalConfig.activeDocId, "数量->", tableUpdateItemsLen);
for (let i = 0; i < tableUpdateItemsLen; ++i) {
let tableItem = _tableUpdateItems[i];
let whiteBoardModel = this.unPackPdu(tableItem.owner, tableItem.itemIdx, tableItem.itemData);
... ... @@ -335,7 +352,7 @@ class WhiteBoardApe extends Ape {
let itemIdxs = tableDeleteData.itemIdx;
for (let i = 0; i < len; i++) {
if (this.annoInfos[itemIdxs[i]]) {
loger.log("删除白板数据:", itemIdxs[i]);
//loger.log("删除白板数据:", itemIdxs[i]);
delete this.annoInfos[itemIdxs[i]];
}
}
... ... @@ -367,8 +384,8 @@ class WhiteBoardApe extends Ape {
}
//判断当前是否有文档在显示,如果文档没有显示就显示默认的白板数据
if(GlobalConfig.activeDocId==0){
this.insertHistory=[];
if (GlobalConfig.activeDocId == 0) {
this.insertHistory = [];
this.updateAandShowAnnotaion();
}
}
... ... @@ -443,7 +460,7 @@ class WhiteBoardApe extends Ape {
whiteBoardModelPdu.pointGroup = EngineUtils.arrayToJsonString(_param.pointGroup);
whiteBoardModelPdu.color = _param.color || "#000000";
whiteBoardModelPdu.thickness = _param.thickness ||1;
whiteBoardModelPdu.thickness = _param.thickness || 1;
return whiteBoardModelPdu;
}
... ...