| | |
| | | import { h } from 'vue'; |
| | | import { getMenuAuthList } from '/@/api/sys/menu'; |
| | | import { iV_USER_MENU } from '/@/api/tigerapi/model/vModel'; |
| | | import { useGlobSetting } from '/@/hooks/setting'; |
| | | |
| | | const globSetting = useGlobSetting(); |
| | | interface UserState { |
| | | userInfo: Nullable<UserInfo>; |
| | | token?: string; |
| | |
| | | params: AccountInfo & { |
| | | goHome?: boolean; |
| | | mode?: ErrorMessageMode; |
| | | |
| | | }, |
| | | ): Promise<GetUserInfoModel | null> { |
| | | try { |
| | |
| | | if (!data.IsSuccessed) { |
| | | return Promise.reject(data.LocaleMsg); |
| | | } |
| | | |
| | | |
| | | // save token |
| | | this.setToken(data.Data?.TOKEN); |
| | | return this.afterLoginAction(goHome,loginParams.data.password==='000000'); |
| | | return this.afterLoginAction(goHome, loginParams.data.password === '000000'); |
| | | } catch (error) { |
| | | return Promise.reject(error); |
| | | } |
| | | }, |
| | | async afterLoginAction(goHome?: boolean,changepwd?:boolean): Promise<GetUserInfoModel | null> { |
| | | async afterLoginAction( |
| | | goHome?: boolean, |
| | | changepwd?: boolean, |
| | | ): Promise<GetUserInfoModel | null> { |
| | | if (!this.getToken) return null; |
| | | // get user info |
| | | const userInfo = await this.getTgUserInfoAction(changepwd); |
| | |
| | | } |
| | | return userInfo; |
| | | }, |
| | | async getUserInfoAction(changepwd:boolean): Promise<UserInfo | null> { |
| | | async getUserInfoAction(changepwd: boolean): Promise<UserInfo | null> { |
| | | if (!this.getToken) return null; |
| | | const data = await getTgUserInfo(); |
| | | const vUserMenu = await getMenuAuthList(data.USER_ID); |
| | | const userInfo: UserInfo = { |
| | | userId: data.USER_ID, |
| | | changepwd:changepwd, |
| | | changepwd: changepwd, |
| | | username: data.USER_NAME, |
| | | realName: data.USER_NAME, |
| | | orgCode: data.ORG_CODE, |
| | | orgCode: globSetting.useOrg == 'true' ? data.ORG_CODE : '', |
| | | prodCode: globSetting.useOrg == 'false' ? data.ORG_CODE : '', |
| | | avatar: '', |
| | | roles: vUserMenu.Data.Items as unknown as iV_USER_MENU[], |
| | | }; |
| | |
| | | this.setUserInfo(userInfo); |
| | | return userInfo; |
| | | }, |
| | | async getTgUserInfoAction(changepwd:boolean,orgCode?: string): Promise<UserInfo | null> { |
| | | async getTgUserInfoAction(changepwd: boolean, orgCode?: string): Promise<UserInfo | null> { |
| | | if (!this.getToken) return null; |
| | | const data = await getTgUserInfo(); |
| | | const vUserMenu = await getMenuAuthList(data.USER_ID); |
| | | const userInfo: UserInfo = { |
| | | userId: data.USER_ID, |
| | | username: data.USER_NAME, |
| | | changepwd:changepwd, |
| | | changepwd: changepwd, |
| | | realName: data.USER_NAME, |
| | | orgCode: data.ORG_CODE, |
| | | orgCode: globSetting.useOrg == 'true' ? data.ORG_CODE : '', |
| | | prodCode: globSetting.useOrg == 'false' ? data.FTY_CODE : '', |
| | | avatar: '', |
| | | roles: vUserMenu.Data.Items as unknown as iV_USER_MENU[], |
| | | }; |