old mode 100644
new mode 100755
|  |  |  | 
|---|
|  |  |  | <el-menu router :default-active="activeIndex" menu-trigger="click" background-color="#001529" text-color="#fff" | 
|---|
|  |  |  | active-text-color="#1890ff" mode="horizontal"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-menu-item index="/control">控制台</el-menu-item> | 
|---|
|  |  |  | <el-menu-item index="/console">控制台</el-menu-item> | 
|---|
|  |  |  | <el-menu-item index="/live">分屏监控</el-menu-item> | 
|---|
|  |  |  | <el-menu-item index="/deviceList">国标设备</el-menu-item> | 
|---|
|  |  |  | <el-menu-item index="/map">电子地图</el-menu-item> | 
|---|
|  |  |  | 
|---|
|  |  |  | <el-menu-item index="/cloudRecord">云端录像</el-menu-item> | 
|---|
|  |  |  | <el-menu-item index="/mediaServerManger">节点管理</el-menu-item> | 
|---|
|  |  |  | <el-menu-item index="/parentPlatformList/15/1">国标级联</el-menu-item> | 
|---|
|  |  |  | <el-menu-item v-if="editUser" index="/userManager">用户管理</el-menu-item> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--            <el-submenu index="/setting">--> | 
|---|
|  |  |  | <!--              <template slot="title">系统设置</template>--> | 
|---|
|  |  |  | 
|---|
|  |  |  | <!--            </el-submenu>--> | 
|---|
|  |  |  | <!--            <el-menu-item style="float: right;" @click="loginout">退出</el-menu-item>--> | 
|---|
|  |  |  | <el-submenu index="" style="float: right;"> | 
|---|
|  |  |  | <template slot="title">欢迎,{{ this.$cookies.get("session").username }}</template> | 
|---|
|  |  |  | <template slot="title">欢迎,{{ username }}</template> | 
|---|
|  |  |  | <el-menu-item @click="openDoc">在线文档</el-menu-item> | 
|---|
|  |  |  | <el-menu-item > | 
|---|
|  |  |  | <el-menu-item> | 
|---|
|  |  |  | <el-switch v-model="alarmNotify" inactive-text="报警信息推送" @change="alarmNotifyChannge"></el-switch> | 
|---|
|  |  |  | </el-menu-item> | 
|---|
|  |  |  | <el-menu-item @click="changePassword">修改密码</el-menu-item> | 
|---|
|  |  |  | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import changePasswordDialog from '../components/dialog/changePassword.vue' | 
|---|
|  |  |  | import userService from '../components/service/UserService' | 
|---|
|  |  |  | import {Notification} from 'element-ui'; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | name: "UiHeader", | 
|---|
|  |  |  | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | alarmNotify: false, | 
|---|
|  |  |  | sseSource: null, | 
|---|
|  |  |  | username: userService.getUser().username, | 
|---|
|  |  |  | activeIndex: this.$route.path, | 
|---|
|  |  |  | editUser: userService.getUser() ? userService.getUser().role.id === 1 : false | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | created() { | 
|---|
|  |  |  | console.log(JSON.stringify(userService.getUser())) | 
|---|
|  |  |  | if (this.$route.path.startsWith("/channelList")) { | 
|---|
|  |  |  | this.activeIndex = "/deviceList" | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | mounted() { | 
|---|
|  |  |  | window.addEventListener('beforeunload', e => this.beforeunloadHandler(e)) | 
|---|
|  |  |  | // window.addEventListener('unload', e => this.unloadHandler(e)) | 
|---|
|  |  |  | this.alarmNotify = this.getAlarmSwitchStatus() === "true"; | 
|---|
|  |  |  | this.sseControl(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // TODO: 此处延迟连接 sse, 避免 sse 连接时 browserId 还未生成, 后续待优化 | 
|---|
|  |  |  | setTimeout(() => { | 
|---|
|  |  |  | this.sseControl() | 
|---|
|  |  |  | }, 3000); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | loginout() { | 
|---|
|  |  |  | 
|---|
|  |  |  | method: 'get', | 
|---|
|  |  |  | url: "/api/user/logout" | 
|---|
|  |  |  | }).then((res) => { | 
|---|
|  |  |  | // 删除cookie,回到登录页面 | 
|---|
|  |  |  | this.$cookies.remove("session"); | 
|---|
|  |  |  | // 删除用户信息,回到登录页面 | 
|---|
|  |  |  | userService.clearUserInfo() | 
|---|
|  |  |  | this.$router.push('/login'); | 
|---|
|  |  |  | this.sseSource.close(); | 
|---|
|  |  |  | if (this.sseSource != null) { | 
|---|
|  |  |  | this.sseSource.close(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }).catch((error) => { | 
|---|
|  |  |  | console.error("登出失败") | 
|---|
|  |  |  | console.error(error) | 
|---|
|  |  |  | 
|---|
|  |  |  | this.sseSource = new EventSource('/api/emit?browserId=' + this.$browserId); | 
|---|
|  |  |  | this.sseSource.addEventListener('message', function (evt) { | 
|---|
|  |  |  | that.$notify({ | 
|---|
|  |  |  | title: '收到报警信息', | 
|---|
|  |  |  | title: '报警信息', | 
|---|
|  |  |  | dangerouslyUseHTMLString: true, | 
|---|
|  |  |  | message: evt.data, | 
|---|
|  |  |  | type: 'warning' | 
|---|
|  |  |  | type: 'warning', | 
|---|
|  |  |  | position: 'bottom-right', | 
|---|
|  |  |  | duration: 3000 | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | console.log("收到信息:" + evt.data); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | #UiHeader .el-switch__label { | 
|---|
|  |  |  | color: white ; | 
|---|
|  |  |  | color: white; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .el-menu--popup .el-menu-item .el-switch .el-switch__label { | 
|---|
|  |  |  | color: white !important; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #UiHeader .el-switch__label.is-active{ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #UiHeader .el-switch__label.is-active { | 
|---|
|  |  |  | color: #409EFF; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #UiHeader .el-menu-item.is-active { | 
|---|
|  |  |  | color: #fff!important; | 
|---|
|  |  |  | background-color: #1890ff!important; | 
|---|
|  |  |  | color: #fff !important; | 
|---|
|  |  |  | background-color: #1890ff !important; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|