fillUserInfo static method

dynamic fillUserInfo()

填充用户信息 该方法用于在调试时异步加载和设置当前用户的详细信息 它首先检查当前用户的主要部门,然后从EcpGlobalApi获取用户的所有信息,并更新运行时环境

Implementation

static fillUserInfo() async {
  // 模拟异步加载过程
  await Future.delayed(const Duration(seconds: 1));

  // 获取当前用户的主要部门,并设置为运行时部门
  var dept = RuntimeUtils.currentUser?.mainDept;
  if (dept != null) {
    RuntimeUtils.setRuntimeDepartment(dept);
  }

  // 从EcpGlobalApi获取用户所有信息,并更新运行时实体
  var allUserInfo = await EcpGlobalApi.getUserAllInfo();
  if (allUserInfo != null) {
    var token = RuntimeUtils.currentUser?.token;
    allUserInfo.token = token;
    RuntimeUtils.setRuntimeEntity(allUserInfo);

    // 再次检查主要部门,并设置为运行时部门
    var dept = allUserInfo.mainDept;
    if (dept != null) {
      RuntimeUtils.setRuntimeDepartment(dept);
    }
  }

  // 获取当前接口信息,可能用于调试目的
  await EcpGlobalApi.getCurrentInterfaces();
}