| | |
| | | <!-- |
| | | * @Author: husq 931347610@qq.com |
| | | * @Date: 2023-09-13 18:21:08 |
| | | * @LastEditors: husq 931347610@qq.com |
| | | * @LastEditTime: 2023-10-08 17:33:16 |
| | | * @FilePath: \Cloud-API-Demo-Web\src\pages\page-web\index.vue |
| | | * @Description: |
| | | * |
| | | * Copyright (c) 2023 by ${git_name_email}, All Rights Reserved. |
| | | --> |
| | | <template> |
| | | <div class="login flex-column flex-justify-center flex-align-center m0 b0"> |
| | | <a-image :preview="false" style="width: 17vw; height: 10vw; margin-bottom: 50px" :src="djiLogo" /> |
| | | <p class="fz35 pb50" style="color: #2d8cf0">无人机操作系统</p> |
| | | <a-form layout="inline" :model="formState" class="flex-row flex-justify-center flex-align-center"> |
| | | <a-form-item> |
| | | <a-input v-model:value="formState.username" placeholder="Username"> |
| | | <a-input v-model:value="formState.username" placeholder="请输入用户名"> |
| | | <template #prefix> |
| | | <UserOutlined style="color: rgba(0, 0, 0, 0.25)" /> |
| | | </template> |
| | | </a-input> |
| | | </a-form-item> |
| | | <a-form-item> |
| | | <a-input v-model:value="formState.password" type="password" placeholder="Password"> |
| | | <a-input v-model:value="formState.password" type="password" placeholder="请输入密码"> |
| | | <template #prefix> |
| | | <LockOutlined style="color: rgba(0, 0, 0, 0.25)" /> |
| | | </template> |
| | |
| | | const root = getRoot() |
| | | |
| | | const formState: UnwrapRef<LoginBody> = reactive({ |
| | | username: 'admin', |
| | | password: 'Yes@!#$20230523', |
| | | // flag: EUserType.Web, |
| | | username: 'adminPC', |
| | | password: '', |
| | | flag: EUserType.Web, |
| | | }) |
| | | |
| | | const loginBtnDisabled = computed(() => { |
| | | return !formState.username || !formState.password |
| | | }) |
| | | |
| | | const onSubmit = async (e: any) => { |
| | | const password = encrypt(formState.password) |
| | | const result = await login({ ...formState, password }) |
| | | if (result.success) { |
| | | localStorage.setItem(ELocalStorageKey.Token, result.data.token) |
| | | localStorage.setItem(ELocalStorageKey.Username, result.data.user.username) |
| | | localStorage.setItem(ELocalStorageKey.UserInfo, JSON.stringify(result.data.user)) |
| | | const onSubmit = async () => { |
| | | // const password = encrypt(formState.password) |
| | | const result = await login(formState) |
| | | if (result.code === 0) { |
| | | localStorage.setItem(ELocalStorageKey.Token, result.data.access_token) |
| | | localStorage.setItem(ELocalStorageKey.WorkspaceId, result.data.workspace_id) |
| | | localStorage.setItem(ELocalStorageKey.Username, result.data.username) |
| | | localStorage.setItem(ELocalStorageKey.UserId, result.data.user_id) |
| | | localStorage.setItem(ELocalStorageKey.Flag, EUserType.Web.toString()) |
| | | root.$router.push(ERouterName.PROJECT_LIST) |
| | | } else { |
| | | message.error(result.message) |
| | | } |
| | | } |
| | | |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |