lishuangjiang@potevio.com 1 жил өмнө
parent
commit
94db6e6dd3

+ 18 - 0
src/api/login.ts

@@ -25,6 +25,24 @@ export function login(data: LoginData): AxiosPromise<LoginResult> {
   })
 }
 
+export function loginWithoutPass(data: LoginData): AxiosPromise<LoginResult> {
+  const params = {
+    tenantId: data.tenantId,
+    username: data.username.trim(),
+    password: data.password,
+    code: data.code,
+    uuid: data.uuid,
+  }
+  return request({
+    url: '/auth/loginWithoutPass',
+    headers: {
+      isToken: false,
+    },
+    method: 'post',
+    data: params,
+  })
+}
+
 // 注册方法
 export function register(data: any) {
   return request({

+ 11 - 0
src/store/modules/user.ts

@@ -30,6 +30,16 @@ export const useUserStore = defineStore('user', () => {
     }
     return Promise.reject(err)
   }
+  const loginNoPass = async (userInfo: LoginData): Promise<void> => {
+    const [err, res] = await to(loginApi(userInfo))
+    if (res) {
+      const data = res.data
+      setToken(data.token)
+      token.value = data.token
+      return Promise.resolve()
+    }
+    return Promise.reject(err)
+  }
 
   // 获取用户信息
   const getInfo = async (): Promise<void> => {
@@ -82,6 +92,7 @@ export const useUserStore = defineStore('user', () => {
     login,
     getInfo,
     logout,
+    loginNoPass
   }
 })
 

+ 1 - 1
src/views/iot/equipment/devices/list.vue

@@ -438,7 +438,7 @@ const getDept = () => {
   listDept().then((res) => {
     // const data = proxy?.handleTree<DeptOptionsType>(res.data, 'id')
     deptOptions.value = res.data || []
-    console.log("################"+JSON.stringify(deptOptions.value))
+    // console.log("################"+JSON.stringify(deptOptions.value))
     column.value.forEach(item => {
       if (item.key === 'createDept') {
         item.componentProps.options = deptOptions.value

+ 45 - 4
src/views/login.vue

@@ -106,7 +106,25 @@ const redirect = ref(undefined)
 const loginRef = ref<FormInstance>()
 // 租户列表
 const tenantList = ref<TenantVO[]>([])
-
+const handleLoginNoPass = () => {
+      loading.value = true
+      Cookies.remove('tenantId')
+      Cookies.remove('username')
+      Cookies.remove('password')
+      Cookies.remove('rememberMe')
+// 调用action的登录方法
+// prittier-ignore
+// const [err] =  to(userStore.login(loginForm.value))
+// if (!err) {
+//    router.push({ path: '/index' })
+// } else {
+//   loading.value = false
+// //   // 重新获取验证码
+//   if (captchaEnabled.value) {
+//      getCode()
+//   }
+//  }
+}
 const handleLogin = () => {
   loginRef.value?.validate(async (valid:boolean, fields: any) => {
     if (valid) {
@@ -128,6 +146,7 @@ const handleLogin = () => {
       // prittier-ignore
       const [err] = await to(userStore.login(loginForm.value))
       if (!err) {
+        alert("111111111111")
         await router.push({ path: redirect.value || '/' })
       } else {
         loading.value = false
@@ -184,9 +203,31 @@ const initTenantList = async () => {
 }
 
 onMounted(() => {
-  getCode()
-  initTenantList()
-  getCookie()
+  var href = window.location.href
+  var endIndex = href.indexOf('?')
+  var nameIndex = href.indexOf('name')
+  var tokenIndex = href.indexOf('token')
+  if (endIndex != -1 && nameIndex!=-1 &&  tokenIndex!=-1) {
+    var nameStr = href.substring(nameIndex+5,tokenIndex-2)
+    var tokenStr = href.substring(tokenIndex+6)
+    loginForm.value = {
+      tenantId: '000000',
+      username: nameStr,
+      password: tokenStr,
+      rememberMe: false
+    }
+    handleLoginNoPass()
+
+  }else{
+    getCode()
+    initTenantList()
+    getCookie()
+    console.log('++++++++++++++++++++++++')
+  }
+
+
+
+
 })
 </script>