Files
Regroup/lib/sidemenu/Model/MyCommunityModel.dart
2024-08-22 19:26:18 +05:30

169 lines
4.6 KiB
Dart

class MyCommunityModel {
MyCommunityModel({
required this.status,
required this.statusCode,
required this.message,
required this.data,
});
final String? status;
final int? statusCode;
final String? message;
final List<Datum> data;
factory MyCommunityModel.fromJson(Map<String, dynamic> json) {
return MyCommunityModel(
status: json["status"],
statusCode: json["status_code"],
message: json["message"],
data: json["data"] == null
? []
: List<Datum>.from(json["data"]!.map((x) => Datum.fromJson(x))),
);
}
}
class Datum {
Datum({
required this.totalCommunityMember,
required this.fourMemberImages,
required this.iamPrincipalXid,
required this.manageCommunityXid,
required this.joinedAt,
required this.userTypeXid,
required this.isMute,
required this.joinedAndRequestedCommunity,
});
final int? totalCommunityMember;
final List<FourMemberImage> fourMemberImages;
final int? iamPrincipalXid;
final int? manageCommunityXid;
final DateTime? joinedAt;
final UserTypeXid? userTypeXid;
final int? isMute;
final JoinedAndRequestedCommunity? joinedAndRequestedCommunity;
factory Datum.fromJson(Map<String, dynamic> json) {
return Datum(
totalCommunityMember: json["total_community_member"],
fourMemberImages: json["four_member_images"] == null
? []
: List<FourMemberImage>.from(json["four_member_images"]!
.map((x) => FourMemberImage.fromJson(x))),
iamPrincipalXid: json["iam_principal_xid"],
manageCommunityXid: json["manage_community_xid"],
joinedAt: DateTime.tryParse(json["joined_at"] ?? ""),
userTypeXid: json["user_type_xid"] == null
? null
: UserTypeXid.fromJson(json["user_type_xid"]),
isMute: json["is_mute"],
joinedAndRequestedCommunity:
json["joined_and_requested_community"] == null
? null
: JoinedAndRequestedCommunity.fromJson(
json["joined_and_requested_community"]),
);
}
}
class FourMemberImage {
FourMemberImage({
required this.iamPrincipalXid,
required this.manageCommunityXid,
required this.iamPrincipal,
});
final int? iamPrincipalXid;
final int? manageCommunityXid;
final IamPrincipal? iamPrincipal;
factory FourMemberImage.fromJson(Map<String, dynamic> json) {
return FourMemberImage(
iamPrincipalXid: json["iam_principal_xid"],
manageCommunityXid: json["manage_community_xid"],
iamPrincipal: json["iam_principal"] == null
? null
: IamPrincipal.fromJson(json["iam_principal"]),
);
}
}
class IamPrincipal {
IamPrincipal({
required this.id,
required this.principalTypeXid,
required this.userName,
required this.fullName,
required this.profilePhoto,
required this.isUserPinned,
});
final int? id;
final int? principalTypeXid;
final String? userName;
final String? fullName;
final String? profilePhoto;
final bool? isUserPinned;
factory IamPrincipal.fromJson(Map<String, dynamic> json) {
return IamPrincipal(
id: json["id"],
principalTypeXid: json["principal_type_xid"],
userName: json["user_name"],
fullName: json["full_name"],
profilePhoto: json["profile_photo"],
isUserPinned: json["is_user_pinned"],
);
}
}
class JoinedAndRequestedCommunity {
JoinedAndRequestedCommunity({
required this.id,
required this.communityProfilePhoto,
required this.communityBannerImage,
required this.communityName,
required this.totalGroup,
required this.totalAnnouncements,
required this.isCommunityPinned,
});
final int? id;
final String? communityProfilePhoto;
final String? communityBannerImage;
final String? communityName;
final int? totalGroup;
final int? totalAnnouncements;
final bool? isCommunityPinned;
factory JoinedAndRequestedCommunity.fromJson(Map<String, dynamic> json) {
return JoinedAndRequestedCommunity(
id: json["id"],
communityProfilePhoto: json["community_profile_photo"],
communityBannerImage: json["community_banner_image"],
communityName: json["community_name"],
totalGroup: json["total_group"],
totalAnnouncements: json["total_announcements"],
isCommunityPinned: json["is_community_pinned"],
);
}
}
class UserTypeXid {
UserTypeXid({
required this.id,
required this.name,
});
final int? id;
final String? name;
factory UserTypeXid.fromJson(Map<String, dynamic> json) {
return UserTypeXid(
id: json["id"],
name: json["name"],
);
}
}