sortList function

void sortList(
  1. List<UserInfoWithTeam>? memberList
)

特定规则排序群成员 群主>管理员>普通成员 加入时间早的在前面

Implementation

void sortList(List<UserInfoWithTeam>? memberList) {
  memberList?.sort((a, b) {
    if (a.teamInfo.type == TeamMemberType.owner) {
      return -1;
    } else if (b.teamInfo.type == TeamMemberType.owner) {
      return 1;
    } else if (a.teamInfo.type == TeamMemberType.manager &&
        b.teamInfo.type != TeamMemberType.manager) {
      return -1;
    } else if (a.teamInfo.type != TeamMemberType.manager &&
        b.teamInfo.type == TeamMemberType.manager) {
      return 1;
    } else if (a.teamInfo.joinTime == 0) {
      return 1;
    } else if (b.teamInfo.joinTime == 0) {
      return -1;
    }
    return a.teamInfo.joinTime - b.teamInfo.joinTime;
  });
}