Files
Regroup/lib/sidemenu/Community/MyCommunity/Model/ComDetailModel.dart
2024-08-23 17:40:43 +05:30

210 lines
6.3 KiB
Dart

class ComDetailModel {
ComDetailModel({
required this.status,
required this.statusCode,
required this.message,
required this.data,
});
final String? status;
final int? statusCode;
final String? message;
final Data? data;
factory ComDetailModel.fromJson(Map<String, dynamic> json){
return ComDetailModel(
status: json["status"],
statusCode: json["status_code"],
message: json["message"],
data: json["data"] == null ? null : Data.fromJson(json["data"]),
);
}
}
class Data {
Data({
required this.id,
required this.isCommunityPinned,
required this.totalGroup,
required this.totalAnnouncements,
required this.communityProfilePhoto,
required this.communityBannerImage,
required this.communityName,
required this.communityLocation,
required this.communityDescription,
required this.communityTypeXid,
required this.activityXid,
required this.userLinkInCommunity,
required this.accessType,
required this.activityData,
});
final int? id;
final bool? isCommunityPinned;
final int? totalGroup;
final int? totalAnnouncements;
final String? communityProfilePhoto;
final String? communityBannerImage;
final String? communityName;
final String? communityLocation;
final String? communityDescription;
final int? communityTypeXid;
final int? activityXid;
final UserLinkInCommunity? userLinkInCommunity;
final AccessType? accessType;
final ActivityData? activityData;
factory Data.fromJson(Map<String, dynamic> json){
return Data(
id: json["id"],
isCommunityPinned: json["is_community_pinned"],
totalGroup: json["total_group"],
totalAnnouncements: json["total_announcements"],
communityProfilePhoto: json["community_profile_photo"],
communityBannerImage: json["community_banner_image"],
communityName: json["community_name"],
communityLocation: json["community_location"],
communityDescription: json["community_description"],
communityTypeXid: json["community_type_xid"],
activityXid: json["activity_xid"],
userLinkInCommunity: json["user_link_in_community"] == null ? null : UserLinkInCommunity.fromJson(json["user_link_in_community"]),
accessType: json["access_type"] == null ? null : AccessType.fromJson(json["access_type"]),
activityData: json["activity_data"] == null ? null : ActivityData.fromJson(json["activity_data"]),
);
}
}
class AccessType {
AccessType({
required this.id,
required this.name,
});
final int? id;
final String? name;
factory AccessType.fromJson(Map<String, dynamic> json){
return AccessType(
id: json["id"],
name: json["name"],
);
}
}
class ActivityData {
ActivityData({
required this.id,
required this.title,
required this.description,
required this.image,
});
final int? id;
final String? title;
final String? description;
final String? image;
factory ActivityData.fromJson(Map<String, dynamic> json){
return ActivityData(
id: json["id"],
title: json["title"],
description: json["description"],
image: json["image"],
);
}
}
class UserLinkInCommunity {
UserLinkInCommunity({
required this.id,
required this.iamPrincipalXid,
required this.totalCommunityMember,
required this.fourMemberImages,
required this.manageCommunityXid,
required this.joinedAt,
required this.userTypeXid,
required this.isRequested,
required this.isMute,
});
final int? id;
final int? iamPrincipalXid;
final int? totalCommunityMember;
final List<FourMemberImage> fourMemberImages;
final int? manageCommunityXid;
final DateTime? joinedAt;
final AccessType? userTypeXid;
final int? isRequested;
final int? isMute;
factory UserLinkInCommunity.fromJson(Map<String, dynamic> json){
return UserLinkInCommunity(
id: json["id"],
iamPrincipalXid: json["iam_principal_xid"],
totalCommunityMember: json["total_community_member"],
fourMemberImages: json["four_member_images"] == null ? [] : List<FourMemberImage>.from(json["four_member_images"]!.map((x) => FourMemberImage.fromJson(x))),
manageCommunityXid: json["manage_community_xid"],
joinedAt: DateTime.tryParse(json["joined_at"] ?? ""),
userTypeXid: json["user_type_xid"] == null ? null : AccessType.fromJson(json["user_type_xid"]),
isRequested: json["is_requested"],
isMute: json["is_mute"],
);
}
}
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"],
);
}
}