{"remainingRequest":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bzzgj-fvue\\src\\components\\layout\\Navigator.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\src\\components\\layout\\Navigator.vue","mtime":1690541169580},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport dictUtils from '@/components/dict/DictSelectUtils.js'\r\nimport HtAvatar from '@/components/common/HtAvatar.vue'\r\nimport NavigatorApi from '../../api/NavigatorApi'\r\nimport langSelect from '@/components/langSelect'\r\nimport {mapState} from 'vuex'\r\nimport {Base64} from 'js-base64'\r\nimport req from '@/request.js'\r\nimport menu from '@/api/menu.js'\r\nimport uc from '@/api/uc.js'\r\n\r\nexport default {\r\n name: 'navigator',\r\n components: {HtAvatar, langSelect},\r\n props: ['menuShow', 'showTopMenu'],\r\n data() {\r\n var validateNew = (rule, value, callback) => {\r\n if (value === '') {\r\n callback(new Error('请输入新密码'))\r\n }\r\n let config = this.pwdStrategy\r\n if (config.enable == 1) {\r\n let pwdRule = config.pwdRule\r\n let pwdLength = config.pwdLength\r\n if (pwdRule) {\r\n if (value.length < pwdLength) {\r\n callback(new Error('新密码长度至少为' + pwdLength))\r\n } else if (pwdRule == 2) {\r\n var re = new RegExp('(?=.*[0-9])(?=.*[a-zA-Z])')\r\n if (!re.test(value)) {\r\n callback(new Error('新密码必须包含数字、字母'))\r\n } else {\r\n callback()\r\n }\r\n } else if (pwdRule == 3) {\r\n var re = new RegExp('(?=.*[0-9])(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9])')\r\n if (!re.test(value)) {\r\n callback(new Error('新密码必须包含数字、字母、特殊字符'))\r\n } else {\r\n callback()\r\n }\r\n } else if (pwdRule == 4) {\r\n var re = new RegExp(\r\n '(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[^a-zA-Z0-9])'\r\n )\r\n if (!re.test(value)) {\r\n callback(new Error('新密码必须包含数字、大小字母、特殊字符'))\r\n } else {\r\n callback()\r\n }\r\n } else {\r\n callback()\r\n }\r\n }\r\n } else {\r\n if (value.length < 6) {\r\n callback(new Error('新密码长度至少为6'))\r\n } else {\r\n callback()\r\n }\r\n }\r\n }\r\n var validateold = (rule, value, callback) => {\r\n if (value === '') {\r\n callback(new Error('请输入旧密码'))\r\n } else {\r\n callback()\r\n }\r\n }\r\n var validateNewReapeat = (rule, value, callback) => {\r\n if (value === '') {\r\n callback(new Error('请再次输入新密码'))\r\n } else {\r\n callback()\r\n }\r\n }\r\n return {\r\n readMessage: '1',\r\n purchasingDetailList: [],\r\n printDialogVisible: false,\r\n currentMenu: 'Equipment',\r\n modifyPwdDialogVisible: false,\r\n pwdForm: {\r\n old: '',\r\n new: '',\r\n newRepeat: ''\r\n },\r\n pwdRules: {\r\n old: [{validator: validateold, trigger: 'blur'}],\r\n new: [{validator: validateNew, trigger: 'blur'}],\r\n newRepeat: [{validator: validateNewReapeat, trigger: 'blur'}]\r\n }\r\n }\r\n },\r\n created() {\r\n this.receiveStatusList = dictUtils.getDictItemsFromCache('yjxxjszt')\r\n this.loggingMessage()\r\n },\r\n beforeMount() {\r\n // let arr = window.location.pathname.split('/')\r\n // let num = arr.length\r\n // this.currentMenu = arr[num - 1]\r\n // console.log(this.currentMenu, arr)\r\n },\r\n mounted() {\r\n !this.currentUser && this.$store.dispatch('user/loadCurrentUserDetail')\r\n const currentUser = this.$store.state.login.currentUser\r\n if ((!this.frontMenus || this.frontMenus.length == 0) && currentUser) {\r\n this.$store.dispatch('menu/actionFrontMenus').then(res => {\r\n this.activePage()\r\n })\r\n }\r\n },\r\n computed: {\r\n ...mapState({\r\n currentUser: state => state.user.currentUserDetail,\r\n token: state => state.login.currentUser.token,\r\n frontMenus: state => {\r\n return state.menu.frontMenus\r\n },\r\n sysMenus: state => state.menu.sysMenus,\r\n userType: function() {\r\n if (this.currentUser && this.currentUser.user) {\r\n return this.currentUser.user.userType\r\n }\r\n },\r\n pwdStrategy: state => state.user.pwdStrategy\r\n })\r\n },\r\n watch: {\r\n $route: 'activePage'\r\n },\r\n methods: {\r\n //移动端入口\r\n MobilePortal() {\r\n // this.$router.push({\r\n // name: 'MobileDeviceNav',\r\n // query: {loginname: this.$store.state.login.currentUser.account}\r\n // })\r\n let page = this.$router.resolve({\r\n name: 'MobileEmpty',\r\n query: {loginname: 'admin'}\r\n })\r\n window.open(page.href, '_blank')\r\n },\r\n loggingMessage() {\r\n let _this = this\r\n NavigatorApi.cmgtWorkWarnSendDetailQuery(\r\n {\r\n querys: [\r\n {\r\n group: 'main',\r\n operation: 'EQUAL',\r\n parentGroup: '',\r\n property: 'receive_user_',\r\n relation: 'AND',\r\n value: '1'\r\n }\r\n ],\r\n sorter: [\r\n {\r\n direction: 'ASC',\r\n property: 'receive_status_'\r\n }\r\n ]\r\n },\r\n res => {\r\n // console.log(res.rows)\r\n res.rows.forEach(item => {\r\n this.receiveStatusList.forEach(val => {\r\n // console.log(val)\r\n if (item.receiveStatus == val.value) {\r\n item.receiveStatus = val.name\r\n }\r\n })\r\n if (item.receiveStatus == '1') {\r\n this.$notify.info({\r\n title: '消息',\r\n message: '您有新的未读消息',\r\n onClick() {\r\n _this.defineCallBack() //自定义回调,message为传的参数\r\n }\r\n })\r\n }\r\n })\r\n this.purchasingDetailList = res.rows\r\n }\r\n )\r\n },\r\n //消息记录按钮\r\n loggingMessageBtn() {\r\n this.printDialogVisible = true\r\n },\r\n alreadyReadMessage() {\r\n this.$notify.info({\r\n title: '消息',\r\n message: '您已阅读此条消息'\r\n })\r\n },\r\n //已阅\r\n readMessageBtn(row) {\r\n // console.log(row.id)\r\n NavigatorApi.cmgtWorkWarnSendDetailReceive({id: row.id}, res => {\r\n // console.log(res)\r\n if (res.state) {\r\n this.loggingMessage()\r\n }\r\n })\r\n },\r\n //消息点击事件\r\n defineCallBack() {\r\n // console.log(111111)\r\n this.printDialogVisible = true\r\n },\r\n handleClose() {\r\n this.printDialogVisible = false\r\n },\r\n showPopper() {\r\n this.$nextTick(() => {\r\n let size = 0\r\n size =\r\n this.$refs.headerPopper &&\r\n this.$refs.headerPopper.getBoundingClientRect()\r\n this.$bus.$emit('showPopper', size)\r\n })\r\n },\r\n hidePopper() {\r\n this.$bus.$emit('hidePopper')\r\n },\r\n submitForm() {\r\n let account\r\n account =\r\n this.currentUser &&\r\n this.currentUser.user &&\r\n this.currentUser.user.account\r\n this.$refs['pwdForm'].validate(valid => {\r\n if (valid) {\r\n if (account == '') {\r\n this.$message.warning('请返回重新登录')\r\n return\r\n }\r\n this.confirm = true\r\n this.$http\r\n .post('${uc}/api/user/v1/user/modifiUserPsd', {\r\n account: account,\r\n oldPwd: this.pwdForm.old,\r\n newPwd: this.pwdForm.new\r\n })\r\n .then(resp => {\r\n let data = resp.data\r\n if (data && data.state) {\r\n this.$message.success('修改密码成功')\r\n this.confirm = false\r\n this.$router.push({\r\n path: '/login'\r\n })\r\n } else {\r\n this.confirm = false\r\n }\r\n })\r\n } else {\r\n this.$message.warning('校验失败,请检查!')\r\n }\r\n })\r\n },\r\n goIndex() {\r\n this.$router.push({\r\n path: `/frontPlat/gis`\r\n })\r\n },\r\n openResetPwdDialog() {\r\n this.$store.dispatch('user/getDefPwdStrategy')\r\n this.modifyPwdDialogVisible = true\r\n if (this.$refs['pwdForm']) {\r\n this.$refs['pwdForm'].resetFields()\r\n }\r\n },\r\n openPersonalCenter() {\r\n this.$router.push({\r\n path: '/frontPlat/PersonalInfo'\r\n })\r\n },\r\n handleSysPlat() {\r\n if (!this.sysMenus.length) {\r\n this.$store.dispatch('menu/actionSysMenus').then(res => {\r\n if (res) {\r\n window.open(\r\n window.context.manage +\r\n // \"http://localhost:8081/mvue\"+\r\n '/sysplat/' +\r\n `${this.sysMenus[0].children[0].alias}` +\r\n '?token=' +\r\n this.token,\r\n '_blank'\r\n )\r\n }\r\n })\r\n } else {\r\n window.open(\r\n window.context.manage +\r\n // \"http://localhost:8081/mvue\"+\r\n '/sysplat/' +\r\n `${this.sysMenus[0].children[0].alias}` +\r\n '?token=' +\r\n this.token,\r\n '_blank'\r\n )\r\n }\r\n },\r\n logout() {\r\n this.$store.dispatch('menu/clearMenus')\r\n this.$store.dispatch('user/clearUser')\r\n this.$store.dispatch('menu/setCopyMenus', []) //菜单\r\n let loginRouthPath =\r\n localStorage.getItem(\r\n this.$store.state.login.currentUser.account + 'loginRoutePath'\r\n ) || '/login'\r\n this.$store.dispatch('login/logoutAndCleanUp').then(() => {\r\n switch (window.ssoConfig.mode) {\r\n case 'cas':\r\n case 'oauth':\r\n window.sessionStorage.removeItem('currentUser')\r\n window.location.href =\r\n window.ssoConfig.logout +\r\n '?service=' +\r\n window.location.href.split('?')[0]\r\n break\r\n default:\r\n this.$router.push({\r\n path: loginRouthPath\r\n })\r\n break\r\n }\r\n })\r\n },\r\n handleClickMenu(item) {\r\n if (item.alias == 'Equipment') {\r\n this.$router.push(\r\n '/frontPlat/Equipment/performanceAnalysis/DeviceAnalysis'\r\n )\r\n } else {\r\n this.$router.push('/frontPlat/zhyw/CMGTDutyResourceManage/CMGTDutyResourceTeam') // zhywIndex\r\n }\r\n this.currentMenu = item.alias\r\n return\r\n let hasSideMenu = item.children.length ? true : false\r\n this.$emit('update:menuShow', hasSideMenu)\r\n this.currentMenu = item.alias\r\n if (item.children.length !== 0) {\r\n let childrens = item.children\r\n let subPath = childrens[0].alias\r\n if (childrens[0].children && childrens[0].children.length !== 0) {\r\n let threeChildrens = childrens[0].children\r\n let threePath = threeChildrens[0].alias\r\n this.$router.push(\r\n '/frontPlat/' + item.alias + '/' + subPath + '/' + threePath\r\n )\r\n } else {\r\n this.$router.push('/frontPlat/' + item.alias + '/' + subPath)\r\n }\r\n } else {\r\n this.$router.push('/frontPlat/' + item.alias)\r\n this.currentMenu = item.alias\r\n }\r\n },\r\n activePage() {\r\n let fullPath = this.$route.path\r\n let path = fullPath.split('/')\r\n let urlAnchor = path[path.indexOf('frontPlat') + 1]\r\n this.frontMenus.filter(item => {\r\n if (item.alias == urlAnchor) {\r\n this.currentMenu = urlAnchor\r\n // console.log(this.currentMenu)\r\n }\r\n })\r\n }\r\n }\r\n}\r\n",null]}