Browse Source

增加无感登录

qin_8
hreenshan112 9 months ago
parent
commit
6c372e6066
  1. 26
      src/views/login/index.vue
  2. 22
      src/views/user/index.vue

26
src/views/login/index.vue

@ -22,6 +22,8 @@ const loginInfo = reactive<loginStruct>({
time: getTimeUnix()
})
const singButLoading = ref(false)
const xingzhi = ref(1)
//
const codePic = ref<string>("")
const getSignCode = () => {
@ -35,11 +37,20 @@ const getSignCode = () => {
}
onBeforeMount(() => {
let xingzhi = judgingEnvironment();
if(xingzhi == 3){
window.location.href="http://wab.hxgk.group/systemapi/wechat/obtainAuthorization?systemapp="+import.meta.env.VITE_APP_SYSTEM_APP+"&isagain="+import.meta.env.VITE_APP_AGAIN+"&userid="+route.query.userid
}
if(!userPinia.judgeIsLogin(route.query.userkey,route.query.token)){
xingzhi.value = judgingEnvironment();
if(xingzhi.value == 3){
window.location.href="http://wab.hxgk.group/systemapi/wechat/obtaOnePage?systemapp="+import.meta.env.VITE_APP_SYSTEM_APP+"&isagain="+import.meta.env.VITE_APP_AGAIN+"&userid="+route.query.userid+"&call_back_type=login"
}else{
xingzhi.value = 1
getSignCode()
}
}else{
userPinia.getInfo()
router.push('/')
}
})
const loginForm = ref(ElForm); //
@ -132,10 +143,12 @@ const judgingEnvironment = () => {
</script>
<template>
<div class="appBodyBeiJing appBody contentCenter">
<el-card style="max-width: 90%; background-color: rgba(255,255,255,0.6); border: rgba(255,255,255,0.6);">
<el-card v-if="xingzhi==3" v-loading="true" element-loading-text="身份验证中!请耐心等待!..." style="max-width: 90%; min-width:80%; height:250px; background-color: rgba(255,255,255,0.1); border: rgba(255,255,255,0.1);" element-loading-background="rgba(255,255,255,0.6)">
</el-card>
<el-card v-else style="max-width: 90%; background-color: rgba(255,255,255,0.6); border: rgba(255,255,255,0.6);">
<template #header>
<div class="card-header">
<el-text class="loginTitle">{{ loginTitle }}</el-text>
<el-text class="loginTitle">{{ loginTitle }}--{{xingzhi}}</el-text>
</div>
</template>
<el-form
@ -166,6 +179,7 @@ const judgingEnvironment = () => {
</el-form-item>
</el-form>
</el-card>
</div>
</template>
<style lang='scss' scoped>

22
src/views/user/index.vue

@ -8,7 +8,7 @@ import { useRoute,useRouter } from 'vue-router'
import { userStror } from "@/utils/pinia/stores/modules/userOrders";
import UserImg from "@/assets/image/1.png";
import BottomPage from '@/views/common/bottom/index.vue'
const xingzhi = ref(1)
const route = useRoute()
const router = useRouter()
const userPinia = userStror();
@ -17,6 +17,7 @@ const circleUrl = 'https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1ep
const userUrl = ref(UserImg)
onBeforeMount(() => {
xingzhi.value = judgingEnvironment();
userPinia.getInfo()
.then(() =>{
userUrl.value = userPinia.avatar?userPinia.avatar:UserImg
@ -31,6 +32,23 @@ const exitLogin = () => {
userPinia.setUserInfoNull()
router.push('/login')
}
/**
@ 作者: 秦东
@ 时间: 2024-10-23 13:46:25
@ 功能: 判断登录环境
*/
const judgingEnvironment = () => {
let huanjing = window.navigator.userAgent.toLowerCase()
if( (huanjing.match(/MicroMessenger/i) == 'micromessenger') && (huanjing.match(/wxwork/i) == 'wxwork') ){
return 3;
}else if( huanjing.match(/MicroMessenger/i) == 'micromessenger' ){
return 2;
}else{
return 1;
}
return 3;
}
</script>
<template>
<div>
@ -54,7 +72,7 @@ const exitLogin = () => {
<el-text>联系地址</el-text>
<el-text v-html="userPinia.userInfoCont.currentresidence"></el-text>
</el-col>
<el-col :span="24" class=" imgBox">
<el-col v-if="xingzhi!=3" :span="24" class=" imgBox">
<el-button type="danger" style="width: 100px;" @click="exitLogin()">退出</el-button>
</el-col>
</el-row>

Loading…
Cancel
Save