getUserNickInTeam function

Future<String> getUserNickInTeam(
  1. String tId,
  2. String accId, {
  3. bool showAlias = true,
})

Implementation

Future<String> getUserNickInTeam(
  String tId,
  String accId, {
  bool showAlias = true,
}) async {
  var teamUserInfo = NIMChatCache.instance.getTeamMember(accId, tId);
  if (teamUserInfo != null) {
    return teamUserInfo.getName(needAlias: showAlias);
  } else {
    var teamMember = await NimCore.instance.teamService.getTeamMemberListByIds(
      tId,
      NIMTeamType.typeNormal,
      [accId],
    );
    var userInfo = await getIt<ContactProvider>().getContact(accId);
    if (showAlias && userInfo?.friend?.alias?.isNotEmpty == true) {
      return userInfo!.friend!.alias!;
    } else if (teamMember.data?.isNotEmpty == true &&
        teamMember.data?[0].teamNick?.isNotEmpty == true) {
      return teamMember.data![0].teamNick!;
    } else {
      return userInfo?.user.name?.isNotEmpty == true
          ? userInfo!.user.name!
          : accId;
    }
  }
}