1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- <template>
- </template>
- <script setup>
- import { v4 as uuidv4 } from 'uuid';
- import QRCode from 'qrcode'
- let qrUuid = uuidv4();
- let loginType = 3;
- let countTimeNum = 0;
- qrCodeLogin(qrUuid).then(res => {
- if (res.success) {
- qrUuid = res.data.key;
- setTimeout(() => {
- QRCode.toCanvas(canvas, qrUuid, (error) => {
- if (error) console.error(error);
- console.log('success!');
- toLoginWithQrCode();
- })
- }, 1000);
- }
- })
- function toLoginWithQrCode() {
- let qrCode = qrUuid;
- let logtyp = this.loginType;
- let timer = setTimeout(function () {
- countTimeNum++;
- if (countTimeNum > 20) {
- clearTimeout(timer);
- countTimeNum = 0;
- } else {
- if (logtyp == 3) {
- console.log('调用二维码登录');
- qrCodeLogin(qrCode).then(
- (res) => {
- console.log(res);
- if (res.success) {
- let userid = res.data.guid;
- let loginName = res.data.persName;
- let guid = res.data.orgId;
- let orgNm = res.data.orgNm;
- let isAdmin = res.data.permission;
- let allNode = JSON.stringify(res.data.allNode);//当前用户所在组信息
- let allOrg = JSON.stringify(res.data.allOrg);
- let persType = res.data.persType;
- let accessToken = res.accessToken; //token是否过期
- localStorage.setItem('userid', userid);
- localStorage.setItem('account', loginName);
- localStorage.setItem('guid', guid);
- localStorage.setItem('orgNm', orgNm);
- localStorage.setItem('isAdmin', isAdmin);
- localStorage.setItem('persType', persType);
- localStorage.setItem('accessToken', accessToken);
- let orgId = res.data.orgId;
- localStorage.setItem('orgId', orgId);
- localStorage.setItem('allOrg', allOrg);
- localStorage.setItem("currentOrgId", res.data.defaultOrg.orgId); //省级当前的机构id
- localStorage.setItem("currentRlcode", res.data.defaultOrg.rlcode); //省级当前的行政区划编码
- // 改变全局adcode状态
- $store.commit('changeAdCode', res.data.defaultOrg.rlcode)
- localStorage.setItem("currentOrgNm", res.data.defaultOrg.orgNm); //省级当前的机构名称
- localStorage.setItem('allNode', allNode);
- $message.success({
- message: '登录成功',
- duration: 700
- });
- $router.push('/')
- } else {
- toLoginWithQrCode();
- }
- }
- );
- }
- }
- }, 3000);
- }
- </script>
|