{"remainingRequest":"D:\\jenkins\\workspace\\jd_cgpt_fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\jd_cgpt_fvue\\src\\views\\Login.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\jd_cgpt_fvue\\src\\views\\Login.vue","mtime":1706042431896},{"path":"D:\\jenkins\\workspace\\jd_cgpt_fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\jd_cgpt_fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\jd_cgpt_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//\n//\n//\n//\n//\n\r\nimport portal from '@/api/portal.js'\r\nimport Cookie from 'js-cookie'\r\nexport default {\r\n name: 'login',\r\n data() {\r\n var checkAccount = (rule, value, callback) => {\r\n if (!value) {\r\n return callback(new Error('请输入账号'))\r\n }\r\n if (/^[a-zA-Z0-9_-]{2,20}$/.test(value)) {\r\n return callback()\r\n } else {\r\n return callback(new Error('账号格式不符合规范'))\r\n }\r\n }\r\n var checkPhone = (rule, value, callback) => {\r\n const regExp = /^1[3|4|5|7|8|9][0-9]{9}$/\r\n if (!regExp.test(value)) {\r\n callback(new Error('请输入正确的手机号'))\r\n } else {\r\n callback()\r\n }\r\n }\r\n return {\r\n logoUrl: '', // logo图片地址\r\n name: 'EDP',\r\n companyName: '机电采购平台',\r\n principal: {\r\n account: '',\r\n password: '',\r\n remberPwd: 0\r\n },\r\n rules: {\r\n account: [{validator: checkAccount, trigger: 'blur'}],\r\n password: [{required: true, message: '请输入密码', trigger: 'blur'}],\r\n phone: [{validator: checkPhone, trigger: 'blur'}],\r\n code: [\r\n {\r\n required: true,\r\n message: '请输入验证码',\r\n trigger: 'blur'\r\n }\r\n ]\r\n },\r\n responseError: '',\r\n loading: false,\r\n accountLogin: true,\r\n accountType: 'account',\r\n isSendMessage: false,\r\n timer: null,\r\n second: 60,\r\n show_qr: true,\r\n activeQR: 'qywx',\r\n qrList: [\r\n {\r\n name: '企业微信',\r\n key: 'qywx',\r\n url: require('@/assets/img/login/qywx-logo.png')\r\n },\r\n {\r\n name: '微信',\r\n key: 'wx',\r\n url: require('@/assets/img/login/wx-logo.png')\r\n },\r\n {\r\n name: '钉钉',\r\n key: 'dd',\r\n url: require('@/assets/img/login/dd-logo.png')\r\n },\r\n {\r\n name: '支付宝',\r\n key: 'zfb',\r\n url: require('@/assets/img/login/zfb-logo.png')\r\n }\r\n ]\r\n }\r\n },\r\n mounted() {\r\n window.webSocket && window.webSocket.close()\r\n this.clearUser()\r\n this.setDefaultValue()\r\n this.sysSetting()\r\n },\r\n methods: {\r\n changeQR(key) {\r\n this.activeQR = key\r\n this.show_qr = false\r\n setTimeout(() => {\r\n this.show_qr = true\r\n }, 1000)\r\n },\r\n clearUser() {\r\n this.$store.dispatch('menu/clearMenus')\r\n this.$store.dispatch('user/clearUser')\r\n this.$store.dispatch('menu/setCopyMenus', [])\r\n this.$store.dispatch('login/logoutAndCleanUp')\r\n },\r\n //如果记住密码则默认表单赋值\r\n setDefaultValue() {\r\n let account = Cookie.get('account'),\r\n remberPwd = Cookie.get('remberPwd'),\r\n password = Cookie.get('accountPwd')\r\n if (remberPwd) {\r\n // remberPwd Number(remberPwd)\r\n // 如果有记住密码 取密文解密放进输入框\r\n let Base64 = require('js-base64').Base64\r\n password = Base64.decode(password)\r\n this.principal = {\r\n account,\r\n password,\r\n remberPwd: Number(remberPwd)\r\n }\r\n }\r\n },\r\n loginTypeChange(type) {\r\n this.accountLogin = type\r\n this.accountLogin ? null : this.getQr()\r\n },\r\n getQr() {\r\n let page = '/fvue/auth'\r\n let host = window.location.protocol + '//' + window.location.hostname\r\n let port = window.location.port\r\n\r\n let url = host + ':' + port + page\r\n this.wwLogin = new WwLogin({\r\n id: 'qr_login',\r\n appid: window.context.corp_id,\r\n agentid: window.context.agent_id,\r\n redirect_uri: encodeURI(url),\r\n state: 'hellowecom',\r\n href:\r\n 'data:text/css;base64,LmltcG93ZXJCb3ggLnRpdGxlIHtjb2xvcjogI2ZmZjt9Ci5pbXBvd2VyQm94IC5zdGF0dXMge2NvbG9yOiAjZmZmO30=', // data:text/css;base64,\r\n lang: 'zh'\r\n })\r\n },\r\n changeAccountType(type) {\r\n this.accountType = type\r\n this.$refs.principal.clearValidate()\r\n },\r\n sendMessage() {\r\n if (!this.isSendMessage) {\r\n this.validateField()\r\n }\r\n },\r\n validateField() {\r\n this.$refs.principal.validateField('phone', err => {\r\n if (!err) {\r\n this.isSendMessage = true\r\n this.countdown()\r\n }\r\n })\r\n },\r\n countdown() {\r\n this.timer = setInterval(() => {\r\n this.second--\r\n if (this.second == 0) {\r\n clearInterval(this.timer)\r\n this.isSendMessage = false\r\n this.second = 60\r\n }\r\n }, 1000)\r\n },\r\n //获取系统默认配置 系统Logo、名称\r\n sysSetting() {\r\n let url = '${uc}/uc/tenantManage/v1/getTenantByCode?code=platform'\r\n this.$http.get(url).then(resp => {\r\n if (resp.data) {\r\n let tenantManage = resp.data\r\n // this.companyName = tenantManage.nameFront\r\n if (tenantManage.frontLogo) {\r\n let frontLogo = JSON.parse(tenantManage.frontLogo)\r\n if (frontLogo && frontLogo.length > 0) {\r\n this.$http\r\n .get(\r\n window.context.portal +\r\n '/file/onlinePreviewController/v1/getFileById_' +\r\n frontLogo[0].id,\r\n 'arraybuffer'\r\n )\r\n .then(response => {\r\n let type = response.headers['content-type']\r\n if (type) {\r\n this.logoUrl = window.URL.createObjectURL(\r\n new Blob([response.data], {\r\n type: type\r\n })\r\n )\r\n } else {\r\n this.logoUrl = window.URL.createObjectURL(\r\n new Blob([response.data])\r\n )\r\n }\r\n })\r\n }\r\n }\r\n }\r\n })\r\n },\r\n setRouterPath() {\r\n this.$store.dispatch('login/actionLoginAccount', this.principal.account)\r\n localStorage.setItem(\r\n this.principal.account + 'loginRoutePath',\r\n this.$route.path\r\n )\r\n },\r\n submitForm(formName) {\r\n this.$refs[formName].validate(valid => {\r\n if (valid) {\r\n this.inputGetFocus()\r\n this.setRouterPath()\r\n this.loading = true\r\n this.$store\r\n .dispatch('login/loginByPrincipal', this.principal)\r\n .then(loginStatus => {\r\n if (loginStatus && loginStatus == true) {\r\n this.$store.dispatch('menu/getCurrentUserMethodAuth')\r\n this.getAllDict()\r\n this.$store.dispatch('menu/actionFrontMenus').then(res => {\r\n if (!res || !res.length) {\r\n this.clearUser()\r\n this.loading = false\r\n this.$message.warning(\r\n '抱歉!您尚无可访问页面,请联系管理员添加!'\r\n )\r\n return\r\n } else {\r\n this.$router.push({\r\n path: `/platLayout/toDoTask`\r\n })\r\n }\r\n return\r\n let bigScreen =\r\n res && res.filter(item => item.alias === 'bigScreen')\r\n // 如果用户有大屏菜单进去大屏页面\r\n if (bigScreen && bigScreen.length !== 0) {\r\n this.$router.push({\r\n path: `/${bigScreen[0].children[0].alias}`\r\n })\r\n return\r\n }\r\n let dataMenus =\r\n res && res.filter(item => item.alias === 'normal')\r\n if (dataMenus && dataMenus.length !== 0) {\r\n if (\r\n dataMenus[0].children.length !== 0 &&\r\n dataMenus[0].children[0].children.length\r\n ) {\r\n this.$router.push({\r\n path: `/platLayout/${dataMenus[0].children[0].children[0].alias}`\r\n })\r\n } else {\r\n this.$router.push({\r\n path: `/platLayout/${dataMenus[0].children[0].alias}`\r\n })\r\n }\r\n }\r\n })\r\n } else if (loginStatus == false) {\r\n this.$router.push({\r\n name: 'resetPwdView',\r\n query: {type: 'login'}\r\n })\r\n }\r\n })\r\n .catch(msg => {\r\n this.loading = false\r\n console.log(msg, 'msg')\r\n if (msg.indexOf && msg.indexOf('timeout of') !== -1) {\r\n msg = '登录超时'\r\n }\r\n this.responseError = msg\r\n })\r\n } else {\r\n return false\r\n }\r\n })\r\n },\r\n getAllDict() {\r\n portal\r\n .getSysDict()\r\n .then(data => {\r\n // console.log(data, '字典')\r\n if (data) {\r\n sessionStorage.setItem('dict_data', JSON.stringify(data))\r\n }\r\n })\r\n .catch(err => {\r\n // console.log(err, '字典err')\r\n })\r\n },\r\n inputGetFocus() {\r\n this.responseError = ''\r\n },\r\n resetForm(formName) {\r\n this.responseError = ''\r\n this.$refs[formName].resetFields()\r\n }\r\n }\r\n}\r\n",null]}