1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /**
- * Created by zhangweicheng on 2017/8/7.
- */
- socketObject={
- roomInfo : null,
- messages:[],
- connect:function (from) {
- // 连接socket服务器
- var hostName = window.location.hostname;
- let me = this;
- let port = window.location.protocol ==='http:'?3300:3301;
- socket = io(window.location.protocol+'//'+hostName+':'+port);
- socket.on('connect', function () {
- if(from == 'pm'){
- me.roomInfo={
- userID:userID
- };
- }else {
- me.roomInfo={
- feeRate:me.getFeeRateRoomID(),
- unitFile:me.getUnitFileRoomID()
- };
- }
- socket.emit('join', me.roomInfo);
- if(me.messages.length > 0){//发送缓存消息;
- for(let m of me.messages){
- socket.emit(m.message, m.data);
- }
- }
- console.log('连接成功');
- });
- //=========================================================
- //造价书页面接收消息部分
- socket.on('feeRateChange', function(data) {
- //data = JSON.parse(data);
- $("#message").html('费率文件已被修改,<a href="javascript:void(0);" id="load-data" onclick="window.location.reload()">点击加载并重新进行造价计算</a>');
- $("#notify").show();
- //alert('费率文件已经修改,请刷新页面');
- //window.location.reload();
- });
- socket.on('unitFileChange', function (data) {
- data = JSON.parse(data);
- /*console.log(data);
- if (data.newValue === undefined) {
- return false;
- }*/
- $("#message").html('市场单价已被修改,<a href="javascript:void(0);" id="load-data" onclick="window.location.reload()">点击加载并重新进行造价计算</a>');
- $("#notify").show();
- });
- socket.on('changeFileNotify', function (data) {//收到文件改变的消息
- if(data.projectID==projectObj.project.ID()){//如果是同个项目,则给出提示,否则忽略
- let preString ="";
- if(data.name=='feeRate'){
- preString = "费率文件";
- }
- if(data.name=='unitFile'){
- preString = "单价文件";
- }
- $("#message").html(preString+'已被修改,<a href="javascript:void(0);" id="load-data" onclick="window.location.reload()">点击加载并重新进行造价计算</a>');
- $("#notify").show();
- }
- });
- //=============================================================================================
- //项目管理页面接收消息部分
- socket.on('refreshProjectIcon', function (data) {//收到刷新图标消息
- if(data.projectID && typeof projTreeObj !== 'undefined') projTreeObj.refreshProjectIcon(data.projectID);
- });
- socket.on('fileDataChange', function (data) {//收到单价文件、费率文件内容修改、文件切换、另存(暂时能共用,以后有需要可分离)推送消息
- if(data.projectID && typeof projTreeObj !== 'undefined') projTreeObj.refreshWhenFileDateChange(data.projectID);
- });
- },
- getFeeRateRoomID:function (){
- return projectObj.project.FeeRate.getActivateFeeRateFileID();
- },
- getUnitFileRoomID:function () {
- return projectObj.project.projectGLJ.datas.constData.roomId?projectObj.project.projectGLJ.datas.constData.roomId:roomId;
- }
- }
|