UserDataLocal.ets 3.3 KB
/**
 * 用户信息 暂存管理类
 * 主要用于 不需要调用 用户详情接口 获取 当前用户信息的 数据
 */
import { SPHelper } from './SPHelper'
import { StringUtils } from './StringUtils'

export class UserDataLocal {
  private static userId=''
  private static userType=''
  private static userName=''
  private static userHeaderUrl=''
  private static userLevel = -1
  private static userLevelHeaderUrl=''

  //先写死
  static  USER_ID="userId"
  static  USER_Type="userType"
  static  USER_NAME="userName"
  static  USER_HEADER_URL="userHeaderUrl"
  static  USER_LEVEL="userLevel"
  static  USER_LEVEL_HEADER_URL="userLevelHeaderUrl"

  static  USER_FOLLOW_OPERATION="user_follow_operation"

  /**
   * 清除 本地用户数据
   */
  public static clearUserData(){
    UserDataLocal.userId=''
    UserDataLocal.userType=''
    UserDataLocal.userName=''

    UserDataLocal.userHeaderUrl=''
    UserDataLocal.userLevel = -1
    UserDataLocal.userLevelHeaderUrl=''
  }

  public static getUserId() {
    if(StringUtils.isNotEmpty(UserDataLocal.userId)){
      return UserDataLocal.userId
    }
    UserDataLocal.userId = SPHelper.default.getSync(UserDataLocal.USER_ID,"") as string
    return  UserDataLocal.userId;
  }

  public static getUserType() {
    if(StringUtils.isNotEmpty(UserDataLocal.userType)){
      return UserDataLocal.userType
    }
    UserDataLocal.userType = SPHelper.default.getSync(UserDataLocal.USER_Type,"") as string
    return UserDataLocal.userType;
  }

  public static getUserName() {
    if(StringUtils.isNotEmpty(UserDataLocal.userName)){
      return UserDataLocal.userName
    }
    UserDataLocal.userName = SPHelper.default.getSync(UserDataLocal.USER_NAME,"") as string
    return  UserDataLocal.userName;
  }

  public static getUserHeaderUrl() {
    if(StringUtils.isNotEmpty(UserDataLocal.userHeaderUrl)){
      return UserDataLocal.userHeaderUrl
    }
    UserDataLocal.userHeaderUrl = SPHelper.default.getSync(UserDataLocal.USER_HEADER_URL,"") as string
    return  UserDataLocal.userHeaderUrl;
  }

  public static setUserHeaderUrl(url:string) {
    SPHelper.default.save(UserDataLocal.USER_HEADER_URL, url)
  }

  public static setUser_name(url:string) {
    UserDataLocal.userName = url
    SPHelper.default.save(UserDataLocal.USER_NAME, url)
  }

  public static setUserType(type:string) {
    SPHelper.default.save(UserDataLocal.USER_Type, type)
  }

  public static setUserFollowOperation(timestamp:string) {
    SPHelper.default.saveSync(UserDataLocal.USER_FOLLOW_OPERATION, timestamp)
  }


  public static getUserLevel() {
    if(UserDataLocal.userLevel != -1){
      return UserDataLocal.userLevel
    }
    UserDataLocal.userLevel = SPHelper.default.getSync(UserDataLocal.USER_LEVEL,-1) as number
    return  UserDataLocal.userLevel;
  }

  public static setUserLevel(level:number) {
    SPHelper.default.save(UserDataLocal.USER_LEVEL, level)
  }

  public static getUserLevelHeaderUrl() {
    if(StringUtils.isNotEmpty(UserDataLocal.userLevelHeaderUrl)){
      return UserDataLocal.userLevelHeaderUrl
    }
    UserDataLocal.userLevelHeaderUrl = SPHelper.default.getSync(UserDataLocal.USER_LEVEL_HEADER_URL,"") as string
    return  UserDataLocal.userLevelHeaderUrl;
  }

  public static setUserLevelHeaderUrl(url:string) {
    SPHelper.default.save(UserDataLocal.USER_LEVEL_HEADER_URL, url)
  }

}