waitshipState property

NetClientAzState waitshipState

读取好友申请状态

Implementation

NetClientAzState get waitshipState {
  if (_dirtyWaitshipState) {
    //构建列表
    final okList = <Object>[];
    _waitshipMap.forEach((key, value) {
      okList.add(value);
      //计算展示信息
      final target = getUser(value.uid);
      value.displayNick = ComTools.formatUserNick(target);
      value.displayIcon = target.icon;
      value.displayHead = target.head;
    });
    //按发起申请时间降序排列
    okList.sort((a, b) => (a as UserShip).time > (b as UserShip).time ? -1 : 1);
    //最后插入数量
    okList.add(_waitshipMap.length);
    //更新状态
    _waitshipState.update(okList: okList, unread: _waitshipMap.length);
    _dirtyWaitshipState = false;
  }
  return _waitshipState;
}