LogoutViewModel.ets 1.17 KB
import { SpConstants } from 'wdConstant/Index'
import { SPHelper, UserDataLocal } from 'wdKit/Index'
import { HttpUtils } from 'wdNetwork/Index'
import { LogoutModel } from '../model/LogoutModel'

export class LogoutViewModel{
  private logout:LogoutModel
  constructor() {
    this.logout = new LogoutModel()
  }
  requestLogout(){
    return new Promise<string>((success, fail) => {
      this.logout.requestLogout().then((data) => {
        LogoutViewModel.clearLoginInfo()
        success(data)
      }).catch((message: string) => {
        fail(message)
      })
    })
  }

  static clearLoginInfo() {
    SPHelper.default.saveSync(SpConstants.USER_FIRST_MARK, '')
    SPHelper.default.saveSync(SpConstants.USER_ID, '')
    SPHelper.default.saveSync(SpConstants.USER_JWT_TOKEN, '')
    SPHelper.default.saveSync(SpConstants.USER_LONG_TIME_NO_LOGIN_MARK, '')
    SPHelper.default.saveSync(SpConstants.USER_REFRESH_TOKEN, '')
    SPHelper.default.saveSync(SpConstants.USER_STATUS, '')
    SPHelper.default.saveSync(SpConstants.USER_Type, '')
    SPHelper.default.saveSync(SpConstants.USER_NAME, '')
    SPHelper.default.saveSync(SpConstants.USER_PHONE, '')
    UserDataLocal.clearUserData()
  }
}