class ProjectModel { final String id; final String name; final String projectAddress; final String contactPerson; final DateTime startDate; final DateTime endDate; final int teamSize; final double completedWork; final double plannedWork; final String projectStatusId; final String? tenantId; ProjectModel({ required this.id, required this.name, required this.projectAddress, required this.contactPerson, required this.startDate, required this.endDate, required this.teamSize, required this.completedWork, required this.plannedWork, required this.projectStatusId, this.tenantId, }); // Factory method to create an instance of ProjectModel from a JSON object factory ProjectModel.fromJson(Map json) { return ProjectModel( id: json['id'], name: json['name'], projectAddress: json['projectAddress'], contactPerson: json['contactPerson'], startDate: DateTime.parse(json['startDate']), endDate: DateTime.parse(json['endDate']), teamSize: json['teamSize'], completedWork: json['completedWork'] != null ? (json['completedWork'] as num).toDouble() : 0.0, plannedWork: json['plannedWork'] != null ? (json['plannedWork'] as num).toDouble() : 0.0, projectStatusId: json['projectStatusId'], tenantId: json['tenantId'], ); } // Method to convert the ProjectModel instance back to a JSON object Map toJson() { return { 'id': id, 'name': name, 'projectAddress': projectAddress, 'contactPerson': contactPerson, 'startDate': startDate.toIso8601String(), 'endDate': endDate.toIso8601String(), 'teamSize': teamSize, 'completedWork': completedWork, 'plannedWork': plannedWork, 'projectStatusId': projectStatusId, 'tenantId': tenantId, }; } }