V2TimGroupInfo.fromJson constructor

V2TimGroupInfo.fromJson(
  1. Map json
)

Implementation

V2TimGroupInfo.fromJson(Map json) {
  json = Utils.formatJson(json);
  approveOpt = EnumUtils.cGroupAddOption2DartEnum(json["group_detail_info_approve_option"]).index;
  groupID = json['group_detail_info_group_id'] ?? '';
  groupType = GroupType.convertGroupTypeEnum(json['group_detail_info_group_type'] ?? 0);
  groupName = json['group_detail_info_group_name'];
  notification = json['group_detail_info_notification'];
  introduction = json['group_detail_info_introduction'];
  faceUrl = json['group_detail_info_face_url'];
  isAllMuted = json['group_detail_info_is_shutup_all'];
  owner = json['group_detail_info_owner_identifier'];

  createTime = json['group_detail_info_create_time'];
  groupAddOpt = EnumUtils.cGroupAddOption2DartEnum(json['group_detail_info_add_option']).index;
  lastInfoTime = json['group_detail_info_last_info_time'];
  lastMessageTime = json['group_detail_info_last_msg_time'];
  memberCount = json['group_detail_info_member_num'];
  onlineCount = json['group_detail_info_online_member_num'];
  isSupportTopic = json["group_detail_info_is_support_topic"];
  isEnablePermissionGroup = json["group_detail_info_enable_permission_group"] ?? false;

  Map<String, dynamic> jsonGroupSelfInfo = json["group_base_info_self_info"];
  role = jsonGroupSelfInfo['group_self_info_role'];
  joinTime = jsonGroupSelfInfo['group_self_info_join_time'];
  unreadMsgCount = jsonGroupSelfInfo['group_self_info_unread_num'];
  recvOpt = jsonGroupSelfInfo['group_self_info_msg_flag'];

  var jsonCustomInfo = List<Map<String, dynamic>>.from(json["group_detail_info_custom_info"] ?? []);
  if (jsonCustomInfo.isNotEmpty) {
    customInfo = Tools.jsonList2Map<String>(jsonCustomInfo, 'group_info_custom_string_info_key', 'group_info_custom_string_info_value');
  }

  memberMaxCount = json['group_detail_info_max_member_num'] ?? 0;
  defaultPermissions = json['group_detail_info_default_permissions'] ?? 0;
  isVisible = json['group_modify_info_param_visible'];
  isSearchable = json['group_modify_info_param_searchable'];
}