| | |
| | | getUserDetail, |
| | | removeUserDetail, |
| | | } from '@/utils/storage/auth'; |
| | | import * as accountServices from '@12333/services/api/Account'; |
| | | // import * as userServices from '@12333/services/api/User'; |
| | | import Taro, { useRouter } from '@tarojs/taro'; |
| | | import { ButtonProps } from '@tarojs/components'; |
| | | import { debounce } from 'lodash'; |
| | |
| | | md5Encrypt, |
| | | } from '@12333/utils'; |
| | | import DefaultAvatar from '@/assets/components/icon-default-avatar.png'; |
| | | import { WxMiniAppEnum } from '@12333/constants'; |
| | | import { myClient } from '@/constants/query'; |
| | | import { globalEventEmitter } from '@12333/hooks'; |
| | | import * as authServices from '@12333/services/apiV2/auth'; |
| | |
| | | userInfo?: Nullable<API.LoginCommandCallback>; |
| | | token?: Nullable<string>; |
| | | refreshToken?: Nullable<string>; |
| | | userDetail?: Nullable<API.UserInfoV2>; |
| | | userDetail?: Nullable<API.GetEnterpriseLoginInfoQueryResult>; |
| | | firstGetUserDetail?: boolean; |
| | | |
| | | locationCity?: string; |
| | |
| | | return getAccountInfoFromAccessToken(this.userInfo?.accessToken); |
| | | }, |
| | | |
| | | userId: (state) => { |
| | | return state.userDetail?.id; |
| | | }, |
| | | |
| | | // matchMakingIdentity(state): MatchMakingIdentityEnum { |
| | | |
| | | // }, |
| | |
| | | // 手机号授权Code登录 |
| | | 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, |
| | | accessToken: wxMiniAppUserLoginRes.accessToken, |
| | | }); |
| | | res.accessToken = bindRes.accessToken; |
| | | this.loginSuccess(res); |
| | | } |
| | | return res; |
| | |
| | | try { |
| | | this.setUserInfoAction(res); |
| | | this.setTokenAction(res); |
| | | // await this.getCurrentUserInfo(); |
| | | await this.getCurrentUserInfo(); |
| | | } catch (error) {} |
| | | }, |
| | | |
| | | async wxMiniAppUserLoginFromScan(wxIndentityRes: API.WxMiniAppIndentityInfo, uuid: string) { |
| | | try { |
| | | let res = await accountServices.wxMiniAppUserLoginFromScan({ |
| | | uId: uuid, |
| | | userName: wxIndentityRes.userName, |
| | | openId: wxIndentityRes.openId, |
| | | }); |
| | | this.loginSuccess(res); |
| | | return res; |
| | | } catch (error) {} |
| | | // try { |
| | | // let res = await accountServices.wxMiniAppUserLoginFromScan({ |
| | | // uId: uuid, |
| | | // userName: wxIndentityRes.userName, |
| | | // openId: wxIndentityRes.openId, |
| | | // }); |
| | | // this.loginSuccess(res); |
| | | // return res; |
| | | // } catch (error) {} |
| | | }, |
| | | |
| | | async wxMiniAppPhoneAuthLoginFromScan( |
| | |
| | | wxIndentityRes: API.WxMiniAppIndentityInfo, |
| | | uuid: string |
| | | ) { |
| | | try { |
| | | let res = await accountServices.wxMiniAppPhoneAuthLoginFromScan({ |
| | | uId: uuid, |
| | | openId: wxIndentityRes.openId, |
| | | sessionKey: wxIndentityRes.sessionKey, |
| | | encryptedData: detail.encryptedData, |
| | | iv: detail.iv, |
| | | wxMiniApp: WxMiniAppEnum.C端小程序, |
| | | }); |
| | | this.loginSuccess(res); |
| | | return res; |
| | | } catch (error) {} |
| | | // try { |
| | | // let res = await accountServices.wxMiniAppPhoneAuthLoginFromScan({ |
| | | // uId: uuid, |
| | | // openId: wxIndentityRes.openId, |
| | | // sessionKey: wxIndentityRes.sessionKey, |
| | | // encryptedData: detail.encryptedData, |
| | | // iv: detail.iv, |
| | | // wxMiniApp: WxMiniAppEnum.C端小程序, |
| | | // }); |
| | | // this.loginSuccess(res); |
| | | // return res; |
| | | // } catch (error) {} |
| | | }, |
| | | |
| | | // async getCurrentUserInfo() { |
| | | // try { |
| | | // let res = await userServices.getUserInfo({ showLoading: false }); |
| | | // if (res) { |
| | | // res.frontStatus = getUserCertificationFrontStatusAdapter( |
| | | // res.userCertificationStatus, |
| | | // res.userCertificationAuditStatus |
| | | // ); |
| | | // res.originalAvatarUrl = res.avatarUrl; |
| | | // res.avatarUrl = res.avatarUrl ? setOSSLink(res.avatarUrl) : DefaultAvatar; |
| | | // this.setUserDetail(res); |
| | | // this.firstGetUserDetail = false; |
| | | // } |
| | | // } catch (error) {} |
| | | // }, |
| | | async getCurrentUserInfo() { |
| | | try { |
| | | let res = await authServices.getEnterpriseLoginInfo({}, { showLoading: false }); |
| | | if (res) { |
| | | // res.frontStatus = getUserCertificationFrontStatusAdapter( |
| | | // res.userCertificationStatus, |
| | | // res.userCertificationAuditStatus |
| | | // ); |
| | | res.originalAvatar = res.avatar; |
| | | res.avatar = res.avatar ? setOSSLink(res.avatar) : DefaultAvatar; |
| | | this.setUserDetail(res); |
| | | this.firstGetUserDetail = false; |
| | | } |
| | | } catch (error) {} |
| | | }, |
| | | |
| | | setTokenAction(tokenInfo: API.IdentityModelTokenCacheItem) { |
| | | this.token = tokenInfo?.accessToken; |
| | |
| | | setUserInfo(info); |
| | | }, |
| | | |
| | | setUserDetail(detail: API.UserInfoV2) { |
| | | setUserDetail(detail: API.GetEnterpriseLoginInfoQueryResult) { |
| | | this.userDetail = detail; |
| | | setUserDetail(detail); |
| | | }, |
| | |
| | | */ |
| | | logout() { |
| | | this.resetState(); |
| | | myClient.removeQueries(); |
| | | // myClient.removeQueries(); |
| | | goAuthorization(); |
| | | }, |
| | | |