Files
Fondex-Driver/lib/models/subscription_plan_model.dart
2025-12-08 23:25:00 +05:00

107 lines
2.6 KiB
Dart

import 'package:cloud_firestore/cloud_firestore.dart';
class SubscriptionPlanModel {
Timestamp? createdAt;
String? description;
String? expiryDay;
Features? features;
String? id;
bool? isEnable;
String? itemLimit;
String? orderLimit;
String? name;
String? price;
String? place;
String? image;
String? type;
List<String>? planPoints;
SubscriptionPlanModel(
{this.createdAt,
this.description,
this.expiryDay,
this.features,
this.id,
this.isEnable,
this.itemLimit,
this.orderLimit,
this.name,
this.price,
this.place,
this.image,
this.type,
this.planPoints});
factory SubscriptionPlanModel.fromJson(Map<String, dynamic> json) {
return SubscriptionPlanModel(
createdAt: json['createdAt'],
description: json['description'],
expiryDay: json['expiryDay'],
features: json['features'] == null ? null : Features.fromJson(json['features']),
id: json['id'],
isEnable: json['isEnable'],
itemLimit: json['itemLimit'],
orderLimit: json['orderLimit'],
name: json['name'],
price: json['price'],
place: json['place'],
image: json['image'],
type: json['type'],
planPoints: json['plan_points'] == null ? [] : List<String>.from(json['plan_points']),
);
}
Map<String, dynamic> toJson() {
return {
'createdAt': createdAt,
'description': description,
'expiryDay': expiryDay.toString(),
'features': features?.toJson(),
'id': id,
'isEnable': isEnable,
'itemLimit': itemLimit.toString(),
'orderLimit': orderLimit.toString(),
'name': name,
'price': price.toString(),
'place': place.toString(),
'image': image.toString(),
'type': type,
'plan_points': planPoints
};
}
}
class Features {
bool? chat;
bool? dineIn;
bool? qrCodeGenerate;
bool? restaurantMobileApp;
Features({
this.chat,
this.dineIn,
this.qrCodeGenerate,
this.restaurantMobileApp,
});
// Factory constructor to create an instance from JSON
factory Features.fromJson(Map<String, dynamic> json) {
return Features(
chat: json['chat'] ?? false,
dineIn: json['dineIn'] ?? false,
qrCodeGenerate: json['qrCodeGenerate'] ?? false,
restaurantMobileApp: json['restaurantMobileApp'] ?? false,
);
}
// Method to convert an instance to JSON
Map<String, dynamic> toJson() {
return {
'chat': chat,
'dineIn': dineIn,
'qrCodeGenerate': qrCodeGenerate,
'restaurantMobileApp': restaurantMobileApp,
};
}
}