fix
This commit is contained in:
@@ -9,6 +9,7 @@
|
|||||||
<div v-if="isTest" class="username"><span>/</span> {{$t('Header.hello')}}@{{ $t('isTest.userName') }}</div>
|
<div v-if="isTest" class="username"><span>/</span> {{$t('Header.hello')}}@{{ $t('isTest.userName') }}</div>
|
||||||
<div v-else class="username"><span>/</span> {{$t('Header.hello')}}@{{ userInfo?.userName }}</div>
|
<div v-else class="username"><span>/</span> {{$t('Header.hello')}}@{{ userInfo?.userName }}</div>
|
||||||
<div
|
<div
|
||||||
|
v-if="!isMurmur"
|
||||||
:class="[
|
:class="[
|
||||||
'icon',
|
'icon',
|
||||||
'iconfont',
|
'iconfont',
|
||||||
@@ -189,11 +190,13 @@ export default defineComponent({
|
|||||||
const {t} = useI18n()
|
const {t} = useI18n()
|
||||||
const {locale} = useI18n()
|
const {locale} = useI18n()
|
||||||
let isTest = ref()
|
let isTest = ref()
|
||||||
|
let isMurmur = ref()
|
||||||
return {
|
return {
|
||||||
store,
|
store,
|
||||||
t,
|
t,
|
||||||
locale,
|
locale,
|
||||||
isTest,
|
isTest,
|
||||||
|
isMurmur,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
@@ -226,9 +229,10 @@ export default defineComponent({
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
let isTest = getCookie('isTest')
|
let isTest = getCookie('isTest')//获取是否是试用用户
|
||||||
this.isTest =JSON.parse(isTest)
|
this.isTest =JSON.parse(isTest)
|
||||||
|
let isMurmur = getCookie('isMurmur')//获取是否是试用用户
|
||||||
|
this.isMurmur =JSON.parse(isMurmur)
|
||||||
this.userInfo = JSON.parse(getCookie("userInfo"));
|
this.userInfo = JSON.parse(getCookie("userInfo"));
|
||||||
if (!this.userInfo) {
|
if (!this.userInfo) {
|
||||||
this.$router.replace("/login");
|
this.$router.replace("/login");
|
||||||
@@ -236,8 +240,10 @@ export default defineComponent({
|
|||||||
this.accountIsLogin(this.userInfo);
|
this.accountIsLogin(this.userInfo);
|
||||||
}
|
}
|
||||||
this.isHaveBindEmail = this.userInfo?.email ? true : false;
|
this.isHaveBindEmail = this.userInfo?.email ? true : false;
|
||||||
|
if(!isMurmur){
|
||||||
this.operateClick();
|
this.operateClick();
|
||||||
document.addEventListener("click", this.operateClick);
|
document.addEventListener("click", this.operateClick);
|
||||||
|
}
|
||||||
this.getLang('')
|
this.getLang('')
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@@ -341,8 +341,7 @@ export default defineComponent({
|
|||||||
this.chatCentent = ""
|
this.chatCentent = ""
|
||||||
},
|
},
|
||||||
setDriver(index:number){
|
setDriver(index:number){
|
||||||
let isBeginner = JSON.parse((getCookie('isBeginner') as any))
|
// let isBeginner = JSON.parse((getCookie('isBeginner') as any))
|
||||||
|
|
||||||
if(this.driver__.driver){
|
if(this.driver__.driver){
|
||||||
driverObj__.moveNext();
|
driverObj__.moveNext();
|
||||||
this.robotTop = false
|
this.robotTop = false
|
||||||
|
|||||||
58
src/main.ts
58
src/main.ts
@@ -11,23 +11,61 @@ import Antd from 'ant-design-vue';
|
|||||||
import './assets/style/style.less'
|
import './assets/style/style.less'
|
||||||
import VueLazyload from "vue-lazyload";
|
import VueLazyload from "vue-lazyload";
|
||||||
import i18n from './lang/index'
|
import i18n from './lang/index'
|
||||||
import GO from './tool/GO'
|
import { getBrowserInfo, murmur } from './tool/util'
|
||||||
import "../node_modules/@flaticon/flaticon-uicons/css/all/all.css"
|
import "../node_modules/@flaticon/flaticon-uicons/css/all/all.css"
|
||||||
import Fingerprint2 from 'fingerprintjs2';//获取浏览器唯一标识
|
import { Https } from "@/tool/https";
|
||||||
|
|
||||||
flexible()
|
flexible()
|
||||||
|
import { getCookie, setCookie } from "@/tool/cookie";
|
||||||
|
|
||||||
import { useI18n } from 'vue-i18n';
|
import { useI18n } from 'vue-i18n';
|
||||||
// console.log(process.env)
|
// console.log(process.env)
|
||||||
Fingerprint2.get(function(components) {
|
let token = getCookie("token");
|
||||||
const values = components.map(function(component,index) {
|
let routerName:any = router.currentRoute
|
||||||
if (index === 0) { //把微信浏览器里UA的wifi或4G等网络替换成空,不然切换网络会ID不一样
|
let isLogin = routerName._value.name
|
||||||
return component.value.replace(/\bNetType\/\w+\b/, '')
|
|
||||||
|
async function isMurmur() {
|
||||||
|
let murmurStr: any = localStorage.getItem('murmurStr')
|
||||||
|
if (!murmurStr) {
|
||||||
|
await murmur().then((rv) => {
|
||||||
|
murmurStr = rv
|
||||||
|
})
|
||||||
}
|
}
|
||||||
return component.value
|
let isSxis = false
|
||||||
|
let data = {
|
||||||
|
browserIdentifiers: murmurStr
|
||||||
|
}
|
||||||
|
await Https.axiosPost(Https.httpUrls.existNoLoginRequired, data)
|
||||||
|
.then((rv) => {
|
||||||
|
isSxis = rv
|
||||||
})
|
})
|
||||||
// 生成最终id murmur
|
.catch((res) => {
|
||||||
const murmur = Fingerprint2.x64hash128(values.join(''), 31);
|
});
|
||||||
console.log('浏览器指纹码:'+murmur )
|
if (isSxis && !token) {
|
||||||
|
// if(isLogin != 'login'){
|
||||||
|
// return
|
||||||
|
// }
|
||||||
|
Https.axiosPost(Https.httpUrls.noLoginRequired, data)
|
||||||
|
.then((rv) => {
|
||||||
|
let isTest = rv.isTrial == 1 ? true : false
|
||||||
|
let isBeginner = rv.isBeginner == 1 ? true : false
|
||||||
|
setCookie("isMurmur", true);
|
||||||
|
setCookie("token", rv.token);
|
||||||
|
setCookie("isTest", isTest);
|
||||||
|
setCookie("isBeginner", isBeginner);
|
||||||
|
setCookie("isBeginnerNum", 0);//从第一步开始,机器人开始的话就是从第二部开始
|
||||||
|
setCookie("userInfo", JSON.stringify(rv));
|
||||||
|
sessionStorage.setItem('isTimeOne', JSON.stringify(false));//是否需要公告 提示 弹窗
|
||||||
|
let randomNum: any = Math.floor(Math.random() * 9000000000000000) + 1000000000000000;
|
||||||
|
sessionStorage.setItem('sessionId', randomNum);
|
||||||
|
router.push("/home");
|
||||||
})
|
})
|
||||||
|
.catch((res) => {
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
isMurmur()
|
||||||
|
|
||||||
let loadingParam = {
|
let loadingParam = {
|
||||||
loading: require('./assets/images/homePage/loading.gif'),
|
loading: require('./assets/images/homePage/loading.gif'),
|
||||||
attempt: 1
|
attempt: 1
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
import { createRouter, createWebHistory, RouteRecordRaw, createWebHashHistory } from 'vue-router'
|
import { createRouter, createWebHistory, RouteRecordRaw, createWebHashHistory } from 'vue-router'
|
||||||
import { defineAsyncComponent } from 'vue'
|
import { defineAsyncComponent } from 'vue'
|
||||||
|
import {getBrowserInfo,murmur} from '@/tool/util'
|
||||||
|
import { getCookie,setCookie } from "@/tool/cookie";
|
||||||
const _import = (path: string) => defineAsyncComponent(() => import(`../views/${path}.vue`));
|
const _import = (path: string) => defineAsyncComponent(() => import(`../views/${path}.vue`));
|
||||||
|
|
||||||
const routes: Array<RouteRecordRaw> = [
|
const routes: Array<RouteRecordRaw> = [
|
||||||
@@ -9,6 +11,12 @@ const routes: Array<RouteRecordRaw> = [
|
|||||||
redirect: "/login"
|
redirect: "/login"
|
||||||
// redirect: "/Upgrade"
|
// redirect: "/Upgrade"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/",
|
||||||
|
// redirect重定向
|
||||||
|
redirect: "/home"
|
||||||
|
// redirect: "/Upgrade"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/login',
|
path: '/login',
|
||||||
name: 'login',
|
name: 'login',
|
||||||
@@ -56,12 +64,52 @@ const router = createRouter({
|
|||||||
// history: createWebHashHistory(),
|
// history: createWebHashHistory(),
|
||||||
routes
|
routes
|
||||||
})
|
})
|
||||||
// router.beforeEach((to, from, next) => {
|
router.beforeEach((to, from, next) => {
|
||||||
|
// // 获取路由配置对象
|
||||||
|
// const route = router.resolve({ path: '/' }).route
|
||||||
|
|
||||||
|
// // 修改重定向
|
||||||
|
// route.redirect = '/new-path'
|
||||||
|
// router.addRoute(route)
|
||||||
|
|
||||||
|
// next();
|
||||||
|
// let token = getCookie("token");
|
||||||
|
// console.log(to,from);
|
||||||
|
// if(from.path == '/' && !token){
|
||||||
|
// console.log(111);
|
||||||
|
// murmur().then((rv)=>{
|
||||||
|
// console.log(rv);
|
||||||
|
|
||||||
|
// if(rv){
|
||||||
|
// console.log(123123);
|
||||||
|
// next({ name: 'history' });
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// }else{
|
||||||
|
// console.log(333);
|
||||||
|
// next()
|
||||||
|
// }
|
||||||
|
//系统维护
|
||||||
// const toName = to.name === 'upgrade';
|
// const toName = to.name === 'upgrade';
|
||||||
// if (toName) {
|
// if (toName) {
|
||||||
// next();
|
// next();
|
||||||
// } else {
|
// } else {
|
||||||
// next({ name: 'upgrade' });
|
// next({ name: 'upgrade' });
|
||||||
// }
|
// }
|
||||||
// });
|
|
||||||
|
//机房用户
|
||||||
|
let murmurStr:any = localStorage.getItem('murmurStr')
|
||||||
|
let getIsMurmur:any = getCookie("isMurmur")
|
||||||
|
let isMurmur = JSON.parse(getIsMurmur)
|
||||||
|
if(isMurmur&& murmurStr){
|
||||||
|
const toName = to.name === 'login';
|
||||||
|
if (toName) {
|
||||||
|
next({ name: 'home' });
|
||||||
|
} else {
|
||||||
|
next();
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
next();
|
||||||
|
}
|
||||||
|
});
|
||||||
export default router
|
export default router
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
const setCookie = (name,value) => {
|
const setCookie = (name,value) => {
|
||||||
var Days = 30;
|
var Days = 100;
|
||||||
var exp = new Date();
|
var exp = new Date();
|
||||||
exp.setTime(exp.getTime() + Days*24*60*60*1000);
|
exp.setTime(exp.getTime() + Days*24*60*60*1000);
|
||||||
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
|
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
|
||||||
|
|||||||
@@ -232,6 +232,7 @@ const openGuide = () =>{
|
|||||||
// console.log(isBeginner);
|
// console.log(isBeginner);
|
||||||
let isBeginnerNum = JSON.parse(getCookie('isBeginnerNum')?getCookie('isBeginnerNum'):'0')
|
let isBeginnerNum = JSON.parse(getCookie('isBeginnerNum')?getCookie('isBeginnerNum'):'0')
|
||||||
// console.log(isBeginner);
|
// console.log(isBeginner);
|
||||||
|
console.log(isBeginner,isTest);
|
||||||
if(isBeginner && !isTest){
|
if(isBeginner && !isTest){
|
||||||
if(isBeginnerNum){
|
if(isBeginnerNum){
|
||||||
driverObj__.drive(isBeginnerNum);
|
driverObj__.drive(isBeginnerNum);
|
||||||
|
|||||||
@@ -100,7 +100,13 @@ export const Https = {
|
|||||||
trialUserLogout:`/account/trialUserLogout`, //试用用户退出登录接口
|
trialUserLogout:`/account/trialUserLogout`, //试用用户退出登录接口
|
||||||
completeGuidancet:`/api/account/completeGuidance`, //用户指引结束
|
completeGuidancet:`/api/account/completeGuidance`, //用户指引结束
|
||||||
|
|
||||||
getExpiredTime:`/api/account/getExpiredTime`, //获取用户到期事件
|
getExpiredTime:`/api/account/getExpiredTime`, //获取用户到期时间
|
||||||
|
|
||||||
|
addNoLoginRequired:`/api/third/party/addNoLoginRequired`, //机房用户注册
|
||||||
|
deleteNoLoginRequired:`/api/third/party/deleteNoLoginRequired`, //机房用户注销
|
||||||
|
noLoginRequired:`api/account/noLoginRequired`, //机房用户登录
|
||||||
|
existNoLoginRequired:`/api/third/party/existNoLoginRequired`, //获取唯一标识是否存在
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
preLogin:'/api/account/preLogin',//预先登入
|
preLogin:'/api/account/preLogin',//预先登入
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import Fingerprint2 from 'fingerprintjs2';//获取浏览器唯一标识
|
||||||
const isEmail = (email) => {
|
const isEmail = (email) => {
|
||||||
let reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/
|
let reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/
|
||||||
let result = reg.test(email)
|
let result = reg.test(email)
|
||||||
@@ -182,6 +183,25 @@ function getBrowserInfo() {//获取是什么浏览器
|
|||||||
return agent.match(regStr_saf);
|
return agent.match(regStr_saf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
async function murmur(){
|
||||||
|
return await new Promise((resolve,reject)=>{
|
||||||
|
Fingerprint2.get(function (components) {
|
||||||
|
const values = components.map(function (
|
||||||
|
component,
|
||||||
|
index
|
||||||
|
) {
|
||||||
|
if (index === 0) {
|
||||||
|
//把微信浏览器里UA的wifi或4G等网络替换成空,不然切换网络会ID不一样
|
||||||
|
return component.value.replace(/\bNetType\/\w+\b/, "");
|
||||||
|
}
|
||||||
|
return component.value;
|
||||||
|
});
|
||||||
|
// 生成最终id murmur
|
||||||
|
let murmur = Fingerprint2.x64hash128(values.join(""), 31);
|
||||||
|
resolve(murmur)
|
||||||
|
});
|
||||||
|
})
|
||||||
|
}
|
||||||
export {
|
export {
|
||||||
isEmail,
|
isEmail,
|
||||||
getUploadUrl,
|
getUploadUrl,
|
||||||
@@ -194,4 +214,5 @@ export {
|
|||||||
isMoible,
|
isMoible,
|
||||||
downloadIamge,
|
downloadIamge,
|
||||||
getBrowserInfo,
|
getBrowserInfo,
|
||||||
|
murmur,
|
||||||
}
|
}
|
||||||
@@ -233,7 +233,7 @@
|
|||||||
import { defineComponent,ref ,onMounted} from "vue";
|
import { defineComponent,ref ,onMounted} from "vue";
|
||||||
import { Https } from "@/tool/https";
|
import { Https } from "@/tool/https";
|
||||||
import { isEmail } from "@/tool/util";
|
import { isEmail } from "@/tool/util";
|
||||||
import { setCookie } from "@/tool/cookie";
|
import { setCookie ,WriteCookie } from "@/tool/cookie";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import VerificationCodeInput from "@/component/LoginPage/verificationCodeInput.vue";
|
import VerificationCodeInput from "@/component/LoginPage/verificationCodeInput.vue";
|
||||||
import { useI18n } from "vue-i18n";
|
import { useI18n } from "vue-i18n";
|
||||||
@@ -246,6 +246,7 @@ export default defineComponent({
|
|||||||
setup(){
|
setup(){
|
||||||
let timer:any = 0;
|
let timer:any = 0;
|
||||||
const {locale} = useI18n()
|
const {locale} = useI18n()
|
||||||
|
WriteCookie("token");
|
||||||
|
|
||||||
return{
|
return{
|
||||||
timer,
|
timer,
|
||||||
@@ -463,12 +464,11 @@ export default defineComponent({
|
|||||||
Https.axiosPost(Https.httpUrls.accountLogin, data).then(
|
Https.axiosPost(Https.httpUrls.accountLogin, data).then(
|
||||||
(rv: any) => {
|
(rv: any) => {
|
||||||
if (rv) {
|
if (rv) {
|
||||||
console.log(rv);
|
|
||||||
|
|
||||||
this.createTimer();
|
this.createTimer();
|
||||||
let isTest = rv.isTrial == 1?true:false
|
let isTest = rv.isTrial == 1?true:false
|
||||||
let isBeginner = rv.isBeginner == 1?true:false
|
let isBeginner = rv.isBeginner == 1?true:false
|
||||||
let token = rv.token;
|
let token = rv.token;
|
||||||
|
setCookie("isMurmur", false);
|
||||||
setCookie("token", token);
|
setCookie("token", token);
|
||||||
setCookie("isTest", isTest);
|
setCookie("isTest", isTest);
|
||||||
setCookie("isBeginner", isBeginner);
|
setCookie("isBeginner", isBeginner);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="identification_page">
|
<div class="identification_page">
|
||||||
<div>密钥:<input type="text" autofocus /></div>
|
<div>密钥:<input type="text" autofocus /></div>
|
||||||
<div class="button" @click="getFingerprint2">记录浏览器</div>
|
<div class="button" @click="setFingerprint2('set')">记录浏览器标识</div>
|
||||||
|
<div class="button" @click="setFingerprint2('delete')">注销浏览器标识</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
@@ -11,7 +12,6 @@ import HeaderComponent from "@/component/HomePage/Header.vue";
|
|||||||
import HistoryDetail from "@/component/Detail/HistoryDetail.vue";
|
import HistoryDetail from "@/component/Detail/HistoryDetail.vue";
|
||||||
import router from "@/router/index";
|
import router from "@/router/index";
|
||||||
import { Https } from "@/tool/https";
|
import { Https } from "@/tool/https";
|
||||||
import { formatTime, getBrowserInfo } from "@/tool/util";
|
|
||||||
import { Modal, message } from "ant-design-vue";
|
import { Modal, message } from "ant-design-vue";
|
||||||
import RobotAssist from "@/component/HomePage/RobotAssist.vue";
|
import RobotAssist from "@/component/HomePage/RobotAssist.vue";
|
||||||
import { ExclamationCircleOutlined } from "@ant-design/icons-vue";
|
import { ExclamationCircleOutlined } from "@ant-design/icons-vue";
|
||||||
@@ -47,7 +47,7 @@ export default defineComponent({
|
|||||||
// }
|
// }
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async getFingerprint2() {
|
async setFingerprint2(str:any) {
|
||||||
let murmur:any = ''
|
let murmur:any = ''
|
||||||
await new Promise((resolve,reject)=>{
|
await new Promise((resolve,reject)=>{
|
||||||
Fingerprint2.get(function (components: any) {
|
Fingerprint2.get(function (components: any) {
|
||||||
@@ -63,19 +63,31 @@ export default defineComponent({
|
|||||||
});
|
});
|
||||||
// 生成最终id murmur
|
// 生成最终id murmur
|
||||||
murmur = Fingerprint2.x64hash128(values.join(""), 31);
|
murmur = Fingerprint2.x64hash128(values.join(""), 31);
|
||||||
console.log("浏览器指纹码:" + murmur);
|
|
||||||
resolve('')
|
resolve('')
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
|
let data = {
|
||||||
|
browserIdentifiers:murmur
|
||||||
|
}
|
||||||
|
if(str == 'set'){
|
||||||
|
Https.axiosPost(Https.httpUrls.addNoLoginRequired, data)
|
||||||
|
.then((rv) => {
|
||||||
|
localStorage.setItem('murmurStr',murmur)
|
||||||
|
message.success('Created successfully');
|
||||||
|
})
|
||||||
|
.catch((res) => {
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
Https.axiosPost(Https.httpUrls.deleteNoLoginRequired, data)
|
||||||
|
.then((rv) => {
|
||||||
|
message.success('successfully delete');
|
||||||
|
localStorage.removeItem('murmurStr')
|
||||||
|
setCookie("isMurmur", false);
|
||||||
|
})
|
||||||
|
.catch((res) => {
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
let data = {}
|
|
||||||
console.log(11);
|
|
||||||
// Https.axiosPost(Https.httpUrls.designSingle, data)
|
|
||||||
// .then((rv) => {
|
|
||||||
// // designItemDetail.clothes[index].printObject.path = rv.clothes[0].printObject.path
|
|
||||||
// })
|
|
||||||
// .catch((res) => {
|
|
||||||
// });
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -263,7 +263,8 @@ export default defineComponent({
|
|||||||
let historyTable: any = this.$refs.historyTable;
|
let historyTable: any = this.$refs.historyTable;
|
||||||
this.historyTableHeight = historyTable.clientHeight - 130;
|
this.historyTableHeight = historyTable.clientHeight - 130;
|
||||||
this.gettrialList();
|
this.gettrialList();
|
||||||
this.userInfo = JSON.parse(getCookie("userInfo") as any);
|
let userInfo:any = getCookie("userInfo")
|
||||||
|
this.userInfo = JSON.parse(userInfo);
|
||||||
|
|
||||||
if (this.userInfo.userId == 83 || this.userInfo.userId == 88) {
|
if (this.userInfo.userId == 83 || this.userInfo.userId == 88) {
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user