You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cloudsolutions-atoms/lib/models/module_with_submodules_mode...

67 lines
1.4 KiB
Dart

import 'package:test_sa/models/base.dart';
class ModuleWithSubModulesModel extends Base {
int? id;
String? name;
List<SubModuleModel>? subModules;
ModuleWithSubModulesModel({
this.id,
this.name,
this.subModules,
});
ModuleWithSubModulesModel.fromJson(Map<String, dynamic> json) {
id = json['id'];
name = json['name'];
if (json['subModules'] != null) {
subModules = <SubModuleModel>[];
json['subModules'].forEach((v) {
subModules!.add(SubModuleModel.fromJson(v));
});
}
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['id'] = id;
data['name'] = name;
if (subModules != null) {
data['subModules'] = subModules!.map((v) => v.toJson()).toList();
}
return data;
}
@override
String toString() => name ?? '';
}
class SubModuleModel extends Base {
int? id;
String? name;
String? mainTableName;
SubModuleModel({
this.id,
this.name,
this.mainTableName,
});
SubModuleModel.fromJson(Map<String, dynamic> json) {
id = json['id'];
name = json['name'];
mainTableName = json['mainTableName'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['id'] = id;
data['name'] = name;
data['mainTableName'] = mainTableName;
return data;
}
@override
String toString() => name ?? '';
}