1 line
10 KiB
JavaScript
1 line
10 KiB
JavaScript
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-49760eaf"],{"9e20":function(e,t,a){"use strict";a.r(t);var i=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticStyle:{padding:"6px"}},[a("el-card",{directives:[{name:"show",rawName:"v-show",value:e.showSearch,expression:"showSearch"}],staticStyle:{"margin-bottom":"6px"}},[a("el-form",{ref:"queryForm",staticStyle:{"margin-bottom":"-20px"},attrs:{model:e.queryParams,inline:!0,"label-width":"68px"}},[a("el-form-item",{attrs:{label:"客户端",prop:"clientId"}},[a("el-input",{attrs:{placeholder:"请输入客户端ID",clearable:"",size:"small"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.handleQuery(t)}},model:{value:e.queryParams.clientId,callback:function(t){e.$set(e.queryParams,"clientId",t)},expression:"queryParams.clientId"}})],1),a("el-form-item",{attrs:{prop:"isClient"}},[a("el-checkbox",{attrs:{"true-label":"1","false-label":"0"},model:{value:e.queryParams.isClient,callback:function(t){e.$set(e.queryParams,"isClient",t)},expression:"queryParams.isClient"}},[e._v("只看设备端")])],1),a("el-form-item",[a("el-button",{attrs:{type:"primary",icon:"el-icon-search",size:"mini"},on:{click:e.handleQuery}},[e._v("搜索")]),a("el-button",{attrs:{icon:"el-icon-refresh",size:"mini"},on:{click:e.resetQuery}},[e._v("重置")])],1)],1)],1),a("el-tabs",{staticStyle:{flex:"1",height:"800px","margin-bottom":"5px"},attrs:{type:"border-card"},on:{"tab-click":e.handleClick},model:{value:e.serverType,callback:function(t){e.serverType=t},expression:"serverType"}},[a("el-tab-pane",{attrs:{label:"MQTT客户端",name:"MQTT"}},[a("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],attrs:{data:e.clientList}},[a("el-table-column",{attrs:{label:"客户端ID",align:"left","header-align":"center",prop:"clientId"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-link",{attrs:{underline:!1,type:"primary"},nativeOn:{click:function(a){return e.handleOpen(t.row)}}},[e._v(e._s(t.row.clientId)+" ")])]}}])}),a("el-table-column",{attrs:{label:"类型",align:"center",prop:"type"},scopedSlots:e._u([{key:"default",fn:function(t){return[0==t.row.clientId.indexOf("server")?a("el-tag",{attrs:{type:"danger"}},[e._v("服务端")]):0==t.row.clientId.indexOf("web")?a("el-tag",{attrs:{type:"success"}},[e._v("Web端")]):0==t.row.clientId.indexOf("phone")?a("el-tag",{attrs:{type:"warning"}},[e._v("移动端")]):0==t.row.clientId.indexOf("test")?a("el-tag",{attrs:{type:"info"}},[e._v("测试端")]):a("el-tag",{attrs:{type:"primary"}},[e._v("设备端")])]}}])}),a("el-table-column",{attrs:{label:"连接状态",align:"center",prop:"connected"},scopedSlots:e._u([{key:"default",fn:function(t){return[t.row.connected?a("el-tag",{attrs:{type:"success"}},[e._v("已连接")]):a("el-tag",{attrs:{type:"info"}},[e._v("已断开")])]}}])}),a("el-table-column",{attrs:{label:"心跳(秒)",align:"center",prop:"keepAlive",width:"100"}}),a("el-table-column",{attrs:{label:"账号",align:"center",prop:"username",width:"100px"}}),a("el-table-column",{attrs:{label:"当前订阅数量",align:"center",prop:"topicCount",width:"100"}}),a("el-table-column",{attrs:{label:"连接时间",align:"center",prop:"connected_at"}})],1),a("pagination",{directives:[{name:"show",rawName:"v-show",value:e.total>0,expression:"total > 0"}],attrs:{total:e.total,page:e.queryParams.pageNum,limit:e.queryParams.pageSize},on:{"update:page":function(t){return e.$set(e.queryParams,"pageNum",t)},"update:limit":function(t){return e.$set(e.queryParams,"pageSize",t)},pagination:e.getList}}),a("el-dialog",{attrs:{title:e.title,visible:e.open,width:"800px","append-to-body":""},on:{"update:visible":function(t){e.open=t}}},[a("el-tabs",{staticStyle:{padding:"10px"},attrs:{"tab-position":"top"},model:{value:e.activeName,callback:function(t){e.activeName=t},expression:"activeName"}},[a("el-tab-pane",{attrs:{name:"subscribe"}},[a("span",{attrs:{slot:"label"},slot:"label"},[e._v("订阅列表")]),a("el-row",{staticClass:"mb8",attrs:{gutter:10}}),a("el-table",{attrs:{data:e.subscribeList,size:"mini"}},[a("el-table-column",{attrs:{label:"主题",align:"center",prop:"topicName"}}),a("el-table-column",{attrs:{label:"QoS",align:"center",prop:"qos"}})],1)],1)],1)],1)],1),a("el-tab-pane",{attrs:{label:"TCP客户端",name:"TCP"}},[a("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],attrs:{data:e.clientList}},[a("el-table-column",{attrs:{label:"客户端ID",align:"left","header-align":"center",prop:"clientId"}}),a("el-table-column",{attrs:{label:"类型",align:"center",prop:"type"},scopedSlots:e._u([{key:"default",fn:function(t){return[0==t.row.clientId.indexOf("server")?a("el-tag",{attrs:{type:"danger"}},[e._v("服务端")]):0==t.row.clientId.indexOf("web")?a("el-tag",{attrs:{type:"success"}},[e._v("Web端")]):0==t.row.clientId.indexOf("phone")?a("el-tag",{attrs:{type:"warning"}},[e._v("移动端")]):0==t.row.clientId.indexOf("test")?a("el-tag",{attrs:{type:"info"}},[e._v("测试端")]):a("el-tag",{attrs:{type:"primary"}},[e._v("设备端")])]}}])}),a("el-table-column",{attrs:{label:"连接状态",align:"center",prop:"connected"},scopedSlots:e._u([{key:"default",fn:function(t){return[t.row.connected?a("el-tag",{attrs:{type:"success"}},[e._v("已连接")]):a("el-tag",{attrs:{type:"info"}},[e._v("已断开")])]}}])}),a("el-table-column",{attrs:{label:"心跳(秒)",align:"center",prop:"keepAlive",width:"100"}}),a("el-table-column",{attrs:{label:"连接时间",align:"center",prop:"connected_at"}})],1),a("pagination",{directives:[{name:"show",rawName:"v-show",value:e.total>0,expression:"total > 0"}],attrs:{total:e.total,page:e.queryParams.pageNum,limit:e.queryParams.pageSize},on:{"update:page":function(t){return e.$set(e.queryParams,"pageNum",t)},"update:limit":function(t){return e.$set(e.queryParams,"pageSize",t)},pagination:e.getList}}),a("el-dialog",{attrs:{title:e.title,visible:e.open,width:"800px","append-to-body":""},on:{"update:visible":function(t){e.open=t}}},[a("el-tabs",{staticStyle:{padding:"10px"},attrs:{"tab-position":"top"},model:{value:e.activeName,callback:function(t){e.activeName=t},expression:"activeName"}},[a("el-tab-pane",{attrs:{name:"subscribe"}},[a("span",{attrs:{slot:"label"},slot:"label"},[e._v("订阅列表")]),a("el-row",{staticClass:"mb8",attrs:{gutter:10}}),a("el-table",{attrs:{data:e.subscribeList,size:"mini"}},[a("el-table-column",{attrs:{label:"主题",align:"center",prop:"topicName"}}),a("el-table-column",{attrs:{label:"QoS",align:"center",prop:"qos"}})],1)],1)],1)],1)],1)],1),a("el-dialog",{attrs:{title:"添加订阅",visible:e.subscribeOpen,width:"800px","append-to-body":""},on:{"update:visible":function(t){e.subscribeOpen=t}}},[a("el-form",{ref:"subscribeForm",attrs:{model:e.subscribeForm,rules:e.rules,"label-width":"60px"}},[a("el-row",{attrs:{gutter:20}},[a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"主题",prop:"topic"}},[a("el-input",{attrs:{placeholder:"请输入主题"},model:{value:e.subscribeForm.topic,callback:function(t){e.$set(e.subscribeForm,"topic",t)},expression:"subscribeForm.topic"}})],1),a("el-form-item",{attrs:{label:"Qos",prop:"qos"}},[a("el-select",{attrs:{placeholder:"请选择消息类型"},model:{value:e.subscribeForm.qos,callback:function(t){e.$set(e.subscribeForm,"qos",t)},expression:"subscribeForm.qos"}},[a("el-option",{key:"0",attrs:{label:"0",value:"0"}}),a("el-option",{key:"1",attrs:{label:"1",value:"1"}}),a("el-option",{key:"2",attrs:{label:"2",value:"2"}})],1)],1)],1)],1)],1),a("div",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{type:"primary"},on:{click:e.submitForm}},[e._v("添 加 订 阅")]),a("el-button",{on:{click:e.cancelSubscribe}},[e._v("取 消")])],1)],1)],1)},n=[],l=a("f5de"),r={name:"Category",data:function(){return{single:!0,loading:!0,loadSubscribeing:!0,showSearch:!0,total:0,clientList:[],title:"",open:!1,subscribeOpen:!1,queryParams:{pageNum:1,pageSize:10,clientId:null,isClient:0,serverCode:"MQTT"},form:{},activeName:"subscribe",subscribeList:[],subscribe:{topic:"",clientId:""},subscribeForm:{qos:"0"},clientId:"",serverType:"MQTT",rules:{topic:[{required:!0,message:"主题不能为空",trigger:"blur"}]}}},created:function(){this.getList()},methods:{getList:function(){var e=this;this.loading=!0,Object(l["b"])(this.queryParams).then((function(t){e.clientList=t.data,e.total=t.total,e.loading=!1}))},handleClick:function(){this.queryParams.serverCode=this.serverType,this.getList()},getSubscribeList:function(e){var t=this;this.clientId=e,this.loadSubscribeing=!0,getSubscriptionsByClientId(e).then((function(e){t.subscribeList=e.data.data,t.loadSubscribeing=!1}))},cancel:function(){this.open=!1,this.reset()},handleQuery:function(){this.queryParams.pageNum=1,this.getList()},resetQuery:function(){this.resetForm("queryForm"),this.handleQuery()},handleDelete:function(e){var t=this,a=e.clientId;this.$modal.confirm('是否确认删除MQTT客户端编号为"'+a+'"的数据项?').then((function(){return eliminateClient(a)})).then((function(){t.getList(),t.$modal.msgSuccess("删除成功")})).catch((function(){}))},handleUnsubscribe:function(e){var t=this,a=e.clientId,i=e.topic;this.$modal.confirm('是否确认取消订阅主题为"'+i+'"的数据项?').then((function(){var e={};return e.topic=i,e.clientId=a,unsubscribe(e)})).then((function(){t.getSubscribeList(a),t.$modal.msgSuccess("取消订阅成功")})).catch((function(){}))},handleOpen:function(e){this.open=!0,this.title="详情",this.subscribeList=e.topics,console.log(this.subscribeList)},handleAdd:function(){this.subscribeOpen=!0},submitForm:function(){var e=this;this.subscribeForm.clientId=this.clientId,console.log(this.subscribeForm),this.$refs["subscribeForm"].validate((function(t){t&&addSubscribe(e.subscribeForm).then((function(t){e.$modal.msgSuccess("新增订阅成功"),e.subscribeOpen=!1,e.getSubscribeList(e.clientId)}))}))},cancelSubscribe:function(){this.subscribeOpen=!1,this.resetForm("subscribeForm"),this.getSubscribeList(this.clientId)}}},s=r,o=a("2877"),c=Object(o["a"])(s,i,n,!1,null,null,null);t["default"]=c.exports},f5de:function(e,t,a){"use strict";a.d(t,"b",(function(){return n})),a.d(t,"a",(function(){return l})),a.d(t,"c",(function(){return r}));var i=a("b775");function n(e){return Object(i["a"])({url:"/iot/mqtt/clients",method:"get",params:e})}function l(){return Object(i["a"])({url:"/bashBoard/stats",method:"get"})}function r(e){return Object(i["a"])({url:"/bashBoard/metrics",method:"get",params:e})}}}]); |