| | |
| | | <script type="text/javascript" src="../../js/http.js"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/global.js"></script> |
| | | |
| | | <script src="http://121.196.36.24:8001/Scripts/jquery-3.4.1.min.js"></script> |
| | | <script src="http://121.196.36.24:8001/Scripts/jquery.signalR-2.2.2.min.js"></script> |
| | | <script src="http://121.196.36.24:8001/SignalR/Hubs"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/global.css"></script> |
| | | |
| | | |
| | | <script type="text/javascript"> |
| | | var pushServer = "http://demo.dcloud.net.cn/push/?"; |
| | | var message = null; |
| | | |
| | | // 监听plusready事件 |
| | | document.addEventListener("plusready", function() { |
| | | message = document.getElementById("message"); |
| | | // 监听点击消息事件 |
| | | plus.push.addEventListener("click", function(msg) { |
| | | // 判断是从本地创建还是离线推送的消息 |
| | | switch (msg.payload) { |
| | | case "LocalMSG": |
| | | outSet("点击本地创建消息启动:"); |
| | | break; |
| | | default: |
| | | outSet("点击离线推送消息启动:"); |
| | | break; |
| | | } |
| | | // 提示点击的内容 |
| | | plus.nativeUI.alert(msg.content); |
| | | // 处理其它数据 |
| | | logoutPushMsg(msg); |
| | | }, false); |
| | | // 监听在线消息事件 |
| | | plus.push.addEventListener("receive", function(msg) { |
| | | if (msg.aps) { // Apple APNS message |
| | | outSet("接收到在线APNS消息:"); |
| | | } else { |
| | | outSet("接收到在线透传消息:"); |
| | | } |
| | | logoutPushMsg(msg); |
| | | }, false); |
| | | }, false); |
| | | |
| | | /** |
| | | * 日志输入推送消息内容 |
| | | */ |
| | | function logoutPushMsg(msg) { |
| | | outLine("title: " + msg.title); |
| | | outLine("content: " + msg.content); |
| | | if (msg.payload) { |
| | | if (typeof(msg.payload) == "string") { |
| | | outLine("payload(String): " + msg.payload); |
| | | } else { |
| | | outLine("payload(JSON): " + JSON.stringify(msg.payload)); |
| | | } |
| | | } else { |
| | | outLine("payload: undefined"); |
| | | } |
| | | if (msg.aps) { |
| | | outLine("aps: " + JSON.stringify(msg.aps)); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取本地推送标识信息 |
| | | */ |
| | | function getPushInfo() { |
| | | outSet("获取客户端推送标识信息:"); |
| | | plus.push.getClientInfoAsync(function(info) { |
| | | outLine('Success'); |
| | | outLine(JSON.stringify(info)); |
| | | }, function(e) { |
| | | outLine('Failed'); |
| | | outLine(JSON.stringify(e)); |
| | | }); |
| | | } |
| | | /** |
| | | * 本地创建一条推动消息 |
| | | */ |
| | | function createLocalPushMsg(msg) { |
| | | var cont = $('#cont').val(); |
| | | var options = { |
| | | cover: false |
| | | }; |
| | | plus.push.createMessage(msg, "LocalMSG", options); |
| | | outSet("创建本地消息成功!"); |
| | | outLine("请到系统消息中心查看!"); |
| | | if (plus.os.name == "iOS") { |
| | | outLine('*如果无法创建消息,请到"设置"->"通知"中配置应用在通知中心显示!'); |
| | | } |
| | | } |
| | | /** |
| | | * 读取所有推送消息 |
| | | */ |
| | | function listAllPush() { |
| | | var msgs = null; |
| | | switch (plus.os.name) { |
| | | case "Android": |
| | | msgs = plus.push.getAllMessage(); |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | if (!msgs) { |
| | | outSet("此平台不支持枚举推送消息列表!"); |
| | | return; |
| | | } |
| | | outSet("枚举消息列表(" + msgs.length + "):"); |
| | | for (var i in msgs) { |
| | | var msg = msgs[i]; |
| | | outLine(i + ": " + msg.title + " - " + msg.content); |
| | | } |
| | | } |
| | | /** |
| | | * 清空所有推动消息 |
| | | */ |
| | | function clearAllPush() { |
| | | plus.push.clear(); |
| | | outSet("清空所有推送消息成功!"); |
| | | } |
| | | |
| | | |
| | | $(function() { |
| | | //前端Hub的使用,注意的是,Hub的名字是ChatHub,这里使用时首字母小写 |
| | | // var work = $.connection.chatHub; |
| | | var work = $.connection.chatHub; |
| | | |
| | | //对应后端的SendMessage函数,消息接收函数 |
| | | work.client.sendMessage = function(msg) { |
| | | console.log(msg,1) |
| | | createLocalPushMsg(msg) |
| | | }; |
| | | |
| | | //后端SendLogin调用后,产生的loginUser回调 |
| | | work.client.loginUser = function(userlist) { |
| | | // console.log(userlist, 9) |
| | | // reloadUser(userlist); |
| | | }; |
| | | |
| | | $.connection.hub.url = 'http://121.196.36.24:8001/signalr' |
| | | //hub连接开启 |
| | | $.connection.hub.start().done(function() { |
| | | |
| | | var username = localStorage.getItem('username'); |
| | | |
| | | //发送上线信息 |
| | | work.server.sendLogin(username); |
| | | |
| | | // const aaa = [{ |
| | | // "code": "Q", |
| | | // "name": "呼叫质量", |
| | | // "children": [{ |
| | | // "usercode": "999", |
| | | // "username": "楼先生" |
| | | // }] |
| | | // }] |
| | | |
| | | // work.server.sendByGroupList('楼先生', 'CJ002', 'SB001', aaa) |
| | | |
| | | }); |
| | | |
| | | }); |
| | | |
| | | //重新加载用户列表 |
| | | // var reloadUser = function() { |
| | | // $("#username").empty(); |
| | | // for (i = 0; i < 5; i++) { |
| | | // $("#username").append("<option value=" + i + ">" + i + "</option>"); |
| | | // } |
| | | // } |
| | | |
| | | |
| | | |
| | | </script> |
| | | |
| | | |
| | | |
| | | </head> |
| | | <body> |
| | |
| | | </van-nav-bar> |
| | | |
| | | |
| | | <van-pull-refresh v-model="isLoading" @refresh="onRefresh"> |
| | | <van-swipe :autoplay="3000"> |
| | | <van-swipe-item v-for="(image, index) in images" :key="index"> |
| | | <img v-lazy="image" :src='image' style="background-size: 100% 100%;width: 100%;" /> |
| | | </van-swipe-item> |
| | | </van-swipe> |
| | | |
| | | <van-swipe :autoplay="3000"> |
| | | <van-swipe-item v-for="(image, index) in images" :key="index"> |
| | | <img v-lazy="image" :src='image' style="background-size: 100% 100%;width: 100%;" /> |
| | | </van-swipe-item> |
| | | </van-swipe> |
| | | |
| | | <van-grid :gutter="20" :border='false' square :column-num="3" style="margin: 30px auto 0; width: 90%;"> |
| | | <van-grid-item v-for="item in firstMenu" @click='vanGridItem(item)' :key="item" :text="item.name"> |
| | | <img :src="item.imgurl" alt="" |
| | | style="width: 56px;height:56px;margin-top: 10px;border-radius: 10px;"> |
| | | <div style="margin-top: 5px;font-size: 14px;color: #929399;">{{item.name}}</div> |
| | | </van-grid-item> |
| | | </van-grid> |
| | | |
| | | <van-action-sheet lazy-render :closeable='false' close-on-click-action close-on-click-overlay |
| | | safe-area-inset-bottom v-model="sheetShow" :title="firstMenuName"> |
| | | <van-grid :border='false' :gutter="5" square :column-num="3" style="width: 80%; margin: auto;"> |
| | | <van-grid-item v-for="item in secondMenu" @click='vanGridSecondItem(item)' :key="item" |
| | | icon="photo-o"> |
| | | <van-grid :gutter="20" :border='false' square :column-num="3" |
| | | style="margin: 30px auto 0; width: 90%;"> |
| | | <van-grid-item v-for="item in firstMenu" @click='vanGridItem(item)' :key="item" |
| | | :text="item.name"> |
| | | <img :src="item.imgurl" alt="" |
| | | style="width: 48px;height:48px;margin-top: 10px;border-radius: 10px;"> |
| | | <div style="margin-top: 5px;font-size: 12px;color: #929399;">{{item.name}}</div> |
| | | style="width: 56px;height:56px;margin-top: 10px;border-radius: 10px;"> |
| | | <div style="margin-top: 5px;font-size: 14px;color: #929399;">{{item.name}}</div> |
| | | </van-grid-item> |
| | | </van-grid> |
| | | </van-action-sheet> |
| | | </div> |
| | | |
| | | <van-action-sheet lazy-render :closeable='false' close-on-click-action close-on-click-overlay |
| | | safe-area-inset-bottom v-model="sheetShow" :title="firstMenuName"> |
| | | <van-grid :border='false' :gutter="5" square :column-num="3" style="width: 80%; margin: auto;"> |
| | | <van-grid-item v-for="item in secondMenu" @click='vanGridSecondItem(item)' :key="item" |
| | | icon="photo-o"> |
| | | <img :src="item.imgurl" alt="" |
| | | style="width: 48px;height:48px;margin-top: 10px;border-radius: 10px;"> |
| | | <div style="margin-top: 5px;font-size: 12px;color: #929399;">{{item.name}}</div> |
| | | </van-grid-item> |
| | | </van-grid> |
| | | </van-action-sheet> |
| | | </div> |
| | | </van-pull-refresh> |
| | | |
| | | <van-overlay :show="overlayShow" @click="overlayShow=false" /> |
| | | |
| | |
| | | el: '#app', |
| | | data: function() { |
| | | return { |
| | | isLoading: false, //下拉刷新 |
| | | images: [ |
| | | '../../static/images/swiper01.png', |
| | | '../../static/images/swiper02.png', |
| | |
| | | }, |
| | | mounted() { |
| | | this.getfirstMenu() |
| | | |
| | | this.getLoginAppAnDonMessage() |
| | | setInterval(()=>{ |
| | | this.getLoginAppAnDonMessage() |
| | | },1000*10) |
| | | |
| | | }, |
| | | methods: { |
| | | onRefresh() { |
| | | setTimeout(() => { |
| | | vant.Toast('刷新成功'); |
| | | this.getfirstMenu() |
| | | this.getLoginAppAnDonMessage() |
| | | // vant.Notify('刷新成功'); |
| | | this.isLoading = false; |
| | | |
| | | }, 1000); |
| | | }, |
| | | |
| | | // 获取消息接口 |
| | | async getLoginAppAnDonMessage(){ |
| | | const data={ |
| | | userid:localStorage.getItem('userid'), |
| | | usercode:localStorage.getItem('usercode'), |
| | | username:localStorage.getItem('username'), |
| | | usertype:localStorage.getItem('usertype'), |
| | | async getLoginAppAnDonMessage() { |
| | | const data = { |
| | | userid: localStorage.getItem('userid'), |
| | | usercode: localStorage.getItem('usercode'), |
| | | username: localStorage.getItem('username'), |
| | | usertype: localStorage.getItem('usertype'), |
| | | } |
| | | |
| | | const res=await post('Login/LoginAppAnDonMessage'+formatParams(data)) |
| | | this.messageNumber=res.data.length |
| | | |
| | | const res = await post('Login/LoginAppAnDonMessage' + formatParams(data)) |
| | | this.messageNumber = res.data.length |
| | | // this.messageNumber=9 |
| | | }, |
| | | |
| | | |
| | | // 获取一级菜单 |
| | | async getfirstMenu() { |
| | | const data = { |