|
@@ -601,6 +601,8 @@ us.send = function (response, messageinfo) {
|
|
|
break;
|
|
|
//未来课堂交互
|
|
|
case "us.cscl":
|
|
|
+ console.log("================aaaaa===================");
|
|
|
+ console.log(_messageobj[i]);
|
|
|
_messagearr = _messageobj[i]; //获取word消息
|
|
|
//得到word所有的用户
|
|
|
for (j = 0; j < _messagearr.length; j++) {
|
|
@@ -614,8 +616,10 @@ us.send = function (response, messageinfo) {
|
|
|
_messagelist[_messagearr[j].receiveId] = [_message];
|
|
|
}
|
|
|
us.cscl[_messagearr[j].receiveId] && us.cscl[_messagearr[j].receiveId].history.push(_message);
|
|
|
- us.updatecscl(_message.messageInfo);
|
|
|
+ us.updatecscl(_message.messageInfo, _messagearr[j].receiveId);
|
|
|
}
|
|
|
+ // console.log(_messagelist)
|
|
|
+ // console.log(_messagearr)
|
|
|
//调用群发函数
|
|
|
_messagearr[0] && us.broadcast(_messagelist, _messagearr[0].messageInfo.pageId, 'cscl');
|
|
|
break;
|
|
@@ -736,21 +740,49 @@ us.updatemindNetwork = function (messageInfo) {
|
|
|
* @param {object} message 消息信息
|
|
|
*/
|
|
|
us.updatecscl = function (messageInfo, classId) {
|
|
|
+ messageInfo = messageInfo;
|
|
|
+ console.log("------------s------------");
|
|
|
+ console.log(us.cscl[classId])
|
|
|
if (us.cscl[classId]) {
|
|
|
var i, j, _is;
|
|
|
var _obj = us.cscl[classId].content;
|
|
|
_obj.backgroundUrl = messageInfo.backgroundUrl;
|
|
|
- _obj.edges = messageInfo.edges;
|
|
|
- _obj.nodes = messageInfo.nodes;
|
|
|
- // for (j = 0; j < messageInfo.edges.length; j++) {
|
|
|
- // _is = true;
|
|
|
- // for (i = 0; i < _obj.edges.length; i++) {
|
|
|
- // if (_obj.edges[i].id == messageInfo.edges[i].id) {
|
|
|
- // _obj.edges[i] = messageInfo.edges[i];
|
|
|
- // break;
|
|
|
- // }
|
|
|
- // }
|
|
|
- // }
|
|
|
+ _obj.edges = _obj.edges || [];
|
|
|
+ _obj.nodes = _obj.nodes || [];
|
|
|
+ for (j = 0; j < messageInfo.edges.length; j++) {
|
|
|
+ _is = true;
|
|
|
+ for (i = 0; i < _obj.edges.length; i++) {
|
|
|
+ if (_obj.edges[i].id == messageInfo.edges[j].id) {
|
|
|
+ _obj.edges[i] = messageInfo.edges[j];
|
|
|
+ _is = false;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (_is) {
|
|
|
+ _obj.edges.push(messageInfo.edges[j])
|
|
|
+ }
|
|
|
+ }
|
|
|
+ console.log("------------a------------");
|
|
|
+ console.log(messageInfo.nodes)
|
|
|
+ console.log(_obj.nodes)
|
|
|
+ for (j = 0; j < messageInfo.nodes.length; j++) {
|
|
|
+ _is = true;
|
|
|
+ for (i = 0; i < _obj.nodes.length; i++) {
|
|
|
+ if (_obj.nodes[i].id == messageInfo.nodes[j].id) {
|
|
|
+ _obj.nodes[i] = messageInfo.nodes[j];
|
|
|
+ _is = false;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (_is) {
|
|
|
+ _obj.nodes.push(messageInfo.nodes[j])
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //如果不存在则去数据库查找
|
|
|
+ us.mysql.usselect(['172.16.12.5', 'pbl', 'updateRoomData', JSON.stringify(_obj), classId],
|
|
|
+ function (ret) {
|
|
|
+ });
|
|
|
+
|
|
|
|
|
|
//"nodes":[{"id":"9f6d7459-d376-4c0c-944b-a6b140085903","type":"icon-start","x":625,"y":145,"properties":{},"zIndex":1002,"text":{"x":625,"y":145,"value":"起始"}},{"id":"16e18308-7517-4162-8b32-a877b7cf42a0","type":"icon-card","x":325,"y":445,"properties":{},"zIndex":1002},{"id":"5c492b0d-092d-4d84-bd70-4d5734de9266","type":"icon-select","x":970,"y":510,"properties":{},"zIndex":1002}],
|
|
|
//"edges":[],
|
|
@@ -1403,19 +1435,26 @@ us.broadcast = function (messageinfo, pageid, type) {
|
|
|
for (i in messageinfo) {
|
|
|
_messageinfo = messageinfo[i]; //记录消息消息
|
|
|
_users = us[type][i] ? us[type][i].user : {}; //记录用户集合
|
|
|
+ // console.log("=================e=============");
|
|
|
+ // console.log(us[type][i]);
|
|
|
+ // console.log(us.connect);
|
|
|
+ // console.log(_messageinfo);
|
|
|
for (j in _users) { //循环处理每个用户处理 给每个用户集合下的用户发送消息
|
|
|
_pageids = _users[j]; //记录当前用户在每个端登录的页面唯一识别ID
|
|
|
+ console.log(_pageids);
|
|
|
for (o = 0; o < _pageids.length; o++) { //循环发送给当前用户在每个端登录的用户
|
|
|
_recievedpageid = _pageids[o]; //记录接受者页面唯一识别ID 用于区分是否是发送用户
|
|
|
if (_recievedpageid != pageid) { //如果接受用户不等于发送用户则发送消息
|
|
|
try {
|
|
|
- _issend = _userconnect[j][_recievedpageid].response.end(JSON.stringify(_messageinfo)); //发送消息
|
|
|
- if (!_issend) { //如果用户下线了,那么发送消息就会失败
|
|
|
- us.offLineMessage[_recievedpageid].message.push(_messageinfo); //将消息加入用户离线消息中
|
|
|
+ if (_userconnect[j] && _userconnect[j][_recievedpageid]) {
|
|
|
+ _issend = _userconnect[j][_recievedpageid].response.end(JSON.stringify(_messageinfo)); //发送消息
|
|
|
+ if (!_issend) { //如果用户下线了,那么发送消息就会失败
|
|
|
+ us.offLineMessage[_recievedpageid].message.push(_messageinfo); //将消息加入用户离线消息中
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
catch (e) {
|
|
|
- console.error(e.message)
|
|
|
+ console.log(e)
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1960,7 +1999,7 @@ us.getcscl = function (response, calssid, pageid, userid) {
|
|
|
if (!us.cscl[calssid].user[userid]) {
|
|
|
us.cscl[calssid].user[userid] = [pageid];
|
|
|
}
|
|
|
- else {
|
|
|
+ else if (us.cscl[calssid].user[userid].indexOf(pageid) == -1) {
|
|
|
us.cscl[calssid].user[userid].push(pageid);
|
|
|
}
|
|
|
try {
|
|
@@ -1973,6 +2012,7 @@ us.getcscl = function (response, calssid, pageid, userid) {
|
|
|
us.mysql.usselect(['172.16.12.5', 'pbl', 'select_room', calssid],
|
|
|
function (ret) {
|
|
|
if (ret) {
|
|
|
+ console.log(ret[0][0].data)
|
|
|
ret[0][0].data = us.cscl[calssid].content; //把思维网格的内容转化成数组
|
|
|
response.end(JSON.stringify(ret)); //返回文档内容
|
|
|
}
|
|
@@ -1994,11 +2034,12 @@ us.getcscl = function (response, calssid, pageid, userid) {
|
|
|
us.mysql.usselect(['172.16.12.5', 'pbl', 'select_room', calssid],
|
|
|
function (ret) {
|
|
|
if (ret) {
|
|
|
+ console.log(ret[0][0].data)
|
|
|
us.cscl[calssid].content = JSON.parse(ret[0][0].data); //把思维网格的内容转化成数组
|
|
|
response.end(JSON.stringify(ret)); //返回文档内容
|
|
|
}
|
|
|
else {
|
|
|
- us.cscl[calssid].content = []; //创建一个空数组
|
|
|
+ us.cscl[calssid].content = {}; //创建一个空数组
|
|
|
response.end(''); //返回文档内容
|
|
|
}
|
|
|
});
|