{"remainingRequest":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\examine-fvue\\src\\components\\layout\\Navigator.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\examine-fvue\\src\\components\\layout\\Navigator.vue","mtime":1667462523061},{"path":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\examine-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\examine-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\r\nimport HtAvatar from '@/components/common/HtAvatar.vue'\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 },\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      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  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    submitForm() { },\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('/frontPlat/Equipment/EquipmentIndex')\r\n      } else {\r\n        this.$router.push('/frontPlat/zhyw/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]}