From 12cf583b359f2f441f318a97df2fe6cf9bb64c45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9D=D0=B8=D0=BA=D0=B8=D1=82=D0=B0=20=D0=9F=D0=BE=D1=82?= =?UTF-8?q?=D0=B0=D0=BF=D0=BE=D0=B2?= Date: Fri, 13 Dec 2024 01:01:50 +0400 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=B3=D0=B5=D0=BD=D0=B5=D1=80=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BB=20=D0=BC=D0=B0=D0=BF=D0=BF=D0=B5?= =?UTF-8?q?=D1=80=D1=8B=20DTO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/data/dto/page_dto.dart | 17 ++++++++++------- lib/data/dto/page_dto.g.dart | 21 +++++++++++++++++++++ lib/data/dto/user_dto.dart | 2 ++ lib/data/dto/user_dto.g.dart | 21 +++++++++++++++++++++ lib/data/mappers/user_mapper.dart | 7 +++---- 5 files changed, 57 insertions(+), 11 deletions(-) create mode 100644 lib/data/dto/page_dto.g.dart create mode 100644 lib/data/dto/user_dto.g.dart diff --git a/lib/data/dto/page_dto.dart b/lib/data/dto/page_dto.dart index 250a153..466d4cb 100644 --- a/lib/data/dto/page_dto.dart +++ b/lib/data/dto/page_dto.dart @@ -1,16 +1,19 @@ import 'package:json_annotation/json_annotation.dart'; +import 'package:pmu/data/dto/user_dto.dart'; + +part 'page_dto.g.dart'; @JsonSerializable(createToJson: false) class PageDto { - final List items; - final int itemsCount; - final int totalItemsCount; - final int pageNumber; - final int itemsByPage; + final List? items; + final int? itemsCount; + final int? totalItemsCount; + final int? pageNumber; + final int? itemsByPage; final int? prevPageNumber; final int? nextPageNumber; - final int firstPageNumber; - final int lastPageNumber; + final int? firstPageNumber; + final int? lastPageNumber; const PageDto( {this.items, diff --git a/lib/data/dto/page_dto.g.dart b/lib/data/dto/page_dto.g.dart new file mode 100644 index 0000000..134b70f --- /dev/null +++ b/lib/data/dto/page_dto.g.dart @@ -0,0 +1,21 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'page_dto.dart'; + +// ************************************************************************** +// JsonSerializableGenerator +// ************************************************************************** + +PageDto _$PageDtoFromJson(Map json) => PageDto( + items: (json['items'] as List?) + ?.map((e) => UserDto.fromJson(e as Map)) + .toList(), + itemsCount: (json['itemsCount'] as num?)?.toInt(), + totalItemsCount: (json['totalItemsCount'] as num?)?.toInt(), + pageNumber: (json['pageNumber'] as num?)?.toInt(), + itemsByPage: (json['itemsByPage'] as num?)?.toInt(), + prevPageNumber: (json['prevPageNumber'] as num?)?.toInt(), + nextPageNumber: (json['nextPageNumber'] as num?)?.toInt(), + firstPageNumber: (json['firstPageNumber'] as num?)?.toInt(), + lastPageNumber: (json['lastPageNumber'] as num?)?.toInt(), + ); diff --git a/lib/data/dto/user_dto.dart b/lib/data/dto/user_dto.dart index 1014a4b..7d8bd25 100644 --- a/lib/data/dto/user_dto.dart +++ b/lib/data/dto/user_dto.dart @@ -1,5 +1,7 @@ import 'package:json_annotation/json_annotation.dart'; +part 'user_dto.g.dart'; + @JsonSerializable(createToJson: false) class UserDto { final int? id; diff --git a/lib/data/dto/user_dto.g.dart b/lib/data/dto/user_dto.g.dart new file mode 100644 index 0000000..635337f --- /dev/null +++ b/lib/data/dto/user_dto.g.dart @@ -0,0 +1,21 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'user_dto.dart'; + +// ************************************************************************** +// JsonSerializableGenerator +// ************************************************************************** + +UserDto _$UserDtoFromJson(Map json) => UserDto( + id: (json['id'] as num?)?.toInt(), + name: json['name'] as String?, + surname: json['surname'] as String?, + description: json['description'] as String?, + image: json['image'] as String?, + gender: json['gender'] as String?, + dateOfBirth: json['dateOfBirth'] as String?, + lat: (json['lat'] as num?)?.toDouble(), + lon: (json['lon'] as num?)?.toDouble(), + age: (json['age'] as num?)?.toInt(), + distance: (json['distance'] as num?)?.toDouble(), + ); diff --git a/lib/data/mappers/user_mapper.dart b/lib/data/mappers/user_mapper.dart index 01bfc36..a534764 100644 --- a/lib/data/mappers/user_mapper.dart +++ b/lib/data/mappers/user_mapper.dart @@ -1,8 +1,7 @@ -import 'package:pmu/data/dtos/user_dto.dart'; +import 'package:pmu/data/dto/user_dto.dart'; +import 'package:pmu/domain/card.dart'; -import '../../domain/card.dart'; - -extension UserDataDtoToModel on UserDataDto { +extension UserDtoToModel on UserDto { CardPostData toDomain() { const allowedExtensions = ['jpg', 'jpeg', 'gif'];