PMU_2024/lib/data/mappers/news_mapper.dart

40 lines
1.1 KiB
Dart
Raw Normal View History

2024-09-25 15:53:40 +04:00
import 'package:pmu/data/dtos/news_dto.dart';
import 'package:pmu/domain/models/card.dart';
import 'package:pmu/domain/models/home.dart';
2024-12-20 11:40:46 +04:00
import 'package:intl/intl.dart';
import 'package:http/http.dart' as http;
import 'package:uri/uri.dart';
2024-10-15 23:16:39 +04:00
int _id = 0;
2024-09-25 15:53:40 +04:00
extension NewDataDtoToModel on NewAttributesDataDto {
2024-09-25 15:53:40 +04:00
CardData toDomain() => CardData(
text: title ?? 'UNKNOWN',
2024-12-20 11:40:46 +04:00
imageUrl: imagelink ?? 'https://smart.mag-river.ru/uploads/goods/img/445-360/fit/no-image.png',
descText: description ?? 'NOTHING',
id: id,
2024-12-20 11:40:46 +04:00
date: toNormalDate(date) ?? 'UNKNOWN',
);
}
2024-10-15 16:57:07 +04:00
extension NewsDtoToModel on NewsDto {
HomeData toDomain() => HomeData(
data: data?.map((e) => e.toDomain()).toList(),
2024-12-20 11:40:46 +04:00
// nextPage: meta?.pagination?.next,
);
}
2024-10-15 23:16:39 +04:00
int _getId(){
_id+=1;
return _id;
2024-12-20 11:40:46 +04:00
}
String toNormalDate(String date){
// Парсинг строки в объект DateTime
DateTime dateTime = DateTime.parse(date);
// Форматирование даты в нужный формат
String formattedDate = DateFormat('dd.MM.yyyy').format(dateTime);
return formattedDate;
}