From e2632d921fffdbf897333c843b70f84e85d23a8b Mon Sep 17 00:00:00 2001 From: lizhipeng Date: Mon, 23 Feb 2026 10:08:37 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E6=B3=A8=E5=86=8C=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 4 +- .env.production | 4 +- src/api/login.ts | 111 ++++++++++++------------------- src/stores/userInfo.ts | 2 +- src/utils/request.ts | 2 +- src/views/login/login.vue | 24 +++++-- src/views/login/register.vue | 26 ++++++-- src/views/login/visible-code.vue | 14 +++- 8 files changed, 101 insertions(+), 86 deletions(-) diff --git a/.env.development b/.env.development index 885391e..4214b50 100644 --- a/.env.development +++ b/.env.development @@ -1,4 +1,4 @@ # VITE_APP_URL = http://192.168.31.82:8771 -# VITE_APP_URL = http://18.167.251.121:10095 -VITE_APP_URL = http://192.168.31.118:8080 +VITE_APP_URL = http://18.167.251.121:10015 +# VITE_APP_URL = http://192.168.31.118:8080 VITE_GOOGLE_CLIENT_ID = 216037134725-7q8vqp0ohtmohlosltkfg7bd2v29rm5a.apps.googleusercontent.com diff --git a/.env.production b/.env.production index 54a50e7..1b76a4d 100644 --- a/.env.production +++ b/.env.production @@ -1,3 +1,3 @@ -VITE_APP_URL = https://www.lc-api.aida.com.hk -# VITE_APP_URL = http://18.167.251.121:10095 +# VITE_APP_URL = https://www.lc-api.aida.com.hk +VITE_APP_URL = http://18.167.251.121:10015 VITE_GOOGLE_CLIENT_ID = 29310152396-nnsd3h533fld665oguu8ovrt1nukmt46.apps.googleusercontent.com diff --git a/src/api/login.ts b/src/api/login.ts index ee2b979..679a7d5 100644 --- a/src/api/login.ts +++ b/src/api/login.ts @@ -1,77 +1,48 @@ import request from '@/utils/request' -interface LoginParamsType { - name?: string // 姓名 - email: string // 邮箱 - password?: string // 密码 - operationType: 'REGISTER' | 'LOGIN' | 'FORGET_PWD' - verifyCode?: string // 验证码 +/** + * + * 发送验证码 + * @param params 发送验证码的参数 + * @param params.email 邮箱 + * @returns 验证码发送成功的响应 + */ +export const SendVerificationCode = (params) => { + return request({ + url: '/api/user/send-verification-code', + method: 'post', + params + }) } -// 发送验证码 -export const precheckEmail = (params: { email: string }): Promise => { - return request({ - url: '/api/auth/precheckEmail', - method: 'get', - params - }) -} - -export const fetchRegisterOrLogin = (data: LoginParamsType): Promise => { - return request({ - url: '/api/auth/registerOrLogin', - method: 'post', - data - }) -} - -export const resetPassword = (data: LoginParamsType): Promise => { - return request({ - url: '/api/auth/forgotPwd', - method: 'post', - data - }) -} - -export const checkLoginStatus = (): Promise> => { - return request({ - url: '/api/auth/checkLoginStatus', - method: 'get', - meta: { responseAll: true } - }) -} - -export const LogOut = (): Promise => { - return request({ - url: '/api/auth/logout', - method: 'get' - }) -} - -// Google登录/注册参数类型 -interface GoogleAuthParamsType { - accessToken?: string // Google ID Token (用于One Tap登录) -} -export const googleAuth = (data: GoogleAuthParamsType): Promise => { - return request({ - url: '/api/auth/parseGoogleAccessToken', - method: 'get', - params: data - }) -} - - -/** 更改用户信息 - * @param data 包含用户信息的对象 - * @param data.username 用户名 - * @param data.email 邮箱 +/** + * 注册用户 + * @param data 注册用户的参数 + * @param data.username 姓名 * @param data.password 密码 - * @returns 包含更新后的用户信息的对象 + * @param data.email 邮箱 + * @param data.verificationCode 验证码 + * @returns 注册成功后的token */ -export const updateUserInfo = (data: any) => { - return request({ - url: '/api/auth/updateUserInfo', - method: 'post', - data - }) +export const Register = (data) => { + return request({ + url: '/api/user/register', + method: 'post', + data + }) } +/** + * 登录用户 + * @param data 登录用户的参数 + * @param data.username 姓名 + * @param data.password 密码 + * @param data.verificationCode 验证码 + * @returns 登录成功后的token +*/ +export const Login = (data) => { + return request({ + url: '/api/user/login', + method: 'post', + data + }) +} \ No newline at end of file diff --git a/src/stores/userInfo.ts b/src/stores/userInfo.ts index 096377e..ef7d558 100644 --- a/src/stores/userInfo.ts +++ b/src/stores/userInfo.ts @@ -24,7 +24,7 @@ export const useUserInfoStore = defineStore('userInfo', () => { const setToken = (data: string) => { state.value.token = data - setLocal(data, 'token') + // setLocal(data, 'token') } const getGenerateParams = () => { diff --git a/src/utils/request.ts b/src/utils/request.ts index 7c4b1b1..5bb61f0 100644 --- a/src/utils/request.ts +++ b/src/utils/request.ts @@ -79,7 +79,7 @@ service.interceptors.response.use( const res = response.data // 处理异常的情况 // console.log(res) - if (res.code != 0) { + if (res.code != 200) { // showToast({ // message: res.errMsg || res.message, // // type: 'fail', diff --git a/src/views/login/login.vue b/src/views/login/login.vue index 34e3508..21f46f7 100644 --- a/src/views/login/login.vue +++ b/src/views/login/login.vue @@ -56,11 +56,14 @@ diff --git a/src/views/login/register.vue b/src/views/login/register.vue index 6b4244b..fc127b7 100644 --- a/src/views/login/register.vue +++ b/src/views/login/register.vue @@ -60,11 +60,14 @@ diff --git a/src/views/login/visible-code.vue b/src/views/login/visible-code.vue index c49896b..7d79a86 100644 --- a/src/views/login/visible-code.vue +++ b/src/views/login/visible-code.vue @@ -12,6 +12,7 @@ diff --git a/src/stores/userInfo.ts b/src/stores/userInfo.ts index ef7d558..835d8ae 100644 --- a/src/stores/userInfo.ts +++ b/src/stores/userInfo.ts @@ -1,70 +1,46 @@ // 每一个存储的模块,命名规则use开头,store结尾 +import router from '@/router' import { defineStore } from 'pinia' import { ref, computed } from 'vue' import { removeLocal, setLocal } from '@/utils/local' import MyEvent from '@/utils/myEvent' export const useUserInfoStore = defineStore('userInfo', () => { - const state = ref({ + const state = ref({ userInfo: {}, token: '', - generateParams: { - stylist: '', - sex: '', - stylistImage: '' - } - }) - // getters - const getUserInfo = computed(() => state.value.userInfo) + }) - // actions - const setUserInfo = (data: any) => { - state.value.userInfo = data - } + // getters + const getUserInfo = computed(() => state.value.userInfo) - const setToken = (data: string) => { - state.value.token = data - // setLocal(data, 'token') - } + // actions + const setUserInfo = (data: any) => { + state.value.userInfo = data + } - const getGenerateParams = () => { - return state.value.generateParams - } + const setToken = (data: string) => { + state.value.token = data + // setLocal(data, 'token') + } - const setGenerateParams = (data: any) => { - state.value.generateParams = data - } + const logOut = async () => { + // 处理退出登录的一些逻辑 + state.value.token = '' + state.value.userInfo = {} + // removeLocal('token') + // MyEvent.emit('clear-generate-state') + // MyEvent.emit('clear-client-state') + // MyEvent.emit('clearAllCache') + router.push({ name: 'login' }) + return "" + } - const resetGenerateParams = () => { - state.value.generateParams = { - stylist: '', - sex: '', - stylistImage: '' - } - } - - const logOut = () => { - // 处理退出登录的一些逻辑 - return new Promise((resolve) => { - state.value.token = '' - state.value.userInfo = {} - removeLocal('token') - resetGenerateParams() - MyEvent.emit('clear-generate-state') - MyEvent.emit('clear-client-state') - MyEvent.emit('clearAllCache') - resolve('') - }) - } - - return { - state, - getUserInfo, - setToken, - setUserInfo, - setGenerateParams, - getGenerateParams, - resetGenerateParams, - logOut - } + return { + state, + getUserInfo, + setToken, + setUserInfo, + logOut + } }) diff --git a/src/views/home/index.vue b/src/views/home/index.vue index 86057fc..bd9b8aa 100644 --- a/src/views/home/index.vue +++ b/src/views/home/index.vue @@ -15,12 +15,14 @@
+ + + diff --git a/src/views/home/setting/LearnMore.vue b/src/views/home/setting/LearnMore.vue new file mode 100644 index 0000000..721608a --- /dev/null +++ b/src/views/home/setting/LearnMore.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/src/views/home/setting/Profile.vue b/src/views/home/setting/Profile.vue new file mode 100644 index 0000000..a9f784c --- /dev/null +++ b/src/views/home/setting/Profile.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/views/home/setting/index.vue b/src/views/home/setting/index.vue new file mode 100644 index 0000000..9195ae7 --- /dev/null +++ b/src/views/home/setting/index.vue @@ -0,0 +1,126 @@ + + + + + diff --git a/src/views/home/top-nav.vue b/src/views/home/top-nav.vue index cfab55c..6d5e6c4 100644 --- a/src/views/home/top-nav.vue +++ b/src/views/home/top-nav.vue @@ -12,13 +12,38 @@ - + + + + diff --git a/src/views/login/login.vue b/src/views/login/login.vue index 21f46f7..6ef36a6 100644 --- a/src/views/login/login.vue +++ b/src/views/login/login.vue @@ -104,6 +104,9 @@ .then((res) => { if (res) { userInfoStore.setToken(res) + userInfoStore.setUserInfo({ + email: formData.email + }) router.push({ name: 'mainInput' }) } }) diff --git a/src/views/login/register.vue b/src/views/login/register.vue index fc127b7..3598ccc 100644 --- a/src/views/login/register.vue +++ b/src/views/login/register.vue @@ -111,6 +111,9 @@ .then((res) => { if (res) { userInfoStore.setToken(res) + userInfoStore.setUserInfo({ + email: formData.email + }) router.push({ name: 'nuic' }) } }) diff --git a/src/views/nuic/index.vue b/src/views/nuic/index.vue index 8d453c9..9114474 100644 --- a/src/views/nuic/index.vue +++ b/src/views/nuic/index.vue @@ -25,7 +25,7 @@
- +
{{ $t('Nuic.loadingTip') }}
@@ -167,7 +167,7 @@ top: 50%; left: 50%; transform: translate(-50%, -50%); - width: 14.4rem; + width: 60rem; height: auto; opacity: 0; &.loading {