class DashBoardModel { final String status; final bool isKycCompleted; final List serviceLists; final String userName; final String companyName; final int generalChatId; final List reviews; final ServiceRequestList serviceRequestLists; final List imageSlider; DashBoardModel({ required this.status, required this.isKycCompleted, required this.serviceLists, required this.userName, required this.companyName, required this.generalChatId, required this.imageSlider, required this.reviews, required this.serviceRequestLists, }); factory DashBoardModel.fromJson(Map json) { return DashBoardModel( status: json['status'] ?? '', isKycCompleted: json['is_kyc_completed'] ?? false, serviceLists: (json['service_lists'] as List?) ?.map((e) => ServiceList.fromJson(e)) .toList() ?? [], imageSlider: (json['imageSlider'] as List) .map((e) => ImageSlider.fromJson(e)) .toList(), userName: json['user_name'] ?? '', companyName: json['company_name'] ?? '', generalChatId: json['general_chat_id'] ?? 0, reviews: (json['reviews'] as List?) ?.map((e) => Review.fromJson(e)) .toList() ?? [], serviceRequestLists: ServiceRequestList.fromJson( json['service_request_lists'] ?? {}, ), ); } } // --------------------------------------------------------------- // SERVICE LIST MODEL // --------------------------------------------------------------- class ServiceList { final int id; final String service; final String icon; ServiceList({required this.id, required this.service, required this.icon}); factory ServiceList.fromJson(Map json) { return ServiceList( id: json['id'] ?? 0, service: json['service'] ?? '', icon: json['icon'] ?? '', ); } } class ImageSlider { final String image; ImageSlider({required this.image}); factory ImageSlider.fromJson(Map json) { return ImageSlider(image: json['image'] ?? ''); } } // --------------------------------------------------------------- // REVIEW MODEL // --------------------------------------------------------------- class Review { final int id; final String name; final String about; final String content; final int rating; Review({ required this.id, required this.name, required this.about, required this.content, required this.rating, }); factory Review.fromJson(Map json) { return Review( id: json['id'] ?? 0, name: json['name'] ?? '', about: json['about'] ?? '', content: json['content'] ?? '', rating: json['rating'] ?? 0, ); } } // --------------------------------------------------------------- // SERVICE REQUEST LIST WRAPPER // --------------------------------------------------------------- class ServiceRequestList { final String status; final int recordsTotal; final int recordsFiltered; final List data; ServiceRequestList({ required this.status, required this.recordsTotal, required this.recordsFiltered, required this.data, }); factory ServiceRequestList.fromJson(Map json) { return ServiceRequestList( status: json['status'] ?? '', recordsTotal: json['recordsTotal'] ?? 0, recordsFiltered: json['recordsFiltered'] ?? 0, data: (json['data'] as List?) ?.map((e) => ServiceRequestItem.fromJson(e)) .toList() ?? [], ); } } // --------------------------------------------------------------- // SERVICE REQUEST ITEM // --------------------------------------------------------------- class ServiceRequestItem { final int id; final String name; final String logo; final String email; final String mobile; final String paymentStatus; final num paymentAmount; final String status; final String service; final String message; final String createdDate; final String createdTime; final int actions; final int? chatId; ServiceRequestItem({ required this.id, required this.name, required this.logo, required this.email, required this.mobile, required this.paymentStatus, required this.paymentAmount, required this.status, required this.service, required this.message, required this.createdDate, required this.createdTime, required this.actions, required this.chatId, }); factory ServiceRequestItem.fromJson(Map json) { return ServiceRequestItem( id: json['id'] ?? 0, name: json['name'] ?? '', logo: json['logo'] ?? '', email: json['email'] ?? '', mobile: json['mobile'] ?? '', paymentStatus: json['payment_status'] ?? '', paymentAmount: json['payment_amount'] ?? 0, status: json['status'] ?? '', service: json['service'] ?? '', message: json['message'] ?? '', createdDate: json['created_date'] ?? '', createdTime: json['created_time'] ?? '', actions: json['actions'] ?? 0, chatId: json['chat_id'], ); } }