PrivacySettingModel.ets 2.19 KB
import abilityAccessCtrl, { Permissions } from '@ohos.abilityAccessCtrl';
import HashMap from '@ohos.util.HashMap';
import { HttpUrlUtils, ResponseDTO } from 'wdNetwork';
import { Logger } from 'wdKit';
import { HttpRequest } from 'wdNetwork/src/main/ets/http/HttpRequest';
import EditInfoViewModel from '../viewmodel/EditInfoViewModel';
import { editModel } from './EditInfoModel';


@Observed
export class PrivacySettingModel{
  privacyName: string
  permission: boolean
  permissionKey: Permissions

  constructor(privacyName: string, permission: boolean, permissionKey: Permissions) {
    this.privacyName = privacyName;
    this.permission = permission;
    this.permissionKey = permissionKey;
  }



  queryUserDetail() {
    // EditInfoViewModel

    let bean: Record<string, string> = {};
    let headers: HashMap<string, string> = HttpUrlUtils.getCommonHeaders();
    return new Promise<editModel>((success, fail) => {
      HttpRequest.get<ResponseDTO<editModel>>(HttpUrlUtils.queryUserDetail(), headers).then((data: ResponseDTO<editModel>) => {
        if (!data || !data.data) {
          fail("数据为空")
          return
        }
        if (data.code != 0) {
          fail(data.message)
          return
        }
        this.permission = Boolean(data.data.userExtend.airec)
        console.log('this.permission',this.permission);
        success(data.data)
      }, (error: Error) => {
        fail(error.message)
        Logger.debug("LoginViewModel:error ", error.toString())
      })
    })
  }


  editUserDetail(airec:string) {
    let bean: Record<string, string> = {};
    bean['airec'] = airec;
    let headers: HashMap<string, string> = HttpUrlUtils.getCommonHeaders();
    return new Promise<string>((success, fail) => {
      HttpRequest.post<ResponseDTO<string>>(HttpUrlUtils.editUserDetail(), bean, headers).then((data: ResponseDTO<string>) => {
        if (!data || !data.data) {
          fail("数据为空")
          return
        }
        if (data.code != 0) {
          fail(data.message)
          return
        }
        success(data.data)
      }, (error: Error) => {
        fail(error.message)
        Logger.debug("LoginViewModel:error ", error.toString())
      })
    })
  }








}