120 lines
2.7 KiB
Dart
120 lines
2.7 KiB
Dart
class PageableModel {
|
|
final List<dynamic> content;
|
|
final Pageable pageable;
|
|
final int totalPages;
|
|
final int totalElements;
|
|
final bool last;
|
|
final int size;
|
|
final int number;
|
|
final Sort sort;
|
|
final int numberOfElements;
|
|
final bool first;
|
|
final bool empty;
|
|
|
|
PageableModel({
|
|
required this.content,
|
|
required this.pageable,
|
|
required this.totalPages,
|
|
required this.totalElements,
|
|
required this.last,
|
|
required this.size,
|
|
required this.number,
|
|
required this.sort,
|
|
required this.numberOfElements,
|
|
required this.first,
|
|
required this.empty,
|
|
});
|
|
|
|
factory PageableModel.fromJson(Map<String, dynamic> json) {
|
|
return PageableModel(
|
|
content: json['content'] ?? [],
|
|
pageable: Pageable.fromJson(json['pageable']),
|
|
totalPages: json['totalPages'],
|
|
totalElements: json['totalElements'],
|
|
last: json['last'],
|
|
size: json['size'],
|
|
number: json['number'],
|
|
sort: Sort.fromJson(json['sort']),
|
|
numberOfElements: json['numberOfElements'],
|
|
first: json['first'],
|
|
empty: json['empty'],
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
'content': content,
|
|
'pageable': pageable.toJson(),
|
|
'totalPages': totalPages,
|
|
'totalElements': totalElements,
|
|
'last': last,
|
|
'size': size,
|
|
'number': number,
|
|
'sort': sort.toJson(),
|
|
'numberOfElements': numberOfElements,
|
|
'first': first,
|
|
'empty': empty,
|
|
};
|
|
}
|
|
}
|
|
|
|
class Pageable {
|
|
final int pageNumber;
|
|
final int pageSize;
|
|
final Sort sort;
|
|
final int offset;
|
|
final bool paged;
|
|
final bool unpaged;
|
|
|
|
Pageable({
|
|
required this.pageNumber,
|
|
required this.pageSize,
|
|
required this.sort,
|
|
required this.offset,
|
|
required this.paged,
|
|
required this.unpaged,
|
|
});
|
|
|
|
factory Pageable.fromJson(Map<String, dynamic> json) {
|
|
return Pageable(
|
|
pageNumber: json['pageNumber'],
|
|
pageSize: json['pageSize'],
|
|
sort: Sort.fromJson(json['sort']),
|
|
offset: json['offset'],
|
|
paged: json['paged'],
|
|
unpaged: json['unpaged'],
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
'pageNumber': pageNumber,
|
|
'pageSize': pageSize,
|
|
'sort': sort.toJson(),
|
|
'offset': offset,
|
|
'paged': paged,
|
|
'unpaged': unpaged,
|
|
};
|
|
}
|
|
}
|
|
|
|
class Sort {
|
|
final bool sorted;
|
|
final bool empty;
|
|
final bool unsorted;
|
|
|
|
Sort({required this.sorted, required this.empty, required this.unsorted});
|
|
|
|
factory Sort.fromJson(Map<String, dynamic> json) {
|
|
return Sort(
|
|
sorted: json['sorted'],
|
|
empty: json['empty'],
|
|
unsorted: json['unsorted'],
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {'sorted': sorted, 'empty': empty, 'unsorted': unsorted};
|
|
}
|
|
}
|