import mapData from "../../../static/mapData"; import rpc from "./rpc"; import vueEvents from '@/utils/vueEvent.js' window.mapMsg = { setTimeInterval: null, testMsg(res) { this.setMsgMatching({ message: res, baidu_keys: { results: [{ word: res }] } }); }, init() { var that = this; window.addEventListener("message", res => { if (res.data.status === "ok") { that.setMsgMatching(res.data.params); } }); }, clearTime(){ if (this.setTimeInterval) { clearInterval(this.setTimeInterval); this.setTimeInterval = null; } this.setTime(); }, setTime(){ if(this.setTimeInterval){ clearInterval(this.setTimeInterval); this.setTimeInterval = null; } this.setTimeInterval = setTimeout((res) => { vueEvents.$emit("queryData", false); rpc.setClearAllMsg(); rpc.setLineRoaming() clearInterval(this.setTimeInterval); this.setTimeInterval = null; }, 90000) }, //消息匹配 setMsgMatching(result) { var param = result.message; var rest = mapData.msgMach.rest; var rom = mapData.msgMach.lineRoam; var closeRomData = mapData.msgMach.closeRoam; var acceptData =mapData.msgMach.acceptMsg; var valRest = rest.filter((rs) => { if (param.indexOf(rs) > -1) { return rs; } }) // 地图复位 if (valRest.length > 0) { this.clearTime(); vueEvents.$emit("queryData", false); rpc.setClearAllMsg(); rpc.setMapRest(); return } //漫游 var valRom = rom.filter((rs) => { if (param.indexOf(rs) > -1) { return rs; } }) if (valRom.length > 0) { vueEvents.$emit("queryData", false); this.clearTime(); rpc.setClearAllMsg(); rpc.setLineRoaming() return } // 停止漫游 var closeRom = closeRomData.filter((rs) => { if (param.indexOf(rs) > -1) { return rs } }); if (closeRom.length > 0) { this.clearTime(); rpc.setCloseLineRomaing(); return } var accept = acceptData.filter(res => { if (param.indexOf(res) > -1) { return res; } }) if (accept.length > 0) { this.clearTime(); rpc.getFuzzyQuery(result) } // else{ // vueEvents.$emit("queryData", false); // rpc.setClearAllMsg(); // rpc.setMapRest(); // } }, }; export default mapMsg