import { emitter } from '@kit.BasicServicesKit' export class UserInfo { KEY: string = 'UserInfo' isLogin: boolean = false private memberName?: string private memberPhone?: string private memberEmail?: string private memberIcon?: string private aiCount?: number private userId?: number private memberScore?: number private token?: string setUserInfoAndLogin(_userInfo: UserInfo) { userInfo.isLogin = true if (_userInfo.token) { userInfo.token = _userInfo.token } userInfo.memberEmail = _userInfo.memberEmail userInfo.memberIcon = _userInfo.memberIcon userInfo.memberName = _userInfo.memberName userInfo.userId = _userInfo.userId userInfo.memberScore = _userInfo.memberScore userInfo.aiCount = _userInfo.aiCount userInfo.memberPhone = _userInfo.memberPhone emitter.emit('refreshList') AppStorage.setOrCreate(userInfo.KEY, userInfo) } logout() { userInfo.isLogin = false userInfo.token = undefined userInfo.memberEmail = undefined userInfo.memberIcon = undefined userInfo.memberName = undefined userInfo.userId = undefined userInfo.memberScore = undefined userInfo.aiCount = undefined userInfo.memberPhone = undefined emitter.emit('cleanList') AppStorage.setOrCreate(userInfo.KEY, userInfo) AppStorage.setOrCreate('token', undefined) } checkLogin() { return userInfo.isLogin } getToken() { return userInfo.token } setToken(token: string) { userInfo.token = token AppStorage.setOrCreate('token', token) AppStorage.setOrCreate(userInfo.KEY, userInfo) } getHeadImg() { return userInfo.memberIcon } setHeadImg(headImg: string) { userInfo.memberIcon = headImg AppStorage.setOrCreate(userInfo.KEY, userInfo) } getEmail() { return userInfo.memberEmail } setEmail(email: string) { userInfo.memberEmail = email AppStorage.setOrCreate(userInfo.KEY, userInfo) } getName() { return userInfo.memberName } setName(name: string) { userInfo.memberName = name AppStorage.setOrCreate(userInfo.KEY, userInfo) } getId() { return userInfo.userId } setId(id: number) { userInfo.userId = id AppStorage.setOrCreate(userInfo.KEY, userInfo) } getGoldNum() { return userInfo.memberScore } setGoldNum(goldNum: number) { userInfo.memberScore = goldNum AppStorage.setOrCreate(userInfo.KEY, userInfo) } getAiNum() { return userInfo.aiCount } setAiNum(aiNum: number) { userInfo.aiCount = aiNum AppStorage.setOrCreate(userInfo.KEY, userInfo) } getPhoneNumber() { return userInfo.memberPhone } setPhoneNumber(phoneNumber: string) { userInfo.memberPhone = phoneNumber AppStorage.setOrCreate(userInfo.KEY, userInfo) } } export const userInfo = new UserInfo()