From b80dfac43870bb6991228fc01d32b3d5e428283d Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期一, 11 八月 2025 17:03:35 +0800 Subject: [PATCH] fix: 修改登录 --- apps/bMiniApp/src/utils/request/index.ts | 6 + apps/bMiniApp/src/subpackages/login/loginByForm/verificationCodeLoginForm.vue | 2 apps/bMiniApp/src/subpackages/login/registerForm/registerForm.vue | 24 ++++---- apps/cMiniApp/src/utils/request/index.ts | 6 + apps/bMiniApp/src/constants/app.ts | 2 apps/cMiniApp/src/stores/modules/user.ts | 16 ++--- apps/bMiniApp/src/subpackages/login/authorization/authorization.vue | 2 apps/cMiniApp/src/subpackages/login/registerForm/registerForm.vue | 6 +- pnpm-lock.yaml | 2 apps/bMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue | 2 apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue | 6 - apps/cMiniApp/src/subpackages/login/authorization/authorization.vue | 55 +++++++++--------- packages/utils/message.tsx | 5 + apps/bMiniApp/src/stores/modules/user.ts | 4 apps/bMiniApp/src/subpackages/login/loginByForm/accountLoginForm.vue | 2 apps/cMiniApp/src/constants/app.ts | 2 apps/cMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue | 2 17 files changed, 76 insertions(+), 68 deletions(-) diff --git a/apps/bMiniApp/src/constants/app.ts b/apps/bMiniApp/src/constants/app.ts index cd671f7..ba1edfe 100644 --- a/apps/bMiniApp/src/constants/app.ts +++ b/apps/bMiniApp/src/constants/app.ts @@ -2,5 +2,5 @@ export const AppLocalConfig = { userType: EnumUserType.Enterprise, - clientType: EnumClientType.PcWeb, + clientType: EnumClientType.Wxmp, }; diff --git a/apps/bMiniApp/src/stores/modules/user.ts b/apps/bMiniApp/src/stores/modules/user.ts index 43999ef..405d027 100644 --- a/apps/bMiniApp/src/stores/modules/user.ts +++ b/apps/bMiniApp/src/stores/modules/user.ts @@ -97,15 +97,15 @@ ) { try { let res: API.LoginCommandCallback = wxMiniAppUserLoginRes; - if (!wxMiniAppUserLoginRes.isBindPhoneNumber) { + if (!wxMiniAppUserLoginRes?.isBindPhoneNumber) { let bindRes = await authServices.bindWxmpUserInfo({ encryptedData: detail.encryptedData, iv: detail.iv, sessionKey: wxMiniAppUserLoginRes.sessionKey, }); res.accessToken = bindRes.accessToken; + this.loginSuccess(res); } - this.loginSuccess(res); return res; } catch (error) { console.log('error3: ', error); diff --git a/apps/bMiniApp/src/subpackages/login/authorization/authorization.vue b/apps/bMiniApp/src/subpackages/login/authorization/authorization.vue index 61b1869..748c81e 100644 --- a/apps/bMiniApp/src/subpackages/login/authorization/authorization.vue +++ b/apps/bMiniApp/src/subpackages/login/authorization/authorization.vue @@ -112,7 +112,7 @@ type: AppLocalConfig.userType, }; wxMiniAppUserLoginRes.value = await authServices.wxmpLogin(params); - if (wxMiniAppUserLoginRes.value.isBindPhoneNumber) { + if (wxMiniAppUserLoginRes.value?.isBindPhoneNumber) { isAccount.value = true; } } diff --git a/apps/bMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue b/apps/bMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue index bc88221..980c188 100644 --- a/apps/bMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue +++ b/apps/bMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue @@ -7,7 +7,7 @@ <img :src="OssAssets.login.AuthBg" class="authorization-page-auth" /> </template> - <div class="authorization-page-title">娆㈣繋浣跨敤宸ョ泭璧�</div> + <div class="authorization-page-title">娆㈣繋浣跨敤鐏靛伐杈�</div> <slot></slot> </PageLayout> diff --git a/apps/bMiniApp/src/subpackages/login/loginByForm/accountLoginForm.vue b/apps/bMiniApp/src/subpackages/login/loginByForm/accountLoginForm.vue index 3499730..61dc409 100644 --- a/apps/bMiniApp/src/subpackages/login/loginByForm/accountLoginForm.vue +++ b/apps/bMiniApp/src/subpackages/login/loginByForm/accountLoginForm.vue @@ -27,7 +27,7 @@ </nut-form-item> </nut-form> <LargeButton class="login-btn" @click="handleLogin" :loading="form.loading">鐧诲綍</LargeButton> - <div class="go-register-btn" @click="goRegister">绔嬪嵆娉ㄥ唽</div> + <!-- <div class="go-register-btn" @click="goRegister">绔嬪嵆娉ㄥ唽</div> --> </div> </template> diff --git a/apps/bMiniApp/src/subpackages/login/loginByForm/verificationCodeLoginForm.vue b/apps/bMiniApp/src/subpackages/login/loginByForm/verificationCodeLoginForm.vue index dd3316f..09222dd 100644 --- a/apps/bMiniApp/src/subpackages/login/loginByForm/verificationCodeLoginForm.vue +++ b/apps/bMiniApp/src/subpackages/login/loginByForm/verificationCodeLoginForm.vue @@ -27,7 +27,7 @@ </nut-form-item> </nut-form> <LargeButton class="login-btn" @click="handleLogin" :loading="form.loading">鐧诲綍</LargeButton> - <div class="go-register-btn" @click="goRegister">绔嬪嵆娉ㄥ唽</div> + <!-- <div class="go-register-btn" @click="goRegister">绔嬪嵆娉ㄥ唽</div> --> </div> </template> diff --git a/apps/bMiniApp/src/subpackages/login/registerForm/registerForm.vue b/apps/bMiniApp/src/subpackages/login/registerForm/registerForm.vue index b68561a..dc8162f 100644 --- a/apps/bMiniApp/src/subpackages/login/registerForm/registerForm.vue +++ b/apps/bMiniApp/src/subpackages/login/registerForm/registerForm.vue @@ -114,18 +114,18 @@ if (state.policyChecked) { const { valid } = await formRef.value.validate(); if (valid) { - let params: API.PhoneMesssageCodeRegisterInput = { - code: form.verificationCode, - phoneNumber: form.phoneNumber, - }; - let res = await accountServices.phoneMesssageCodeRegister(params); - if (res) { - Message.success('娉ㄥ唽鎴愬姛', { - onClosed: () => { - goLogin(); - }, - }); - } + // let params: API.PhoneMesssageCodeRegisterInput = { + // code: form.verificationCode, + // phoneNumber: form.phoneNumber, + // }; + // let res = await accountServices.phoneMesssageCodeRegister(params); + // if (res) { + // Message.success('娉ㄥ唽鎴愬姛', { + // onClosed: () => { + // goLogin(); + // }, + // }); + // } } } else { noAccess(); diff --git a/apps/bMiniApp/src/utils/request/index.ts b/apps/bMiniApp/src/utils/request/index.ts index 0a1d04c..34b5098 100644 --- a/apps/bMiniApp/src/utils/request/index.ts +++ b/apps/bMiniApp/src/utils/request/index.ts @@ -10,6 +10,7 @@ /** 璇锋眰鐧藉悕鍗曪紝鏀剧疆涓�浜涗笉闇�瑕乼oken鐨勬帴鍙o紙閫氳繃璁剧疆璇锋眰鐧藉悕鍗曪紝闃叉token杩囨湡鍚庡啀璇锋眰閫犳垚鐨勬寰幆闂锛� */ const whiteList = [RefreshTokenUrl]; +const RefreshTokenBlackList = ['wxmpLogin']; export function startLoading(showNavigationBarLoading: boolean) { if (showNavigationBarLoading) { @@ -219,7 +220,10 @@ const userStore = useUserStoreWithOut(); - if (response.headers['x-access-token']) { + if ( + response.headers['x-access-token'] && + RefreshTokenBlackList.every((url) => !response.config.url?.includes(url)) + ) { const tokenInfo: API.LoginCommandCallback = { accessToken: response.headers['access-token'], refreshToken: response.headers['x-access-token'], diff --git a/apps/cMiniApp/src/constants/app.ts b/apps/cMiniApp/src/constants/app.ts index 755671c..0d00408 100644 --- a/apps/cMiniApp/src/constants/app.ts +++ b/apps/cMiniApp/src/constants/app.ts @@ -2,5 +2,5 @@ export const AppLocalConfig = { userType: EnumUserType.Personal, - clientType: EnumClientType.PcWeb, + clientType: EnumClientType.Wxmp, }; diff --git a/apps/cMiniApp/src/stores/modules/user.ts b/apps/cMiniApp/src/stores/modules/user.ts index 39b8df7..512ca6b 100644 --- a/apps/cMiniApp/src/stores/modules/user.ts +++ b/apps/cMiniApp/src/stores/modules/user.ts @@ -93,19 +93,17 @@ // 鎵嬫満鍙锋巿鏉僀ode鐧诲綍 async getTokenByPhone( detail: ButtonProps.onGetPhoneNumberEventDetail, - wxMiniAppUserLoginRes: any + wxMiniAppUserLoginRes: API.LoginCommandCallback ) { try { - let res: API.IdentityModelTokenCacheItem; - if (!wxMiniAppUserLoginRes.accessToken) { - let params: API.WxMiniAppPhoneLoginInput = { - openId: wxMiniAppUserLoginRes.openId, - sessionKey: wxMiniAppUserLoginRes.sessionKey, + let res: API.LoginCommandCallback = wxMiniAppUserLoginRes; + if (!wxMiniAppUserLoginRes?.isBindPhoneNumber) { + let bindRes = await authServices.bindWxmpUserInfo({ encryptedData: detail.encryptedData, iv: detail.iv, - wxMiniApp: WxMiniAppEnum.C绔皬绋嬪簭, - }; - res = await accountServices.wxMiniAppPhoneAuthLogin(params); + sessionKey: wxMiniAppUserLoginRes.sessionKey, + }); + res.accessToken = bindRes.accessToken; this.loginSuccess(res); } return res; diff --git a/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue b/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue index 816aab9..f9eb94f 100644 --- a/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue +++ b/apps/cMiniApp/src/subpackages/city/citySelect/citySelect.vue @@ -61,11 +61,9 @@ return _elevatorData; }); -console.log('elevatorData: ', elevatorData); - const clickItem = (key: string, item: any) => { - console.log('item: ', item, getAreaByAreaCode(item.parentId).areaName); - userStore.setLocationCity(item.name, getAreaByAreaCode(item.parentId).areaName); + console.log('item: ', item, 1111); + // userStore.setLocationCity(item.name, getAreaByAreaCode(item.parentId).areaName); }; async function resetLocation() { diff --git a/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue b/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue index 8968b1a..748c81e 100644 --- a/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue +++ b/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue @@ -57,11 +57,10 @@ import { CommonEventFunction, ButtonProps } from '@tarojs/components'; import Taro from '@tarojs/taro'; import { useLoginedJump } from '@/hooks'; -import * as accountServices from '@12333/services/api/Account'; import IconCaptcha from '@/assets/login/icon-btn-captcha.png'; import IconPassword from '@/assets/login/icon-btn-password.png'; import { LoginFormTabs } from '../constants'; -import { WxMiniAppEnum } from '@12333/constants'; +import * as authServices from '@12333/services/apiV2/auth'; defineOptions({ name: 'authorization', @@ -90,8 +89,8 @@ RouterPath.authorization.includes(launchOptions.path) && launchOptions.scene === 1047 && uuid ); -const wxIndentityRes = ref<API.WxMiniAppIndentityInfo>(); -const wxMiniAppUserLoginRes = ref<API.IdentityModelTokenCacheItem>(); +const wxIndentityRes = ref<API.LoginCommandCallback>(); +const wxMiniAppUserLoginRes = ref<API.LoginCommandCallback>(); const isAccount = ref(false); @@ -99,21 +98,21 @@ try { let loginRes = await Taro.login(); if (isLoginByWeb.value) { - const wxIndentity = await accountServices.getWxIndentity({ - code: loginRes.code, - wxMiniApp: WxMiniAppEnum.C绔皬绋嬪簭, - }); - wxIndentityRes.value = wxIndentity; - if (wxIndentityRes.value.userName) { - isAccount.value = true; - } + // const wxIndentity = await authServices.wxmpLogin({ + // code: loginRes.code, + // type: AppLocalConfig.userType, + // }); + // wxIndentityRes.value = wxIndentity; + // if (wxIndentityRes.value.isBindPhoneNumber) { + // isAccount.value = true; + // } } else { - const params: API.APIwxMiniAppUserLoginParams = { + const params: API.WxmpLoginCommand = { code: loginRes.code, - wxMiniApp: WxMiniAppEnum.C绔皬绋嬪簭, + type: AppLocalConfig.userType, }; - wxMiniAppUserLoginRes.value = await accountServices.wxMiniAppUserLogin(params); - if (wxMiniAppUserLoginRes.value.accessToken) { + wxMiniAppUserLoginRes.value = await authServices.wxmpLogin(params); + if (wxMiniAppUserLoginRes.value?.isBindPhoneNumber) { isAccount.value = true; } } @@ -126,14 +125,14 @@ console.log('errMsg: ', errMsg, isLoginByWeb.value); if (errMsg === 'getPhoneNumber:ok') { if (isLoginByWeb.value) { - let res = await userStore.wxMiniAppPhoneAuthLoginFromScan( - ev.detail, - wxIndentityRes.value, - uuid - ); - if (res) { - handleLoginSuccess(); - } + // let res = await userStore.wxMiniAppPhoneAuthLoginFromScan( + // ev.detail, + // wxIndentityRes.value, + // uuid + // ); + // if (res) { + // handleLoginSuccess(); + // } } else { let res = await userStore.getTokenByPhone(ev.detail, wxMiniAppUserLoginRes.value); if (res) { @@ -153,10 +152,10 @@ if (state.policyChecked) { if (isLoginByWeb.value) { console.log('uuid: ', uuid); - let res = await userStore.wxMiniAppUserLoginFromScan(wxIndentityRes.value, uuid); - if (res) { - handleLoginSuccess(); - } + // let res = await userStore.wxMiniAppUserLoginFromScan(wxIndentityRes.value, uuid); + // if (res) { + // handleLoginSuccess(); + // } } else { userStore.loginSuccess(wxMiniAppUserLoginRes.value); handleLoginSuccess(); diff --git a/apps/cMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue b/apps/cMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue index 47fcdd2..3c7c64a 100644 --- a/apps/cMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue +++ b/apps/cMiniApp/src/subpackages/login/components/LoginPageLayout/LoginPageLayout.vue @@ -7,7 +7,7 @@ <img :src="OssAssets.login.AuthBg" class="authorization-page-auth" /> </template> - <div class="authorization-page-title">娆㈣繋浣跨敤818骞冲彴</div> + <div class="authorization-page-title">娆㈣繋浣跨敤宸ユ槗璧�</div> <slot></slot> </PageLayout> diff --git a/apps/cMiniApp/src/subpackages/login/registerForm/registerForm.vue b/apps/cMiniApp/src/subpackages/login/registerForm/registerForm.vue index b68561a..c13c487 100644 --- a/apps/cMiniApp/src/subpackages/login/registerForm/registerForm.vue +++ b/apps/cMiniApp/src/subpackages/login/registerForm/registerForm.vue @@ -114,11 +114,11 @@ if (state.policyChecked) { const { valid } = await formRef.value.validate(); if (valid) { - let params: API.PhoneMesssageCodeRegisterInput = { - code: form.verificationCode, + let params: API.RegisterPersonalUserCommand = { + verifyCode: form.verificationCode, phoneNumber: form.phoneNumber, }; - let res = await accountServices.phoneMesssageCodeRegister(params); + let res = await authServices.registerPersonalUser(params); if (res) { Message.success('娉ㄥ唽鎴愬姛', { onClosed: () => { diff --git a/apps/cMiniApp/src/utils/request/index.ts b/apps/cMiniApp/src/utils/request/index.ts index 0a1d04c..34b5098 100644 --- a/apps/cMiniApp/src/utils/request/index.ts +++ b/apps/cMiniApp/src/utils/request/index.ts @@ -10,6 +10,7 @@ /** 璇锋眰鐧藉悕鍗曪紝鏀剧疆涓�浜涗笉闇�瑕乼oken鐨勬帴鍙o紙閫氳繃璁剧疆璇锋眰鐧藉悕鍗曪紝闃叉token杩囨湡鍚庡啀璇锋眰閫犳垚鐨勬寰幆闂锛� */ const whiteList = [RefreshTokenUrl]; +const RefreshTokenBlackList = ['wxmpLogin']; export function startLoading(showNavigationBarLoading: boolean) { if (showNavigationBarLoading) { @@ -219,7 +220,10 @@ const userStore = useUserStoreWithOut(); - if (response.headers['x-access-token']) { + if ( + response.headers['x-access-token'] && + RefreshTokenBlackList.every((url) => !response.config.url?.includes(url)) + ) { const tokenInfo: API.LoginCommandCallback = { accessToken: response.headers['access-token'], refreshToken: response.headers['x-access-token'], diff --git a/packages/utils/message.tsx b/packages/utils/message.tsx index 2e3b9e6..cccb42f 100644 --- a/packages/utils/message.tsx +++ b/packages/utils/message.tsx @@ -51,6 +51,11 @@ resolve(1); }} confirmText={confirmText} + //@ts-ignore + onClickOverlay={() => { + onClose(); + reject(); + }} ></Model> ), }} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index de548bf..48697c1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -241,7 +241,7 @@ version: 6.11.1 senin-mini: specifier: ^1.0.12 - version: 1.0.12(@nutui/icons-vue-taro@0.0.9)(@nutui/nutui-taro@4.3.13)(@tanstack/vue-query@4.35.3)(@tarojs/components@3.6.20)(@tarojs/taro@3.6.20)(axios@1.4.0)(dayjs@1.11.6)(lodash@4.17.21)(vue@3.5.12) + version: link:../../../../demo/modern-module/packages/senin-mini senior-request: specifier: ^1.0.3 version: 1.0.3(axios@1.4.0) -- Gitblit v1.9.1