28 lines
618 B
Dart
28 lines
618 B
Dart
class PageResult<T> {
|
|
final List<T> data;
|
|
final int total;
|
|
final int page;
|
|
final int pageSize;
|
|
|
|
const PageResult({
|
|
required this.data,
|
|
required this.total,
|
|
required this.page,
|
|
required this.pageSize,
|
|
});
|
|
|
|
factory PageResult.fromJson(
|
|
Map<String, dynamic> json,
|
|
T Function(Map<String, dynamic>) fromJson,
|
|
) {
|
|
return PageResult(
|
|
data: ((json['data'] as List?) ?? [])
|
|
.map((e) => fromJson(e as Map<String, dynamic>))
|
|
.toList(),
|
|
total: json['total'] as int,
|
|
page: json['page'] as int,
|
|
pageSize: json['page_size'] as int,
|
|
);
|
|
}
|
|
}
|