parent
642cc61a2e
commit
a9f2e267cf
@ -1,381 +0,0 @@ |
|||||||
/// 部门信息 |
|
||||||
class DeptInfo { |
|
||||||
/// 部门id |
|
||||||
String? departmentID; |
|
||||||
|
|
||||||
/// 头像 |
|
||||||
String? faceURL; |
|
||||||
|
|
||||||
/// 显示名 |
|
||||||
String? name; |
|
||||||
|
|
||||||
/// 上一级部门id |
|
||||||
String? parentID; |
|
||||||
|
|
||||||
/// 排序方式 |
|
||||||
int? order; |
|
||||||
|
|
||||||
/// 部门类型 |
|
||||||
int? departmentType; |
|
||||||
|
|
||||||
/// 创建时间 |
|
||||||
int? createTime; |
|
||||||
|
|
||||||
/// 子部门数量 |
|
||||||
int? subDepartmentNum; |
|
||||||
|
|
||||||
/// 成员数量 |
|
||||||
int? memberNum; |
|
||||||
|
|
||||||
/// 扩展字段 |
|
||||||
String? ex; |
|
||||||
|
|
||||||
/// 附加信息 |
|
||||||
String? attachedInfo; |
|
||||||
|
|
||||||
String? relatedGroupID; |
|
||||||
|
|
||||||
DeptInfo( |
|
||||||
{this.departmentID, |
|
||||||
this.faceURL, |
|
||||||
this.name, |
|
||||||
this.parentID, |
|
||||||
this.order, |
|
||||||
this.departmentType, |
|
||||||
this.createTime, |
|
||||||
this.subDepartmentNum, |
|
||||||
this.memberNum, |
|
||||||
this.ex, |
|
||||||
this.attachedInfo, |
|
||||||
this.relatedGroupID}); |
|
||||||
|
|
||||||
DeptInfo.fromJson(Map<String, dynamic> json) { |
|
||||||
departmentID = json['departmentID']; |
|
||||||
faceURL = json['faceURL']; |
|
||||||
name = json['name']; |
|
||||||
parentID = json['parentID']; |
|
||||||
order = json['order']; |
|
||||||
departmentType = json['departmentType']; |
|
||||||
createTime = json['createTime']; |
|
||||||
subDepartmentNum = json['subDepartmentNum']; |
|
||||||
memberNum = json['memberNum']; |
|
||||||
ex = json['ex']; |
|
||||||
attachedInfo = json['attachedInfo']; |
|
||||||
relatedGroupID = json['relatedGroupID']; |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
data['departmentID'] = this.departmentID; |
|
||||||
data['faceURL'] = this.faceURL; |
|
||||||
data['name'] = this.name; |
|
||||||
data['parentID'] = this.parentID; |
|
||||||
data['order'] = this.order; |
|
||||||
data['departmentType'] = this.departmentType; |
|
||||||
data['createTime'] = this.createTime; |
|
||||||
data['subDepartmentNum'] = this.subDepartmentNum; |
|
||||||
data['memberNum'] = this.memberNum; |
|
||||||
data['ex'] = this.ex; |
|
||||||
data['attachedInfo'] = this.attachedInfo; |
|
||||||
data['relatedGroupID'] = this.relatedGroupID; |
|
||||||
return data; |
|
||||||
} |
|
||||||
|
|
||||||
@override |
|
||||||
bool operator ==(Object other) => |
|
||||||
identical(this, other) || |
|
||||||
other is DeptInfo && |
|
||||||
runtimeType == other.runtimeType && |
|
||||||
departmentID == other.departmentID; |
|
||||||
|
|
||||||
@override |
|
||||||
int get hashCode => departmentID.hashCode; |
|
||||||
} |
|
||||||
|
|
||||||
/// 部门成员信息 |
|
||||||
class DeptMemberInfo { |
|
||||||
/// 用户id |
|
||||||
String? userID; |
|
||||||
|
|
||||||
/// 用户昵称 |
|
||||||
String? nickname; |
|
||||||
|
|
||||||
/// 英文名 |
|
||||||
String? englishName; |
|
||||||
|
|
||||||
/// 头像 |
|
||||||
String? faceURL; |
|
||||||
|
|
||||||
/// 性别 |
|
||||||
int? gender; |
|
||||||
|
|
||||||
/// 手机号 |
|
||||||
String? mobile; |
|
||||||
|
|
||||||
/// 座机 |
|
||||||
String? telephone; |
|
||||||
|
|
||||||
/// 出生时间 |
|
||||||
int? birth; |
|
||||||
|
|
||||||
/// 邮箱 |
|
||||||
String? email; |
|
||||||
|
|
||||||
/// 所在部门的id |
|
||||||
String? departmentID; |
|
||||||
|
|
||||||
/// 排序方式 |
|
||||||
int? order; |
|
||||||
|
|
||||||
/// 职位 |
|
||||||
String? position; |
|
||||||
|
|
||||||
/// 是否是领导 |
|
||||||
int? leader; |
|
||||||
|
|
||||||
/// 状态 |
|
||||||
int? status; |
|
||||||
|
|
||||||
/// 创建时间 |
|
||||||
int? createTime; |
|
||||||
|
|
||||||
/// 入职时间 |
|
||||||
int? entryTime; |
|
||||||
|
|
||||||
/// 离职时间 |
|
||||||
int? terminationTime; |
|
||||||
|
|
||||||
/// 扩展字段 |
|
||||||
String? ex; |
|
||||||
|
|
||||||
/// 附加信息 |
|
||||||
String? attachedInfo; |
|
||||||
|
|
||||||
/// 搜索时使用 |
|
||||||
String? departmentName; |
|
||||||
|
|
||||||
/// 所在部门的所有上级部门 |
|
||||||
List<DeptInfo>? parentDepartmentList; |
|
||||||
|
|
||||||
/// 当前部门信息 |
|
||||||
DeptInfo? department; |
|
||||||
|
|
||||||
DeptMemberInfo({ |
|
||||||
this.userID, |
|
||||||
this.nickname, |
|
||||||
this.englishName, |
|
||||||
this.faceURL, |
|
||||||
this.gender, |
|
||||||
this.mobile, |
|
||||||
this.telephone, |
|
||||||
this.birth, |
|
||||||
this.email, |
|
||||||
this.departmentID, |
|
||||||
this.order, |
|
||||||
this.position, |
|
||||||
this.leader, |
|
||||||
this.status, |
|
||||||
this.createTime, |
|
||||||
this.ex, |
|
||||||
this.attachedInfo, |
|
||||||
this.departmentName, |
|
||||||
this.parentDepartmentList, |
|
||||||
this.department, |
|
||||||
}); |
|
||||||
|
|
||||||
DeptMemberInfo.fromJson(Map<String, dynamic> json) { |
|
||||||
userID = json['userID']; |
|
||||||
nickname = json['nickname']; |
|
||||||
englishName = json['englishName']; |
|
||||||
faceURL = json['faceURL']; |
|
||||||
gender = json['gender']; |
|
||||||
mobile = json['mobile']; |
|
||||||
telephone = json['telephone']; |
|
||||||
birth = json['birth']; |
|
||||||
email = json['email']; |
|
||||||
departmentID = json['departmentID']; |
|
||||||
order = json['order']; |
|
||||||
position = json['position']; |
|
||||||
leader = json['leader']; |
|
||||||
status = json['status']; |
|
||||||
createTime = json['createTime']; |
|
||||||
ex = json['ex']; |
|
||||||
attachedInfo = json['attachedInfo']; |
|
||||||
departmentName = json['departmentName']; |
|
||||||
if (json['parentDepartmentList'] != null) { |
|
||||||
parentDepartmentList = <DeptInfo>[]; |
|
||||||
json['parentDepartmentList'].forEach((v) { |
|
||||||
parentDepartmentList!.add(DeptInfo.fromJson(v)); |
|
||||||
}); |
|
||||||
} |
|
||||||
department = json['department'] == null |
|
||||||
? null |
|
||||||
: DeptInfo.fromJson(json['department']); |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final Map<String, dynamic> data = new Map<String, dynamic>(); |
|
||||||
data['userID'] = this.userID; |
|
||||||
data['nickname'] = this.nickname; |
|
||||||
data['englishName'] = this.englishName; |
|
||||||
data['faceURL'] = this.faceURL; |
|
||||||
data['gender'] = this.gender; |
|
||||||
data['mobile'] = this.mobile; |
|
||||||
data['telephone'] = this.telephone; |
|
||||||
data['birth'] = this.birth; |
|
||||||
data['email'] = this.email; |
|
||||||
data['departmentID'] = this.departmentID; |
|
||||||
data['order'] = this.order; |
|
||||||
data['position'] = this.position; |
|
||||||
data['leader'] = this.leader; |
|
||||||
data['status'] = this.status; |
|
||||||
data['createTime'] = this.createTime; |
|
||||||
data['ex'] = this.ex; |
|
||||||
data['attachedInfo'] = this.attachedInfo; |
|
||||||
data['departmentName'] = this.departmentName; |
|
||||||
if (this.parentDepartmentList != null) { |
|
||||||
data['parentDepartmentList'] = |
|
||||||
this.parentDepartmentList!.map((v) => v.toJson()).toList(); |
|
||||||
} |
|
||||||
data['department'] = this.department?.toJson(); |
|
||||||
return data; |
|
||||||
} |
|
||||||
|
|
||||||
@override |
|
||||||
bool operator ==(Object other) => |
|
||||||
identical(this, other) || |
|
||||||
other is DeptMemberInfo && |
|
||||||
runtimeType == other.runtimeType && |
|
||||||
userID == other.userID; |
|
||||||
|
|
||||||
@override |
|
||||||
int get hashCode => userID.hashCode; |
|
||||||
} |
|
||||||
|
|
||||||
/// 用户所在的部门 |
|
||||||
class UserInDept { |
|
||||||
/// 部门信息 |
|
||||||
DeptInfo? department; |
|
||||||
|
|
||||||
/// 所在部门自己的信息 |
|
||||||
DeptMemberInfo? member; |
|
||||||
|
|
||||||
UserInDept({this.department, this.member}); |
|
||||||
|
|
||||||
UserInDept.fromJson(Map<String, dynamic> json) { |
|
||||||
department = json['department'] != null |
|
||||||
? DeptInfo.fromJson(json['department']) |
|
||||||
: null; |
|
||||||
member = |
|
||||||
json['member'] != null ? DeptMemberInfo.fromJson(json['member']) : null; |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
if (this.department != null) { |
|
||||||
data['department'] = this.department!.toJson(); |
|
||||||
} |
|
||||||
if (this.member != null) { |
|
||||||
data['member'] = this.member!.toJson(); |
|
||||||
} |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/// 部门下的一级子部门跟员工 |
|
||||||
class DeptMemberAndSubDept { |
|
||||||
/// 一级子部门 |
|
||||||
List<DeptInfo>? departmentList; |
|
||||||
|
|
||||||
/// 一级成员 |
|
||||||
List<DeptMemberInfo>? departmentMemberList; |
|
||||||
|
|
||||||
/// 当前部门的所有上一级部门 |
|
||||||
List<DeptInfo>? parentDepartmentList; |
|
||||||
|
|
||||||
DeptMemberAndSubDept({ |
|
||||||
this.departmentList, |
|
||||||
this.departmentMemberList, |
|
||||||
this.parentDepartmentList, |
|
||||||
}); |
|
||||||
|
|
||||||
DeptMemberAndSubDept.fromJson(Map<String, dynamic> json) { |
|
||||||
if (json['departmentList'] != null) { |
|
||||||
departmentList = <DeptInfo>[]; |
|
||||||
json['departmentList'].forEach((v) { |
|
||||||
departmentList!.add(DeptInfo.fromJson(v)); |
|
||||||
}); |
|
||||||
} |
|
||||||
if (json['departmentMemberList'] != null) { |
|
||||||
departmentMemberList = <DeptMemberInfo>[]; |
|
||||||
json['departmentMemberList'].forEach((v) { |
|
||||||
departmentMemberList!.add(DeptMemberInfo.fromJson(v)); |
|
||||||
}); |
|
||||||
} |
|
||||||
if (json['parentDepartmentList'] != null) { |
|
||||||
parentDepartmentList = <DeptInfo>[]; |
|
||||||
json['parentDepartmentList'].forEach((v) { |
|
||||||
parentDepartmentList!.add(DeptInfo.fromJson(v)); |
|
||||||
}); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
if (this.departmentList != null) { |
|
||||||
data['departmentList'] = |
|
||||||
this.departmentList!.map((v) => v.toJson()).toList(); |
|
||||||
} |
|
||||||
if (this.departmentMemberList != null) { |
|
||||||
data['departmentMemberList'] = |
|
||||||
this.departmentMemberList!.map((v) => v.toJson()).toList(); |
|
||||||
} |
|
||||||
if (this.parentDepartmentList != null) { |
|
||||||
data['parentDepartmentList'] = |
|
||||||
this.parentDepartmentList!.map((v) => v.toJson()).toList(); |
|
||||||
} |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/// 搜索结果 |
|
||||||
class OrganizationSearchResult { |
|
||||||
/// 部门列表 |
|
||||||
List<DeptInfo>? departmentList; |
|
||||||
|
|
||||||
/// 部门成员列表 |
|
||||||
List<DeptMemberInfo>? departmentMemberList; |
|
||||||
|
|
||||||
OrganizationSearchResult({ |
|
||||||
this.departmentList, |
|
||||||
this.departmentMemberList, |
|
||||||
}); |
|
||||||
|
|
||||||
OrganizationSearchResult.fromJson(Map<String, dynamic> json) { |
|
||||||
if (json['departmentList'] != null) { |
|
||||||
departmentList = <DeptInfo>[]; |
|
||||||
json['departmentList'].forEach((v) { |
|
||||||
departmentList!.add(DeptInfo.fromJson(v)); |
|
||||||
}); |
|
||||||
} |
|
||||||
if (json['departmentMemberList'] != null) { |
|
||||||
departmentMemberList = <DeptMemberInfo>[]; |
|
||||||
json['departmentMemberList'].forEach((v) { |
|
||||||
departmentMemberList!.add(DeptMemberInfo.fromJson(v)); |
|
||||||
}); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
if (this.departmentList != null) { |
|
||||||
data['departmentList'] = |
|
||||||
this.departmentList!.map((v) => v.toJson()).toList(); |
|
||||||
} |
|
||||||
if (this.departmentMemberList != null) { |
|
||||||
data['departmentMemberList'] = |
|
||||||
this.departmentMemberList!.map((v) => v.toJson()).toList(); |
|
||||||
} |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
@ -1,245 +0,0 @@ |
|||||||
import 'dart:io'; |
|
||||||
|
|
||||||
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart'; |
|
||||||
|
|
||||||
class SignalingInfo { |
|
||||||
/// 操作者 |
|
||||||
String? userID; |
|
||||||
|
|
||||||
/// 邀请信息 |
|
||||||
InvitationInfo? invitation; |
|
||||||
|
|
||||||
/// 离线显示内容 |
|
||||||
OfflinePushInfo? offlinePushInfo; |
|
||||||
|
|
||||||
SignalingInfo({ |
|
||||||
this.userID, |
|
||||||
this.invitation, |
|
||||||
this.offlinePushInfo, |
|
||||||
}); |
|
||||||
|
|
||||||
SignalingInfo.fromJson(Map<String, dynamic> json) { |
|
||||||
invitation = json['invitation'] == null |
|
||||||
? null |
|
||||||
: InvitationInfo.fromJson(json['invitation']); |
|
||||||
offlinePushInfo = json['offlinePushInfo'] == null |
|
||||||
? null |
|
||||||
: OfflinePushInfo.fromJson(json['offlinePushInfo']); |
|
||||||
userID = json['userID'] ?? invitation?.inviterUserID; |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
data['userID'] = this.userID; |
|
||||||
data['invitation'] = this.invitation?.toJson(); |
|
||||||
data['offlinePushInfo'] = this.offlinePushInfo?.toJson(); |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
class InvitationInfo { |
|
||||||
/// 邀请者UserID |
|
||||||
String? inviterUserID; |
|
||||||
|
|
||||||
/// 被邀请者UserID列表,如果是单聊只有一个元素 |
|
||||||
List<String>? inviteeUserIDList; |
|
||||||
|
|
||||||
/// 如果是单聊,为"" |
|
||||||
String? groupID; |
|
||||||
|
|
||||||
/// 房间ID,必须唯一,可以不设置。 |
|
||||||
String? roomID; |
|
||||||
|
|
||||||
/// 邀请超时时间(秒) |
|
||||||
int? timeout; |
|
||||||
|
|
||||||
/// 发起时间 |
|
||||||
int? initiateTime; |
|
||||||
|
|
||||||
/// video 或者 audio |
|
||||||
String? mediaType; |
|
||||||
|
|
||||||
/// [ConversationType]1为单聊,2为群聊 |
|
||||||
int? sessionType; |
|
||||||
|
|
||||||
/// 平台[Platform] |
|
||||||
int? platformID; |
|
||||||
|
|
||||||
InvitationInfo( |
|
||||||
{this.inviterUserID, |
|
||||||
this.inviteeUserIDList, |
|
||||||
this.groupID, |
|
||||||
this.roomID, |
|
||||||
this.timeout, |
|
||||||
this.initiateTime, |
|
||||||
this.mediaType, |
|
||||||
this.sessionType, |
|
||||||
this.platformID}); |
|
||||||
|
|
||||||
InvitationInfo.fromJson(Map<String, dynamic> json) { |
|
||||||
inviterUserID = json['inviterUserID']; |
|
||||||
inviteeUserIDList = json['inviteeUserIDList']?.cast<String>(); |
|
||||||
groupID = json['groupID']; |
|
||||||
roomID = json['roomID']; |
|
||||||
timeout = json['timeout']; |
|
||||||
initiateTime = json['initiateTime']; |
|
||||||
mediaType = json['mediaType']; |
|
||||||
sessionType = json['sessionType']; |
|
||||||
platformID = json['platformID']; |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
data['inviterUserID'] = this.inviterUserID; |
|
||||||
data['inviteeUserIDList'] = this.inviteeUserIDList; |
|
||||||
data['groupID'] = this.groupID; |
|
||||||
data['roomID'] = this.roomID; |
|
||||||
data['timeout'] = this.timeout; |
|
||||||
data['initiateTime'] = this.initiateTime; |
|
||||||
data['mediaType'] = this.mediaType; |
|
||||||
data['sessionType'] = this.sessionType; |
|
||||||
data['platformID'] = this.platformID; |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/// 信令凭证 |
|
||||||
class SignalingCertificate { |
|
||||||
/// 登录token |
|
||||||
String? token; |
|
||||||
|
|
||||||
/// 房间id |
|
||||||
String? roomID; |
|
||||||
|
|
||||||
/// 服务器地址 |
|
||||||
String? liveURL; |
|
||||||
|
|
||||||
/// 占线列表 |
|
||||||
List<String>? busyLineUserIDList; |
|
||||||
|
|
||||||
SignalingCertificate({ |
|
||||||
this.token, |
|
||||||
this.roomID, |
|
||||||
this.liveURL, |
|
||||||
this.busyLineUserIDList, |
|
||||||
}); |
|
||||||
|
|
||||||
SignalingCertificate.fromJson(Map<String, dynamic> json) { |
|
||||||
token = json['token']; |
|
||||||
roomID = json['roomID']; |
|
||||||
liveURL = json['liveURL']; |
|
||||||
busyLineUserIDList = null == json['busyLineUserIDList'] |
|
||||||
? null |
|
||||||
: json['busyLineUserIDList'].cast<String>(); |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
data['token'] = this.token; |
|
||||||
data['roomID'] = this.roomID; |
|
||||||
data['liveURL'] = this.liveURL; |
|
||||||
data['busyLineUserIDList'] = this.busyLineUserIDList; |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
class RoomCallingInfo { |
|
||||||
InvitationInfo? invitation; |
|
||||||
List<Participant>? participant; |
|
||||||
String? roomID; |
|
||||||
String? token; |
|
||||||
String? liveURL; |
|
||||||
String? groupID; |
|
||||||
|
|
||||||
RoomCallingInfo({ |
|
||||||
this.invitation, |
|
||||||
this.participant, |
|
||||||
this.roomID, |
|
||||||
this.token, |
|
||||||
this.liveURL, |
|
||||||
this.groupID, |
|
||||||
}); |
|
||||||
|
|
||||||
RoomCallingInfo.fromJson(Map<String, dynamic> json) { |
|
||||||
invitation = json['invitation'] != null |
|
||||||
? InvitationInfo.fromJson(json['invitation']) |
|
||||||
: null; |
|
||||||
if (json['participant'] != null) { |
|
||||||
participant = <Participant>[]; |
|
||||||
json['participant'].forEach((v) { |
|
||||||
participant!.add(Participant.fromJson(v)); |
|
||||||
}); |
|
||||||
} |
|
||||||
roomID = json['roomID'] ?? invitation?.roomID; |
|
||||||
token = json['token']; |
|
||||||
liveURL = json['liveURL']; |
|
||||||
groupID = json['groupID']; |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
if (this.invitation != null) { |
|
||||||
data['invitation'] = this.invitation!.toJson(); |
|
||||||
} |
|
||||||
if (this.participant != null) { |
|
||||||
data['participant'] = this.participant!.map((v) => v.toJson()).toList(); |
|
||||||
} |
|
||||||
data['roomID'] = this.roomID; |
|
||||||
data['token'] = this.token; |
|
||||||
data['liveURL'] = this.liveURL; |
|
||||||
data['groupID'] = this.groupID; |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
class Participant { |
|
||||||
GroupInfo? groupInfo; |
|
||||||
GroupMembersInfo? groupMemberInfo; |
|
||||||
UserInfo? userInfo; |
|
||||||
|
|
||||||
Participant({this.groupInfo, this.groupMemberInfo, this.userInfo}); |
|
||||||
|
|
||||||
Participant.fromJson(Map<String, dynamic> json) { |
|
||||||
groupInfo = json['groupInfo'] != null |
|
||||||
? GroupInfo.fromJson(json['groupInfo']) |
|
||||||
: null; |
|
||||||
groupMemberInfo = json['groupMemberInfo'] != null |
|
||||||
? GroupMembersInfo.fromJson(json['groupMemberInfo']) |
|
||||||
: null; |
|
||||||
userInfo = |
|
||||||
json['userInfo'] != null ? UserInfo.fromJson(json['userInfo']) : null; |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
if (this.groupInfo != null) { |
|
||||||
data['groupInfo'] = this.groupInfo!.toJson(); |
|
||||||
} |
|
||||||
if (this.groupMemberInfo != null) { |
|
||||||
data['groupMemberInfo'] = this.groupMemberInfo!.toJson(); |
|
||||||
} |
|
||||||
if (this.userInfo != null) { |
|
||||||
data['userInfo'] = this.userInfo!.toJson(); |
|
||||||
} |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
class CustomSignaling { |
|
||||||
String? roomID; |
|
||||||
String? customInfo; |
|
||||||
|
|
||||||
CustomSignaling({this.roomID, this.customInfo}); |
|
||||||
|
|
||||||
CustomSignaling.fromJson(Map<String, dynamic> json) { |
|
||||||
roomID = json['roomID']; |
|
||||||
customInfo = json['customInfo']; |
|
||||||
} |
|
||||||
|
|
||||||
Map<String, dynamic> toJson() { |
|
||||||
final data = Map<String, dynamic>(); |
|
||||||
data['roomID'] = roomID; |
|
||||||
data['customInfo'] = customInfo; |
|
||||||
return data; |
|
||||||
} |
|
||||||
} |
|
Loading…
Reference in new issue