李勇

1.白板文档模块优化删除和更新逻辑

2.课堂加入成功之后返回的数据值中增加当前课堂状态
此 diff 太大无法显示。
@@ -574,6 +574,7 @@ export default class MessageEntrance extends Emiter { @@ -574,6 +574,7 @@ export default class MessageEntrance extends Emiter {
574 joinClassSuccessCallBackData.DOCServerIP = GlobalConfig.DOCServerIP; 574 joinClassSuccessCallBackData.DOCServerIP = GlobalConfig.DOCServerIP;
575 joinClassSuccessCallBackData.DOCServerPort = GlobalConfig.DOCServerPort; 575 joinClassSuccessCallBackData.DOCServerPort = GlobalConfig.DOCServerPort;
576 576
  577 + joinClassSuccessCallBackData.classStatus= GlobalConfig.classStatus;
577 joinClassSuccessCallBackData.classId = GlobalConfig.classId; 578 joinClassSuccessCallBackData.classId = GlobalConfig.classId;
578 joinClassSuccessCallBackData.className = GlobalConfig.className; 579 joinClassSuccessCallBackData.className = GlobalConfig.className;
579 joinClassSuccessCallBackData.h5Module = GlobalConfig.h5Module; 580 joinClassSuccessCallBackData.h5Module = GlobalConfig.h5Module;
@@ -991,7 +992,7 @@ export default class MessageEntrance extends Emiter { @@ -991,7 +992,7 @@ export default class MessageEntrance extends Emiter {
991 return; 992 return;
992 } 993 }
993 loger.log('Doc UpdateId ->'); 994 loger.log('Doc UpdateId ->');
994 - loger.log(_data); 995 + //loger.log(_data);
995 if (_whiteboard_ape) { 996 if (_whiteboard_ape) {
996 _whiteboard_ape.docUpdateHandler(_data); 997 _whiteboard_ape.docUpdateHandler(_data);
997 } 998 }
@@ -1127,6 +1128,7 @@ export default class MessageEntrance extends Emiter { @@ -1127,6 +1128,7 @@ export default class MessageEntrance extends Emiter {
1127 joinClassSuccessCallBackData.DOCServerIP = GlobalConfig.DOCServerIP; 1128 joinClassSuccessCallBackData.DOCServerIP = GlobalConfig.DOCServerIP;
1128 joinClassSuccessCallBackData.DOCServerPort = GlobalConfig.DOCServerPort; 1129 joinClassSuccessCallBackData.DOCServerPort = GlobalConfig.DOCServerPort;
1129 1130
  1131 + joinClassSuccessCallBackData.classStatus= GlobalConfig.classStatus;
1130 joinClassSuccessCallBackData.classId = GlobalConfig.classId; 1132 joinClassSuccessCallBackData.classId = GlobalConfig.classId;
1131 joinClassSuccessCallBackData.className = GlobalConfig.className; 1133 joinClassSuccessCallBackData.className = GlobalConfig.className;
1132 joinClassSuccessCallBackData.h5Module = GlobalConfig.h5Module; 1134 joinClassSuccessCallBackData.h5Module = GlobalConfig.h5Module;
@@ -116,8 +116,8 @@ class GlobalConfig { @@ -116,8 +116,8 @@ class GlobalConfig {
116 this.recordFileName=data.recordFileName||this.recordFileName;//录制的文件名 116 this.recordFileName=data.recordFileName||this.recordFileName;//录制的文件名
117 this.recordDownloadUrl=data.recordDownloadUrl||this.recordDownloadUrl;//下载地址 117 this.recordDownloadUrl=data.recordDownloadUrl||this.recordDownloadUrl;//下载地址
118 118
119 - this.activeDocId=data.activeDocId||this.activeDocId;//当前激活的文档ID  
120 - this.activeDocCurPage=data.activeDocCurPage||this.activeDocCurPage;//当前激活的文档的当前页 119 + //this.activeDocId=data.activeDocId||this.activeDocId;//当前激活的文档ID
  120 + //this.activeDocCurPage=data.activeDocCurPage||this.activeDocCurPage;//当前激活的文档的当前页
121 121
122 } 122 }
123 123
@@ -168,10 +168,14 @@ export default class Ape extends Emiter { @@ -168,10 +168,14 @@ export default class Ape extends Emiter {
168 //loger.log("RCRegistryTableUpdateItemPdu " + tableUpdateItemsLen); 168 //loger.log("RCRegistryTableUpdateItemPdu " + tableUpdateItemsLen);
169 //loger.log(tableUpdateData); 169 //loger.log(tableUpdateData);
170 170
  171 +
171 for (let i = 0; i < tableUpdateItemsLen; ++i) { 172 for (let i = 0; i < tableUpdateItemsLen; ++i) {
172 let tableItem = tableUpdateItems[i]; 173 let tableItem = tableUpdateItems[i];
173 this.tableUpdateHandler(tableItem.owner, tableItem.itemIdx, tableItem.itemData,seekTime); 174 this.tableUpdateHandler(tableItem.owner, tableItem.itemIdx, tableItem.itemData,seekTime);
174 } 175 }
  176 +
  177 + //白板数据内部自己处理数组
  178 + this.tableUpdateApeHandler(tableUpdateItems);
175 break; 179 break;
176 case pdu.RCPDU_REG_QUEUE_UPDATE_PDU: 180 case pdu.RCPDU_REG_QUEUE_UPDATE_PDU:
177 case pdu.RCPDU_REG_QUEUE_DELETE_PDU: 181 case pdu.RCPDU_REG_QUEUE_DELETE_PDU:
@@ -202,7 +206,9 @@ export default class Ape extends Emiter { @@ -202,7 +206,9 @@ export default class Ape extends Emiter {
202 tableUpdateHandler(ownerId, recordId, recordData,seekTime) { 206 tableUpdateHandler(ownerId, recordId, recordData,seekTime) {
203 loger.warn(this._session_name + ' tableUpdateHandler 应有子类具体覆盖处理.'); 207 loger.warn(this._session_name + ' tableUpdateHandler 应有子类具体覆盖处理.');
204 } 208 }
  209 + tableUpdateApeHandler(tableUpdateItems,seekTime){
205 210
  211 + }
206 tableDeleteHandler(tableId, record) { 212 tableDeleteHandler(tableId, record) {
207 loger.warn(this._session_name + ' tableDelHandler 应有子类具体覆盖处理.'); 213 loger.warn(this._session_name + ' tableDelHandler 应有子类具体覆盖处理.');
208 } 214 }
@@ -359,14 +359,14 @@ class DocApe extends Ape { @@ -359,14 +359,14 @@ class DocApe extends Ape {
359 for (let i=0;i<len;i++){ 359 for (let i=0;i<len;i++){
360 if(this.docList[itemIdxs[i]]){ 360 if(this.docList[itemIdxs[i]]){
361 loger.log("删除文档数据:",itemIdxs[i]); 361 loger.log("删除文档数据:",itemIdxs[i]);
362 - //this._emit(MessageTypes.DOC_DELETE,itemIdxs[i]);  
363 - this._emit(MessageTypes.DOC_DELETE, {"itemIdx": itemIdxs[i]}); 362 + //this._emit(MessageTypes.DOC_DELETE, {"itemIdx": itemIdxs[i]});
364 let itemDataInfo=this.docList[itemIdxs[i]]; 363 let itemDataInfo=this.docList[itemIdxs[i]];
365 if(itemDataInfo&&(itemDataInfo.visible=="true"||itemDataInfo.visible==true)){ 364 if(itemDataInfo&&(itemDataInfo.visible=="true"||itemDataInfo.visible==true)){
366 GlobalConfig.activeDocId=0;//当前激活的文档ID 365 GlobalConfig.activeDocId=0;//当前激活的文档ID
367 GlobalConfig.activeDocCurPage=1;//当前激活的文档的当前页 366 GlobalConfig.activeDocCurPage=1;//当前激活的文档的当前页
368 loger.log('tableDeleteHandler 设置当前激活的文档id'); 367 loger.log('tableDeleteHandler 设置当前激活的文档id');
369 } 368 }
  369 + this._emit(MessageTypes.DOC_DELETE, {"itemIdx": itemIdxs[i]});
370 delete this.docList[itemIdxs[i]]; 370 delete this.docList[itemIdxs[i]];
371 } 371 }
372 } 372 }
@@ -123,6 +123,7 @@ class WhiteBoardApe extends Ape { @@ -123,6 +123,7 @@ class WhiteBoardApe extends Ape {
123 123
124 //删除当前页码的所有标注 124 //删除当前页码的所有标注
125 sendDeleteCurPageAnnotation(_param) { 125 sendDeleteCurPageAnnotation(_param) {
  126 + this.insertHistory=[];
126 for (let key in this.annoInfos) { 127 for (let key in this.annoInfos) {
127 let item = this.annoInfos[key]; 128 let item = this.annoInfos[key];
128 if (item && item.parentId == GlobalConfig.activeDocId && item.curPageNo == GlobalConfig.activeDocCurPage) { 129 if (item && item.parentId == GlobalConfig.activeDocId && item.curPageNo == GlobalConfig.activeDocCurPage) {
@@ -134,6 +135,7 @@ class WhiteBoardApe extends Ape { @@ -134,6 +135,7 @@ class WhiteBoardApe extends Ape {
134 135
135 //删除所有标注 136 //删除所有标注
136 sendDeleteAllAnnotation(_param) { 137 sendDeleteAllAnnotation(_param) {
  138 + this.insertHistory=[];
137 for (let key in this.annoInfos) { 139 for (let key in this.annoInfos) {
138 this.sendDeleteAnnotaion({"itemIdx": key}); 140 this.sendDeleteAnnotaion({"itemIdx": key});
139 } 141 }
@@ -224,7 +226,7 @@ class WhiteBoardApe extends Ape { @@ -224,7 +226,7 @@ class WhiteBoardApe extends Ape {
224 /////收到消息处理///////////////////////////////////////////////////////////////////////////////// 226 /////收到消息处理/////////////////////////////////////////////////////////////////////////////////
225 tableInsertHandler(owner, itemIdx, itemData) { 227 tableInsertHandler(owner, itemIdx, itemData) {
226 let whiteBoardModel = this.unPackPdu(owner, itemIdx, itemData); 228 let whiteBoardModel = this.unPackPdu(owner, itemIdx, itemData);
227 - loger.log('tableInsertHandler'); 229 + loger.log('tableInsertHandler',"activeDocId->",GlobalConfig.activeDocId ,"parentId->", whiteBoardModel.parentId);
228 loger.log(whiteBoardModel); 230 loger.log(whiteBoardModel);
229 if (whiteBoardModel) { 231 if (whiteBoardModel) {
230 if (GlobalConfig.activeDocId == whiteBoardModel.parentId && GlobalConfig.activeDocCurPage == whiteBoardModel.curPageNo) { 232 if (GlobalConfig.activeDocId == whiteBoardModel.parentId && GlobalConfig.activeDocCurPage == whiteBoardModel.curPageNo) {
@@ -236,12 +238,23 @@ class WhiteBoardApe extends Ape { @@ -236,12 +238,23 @@ class WhiteBoardApe extends Ape {
236 } 238 }
237 239
238 tableUpdateHandler(owner, itemIdx, itemData) { 240 tableUpdateHandler(owner, itemIdx, itemData) {
239 - let whiteBoardModel = this.unPackPdu(owner, itemIdx, itemData);  
240 - loger.log('tableUpdateHandler'); 241 + //白板标注数据不在这个函数中处理,在tableUpdateApeHandler中处理
  242 + /*let whiteBoardModel = this.unPackPdu(owner, itemIdx, itemData);
  243 + loger.log('tableUpdateHandler',"activeDocId->",GlobalConfig.activeDocId ,"parentId->", whiteBoardModel.parentId);
241 loger.log(whiteBoardModel); 244 loger.log(whiteBoardModel);
242 if (whiteBoardModel && whiteBoardModel.parentId == GlobalConfig.activeDocId && whiteBoardModel.curPageNo == GlobalConfig.activeDocCurPage) { 245 if (whiteBoardModel && whiteBoardModel.parentId == GlobalConfig.activeDocId && whiteBoardModel.curPageNo == GlobalConfig.activeDocCurPage) {
243 this.updateAandShowAnnotaion(); 246 this.updateAandShowAnnotaion();
  247 + }*/
  248 + }
  249 +
  250 + tableUpdateApeHandler(_tableUpdateItems,_seekTime){
  251 + let tableUpdateItemsLen = _tableUpdateItems.length;
  252 + loger.log('tableUpdateApeHandler',"activeDocId->",GlobalConfig.activeDocId ,"tableUpdateItemsLen->", tableUpdateItemsLen);
  253 + for (let i = 0; i < tableUpdateItemsLen; ++i) {
  254 + let tableItem = _tableUpdateItems[i];
  255 + let whiteBoardModel = this.unPackPdu(tableItem.owner, tableItem.itemIdx, tableItem.itemData);
244 } 256 }
  257 + this.updateAandShowAnnotaion();
245 } 258 }
246 259
247 tableDeleteHandler(object_id, tableDeleteData) { 260 tableDeleteHandler(object_id, tableDeleteData) {
@@ -283,6 +296,12 @@ class WhiteBoardApe extends Ape { @@ -283,6 +296,12 @@ class WhiteBoardApe extends Ape {
283 this.sendDeleteAnnotaion({"itemIdx": key}); 296 this.sendDeleteAnnotaion({"itemIdx": key});
284 } 297 }
285 } 298 }
  299 +
  300 + //判断当前是否有文档在显示,如果文档没有显示就显示默认的白板数据
  301 + if(GlobalConfig.activeDocId==0){
  302 + this.insertHistory=[];
  303 + this.updateAandShowAnnotaion();
  304 + }
286 } 305 }
287 306
288 //增量添加标注 307 //增量添加标注