import 'package:freezed_annotation/freezed_annotation.dart'; part 'sync_promo_dto.freezed.dart'; part 'sync_promo_dto.g.dart'; @freezed sealed class SyncPromoDto with _$SyncPromoDto { const factory SyncPromoDto({ int? progressivo, int? tipoPromozione, String? descrizione, String? dataInizio, String? dataFine, double? limiteQta, double? quantitaOmaggio, double? limiteImporto, String? stato, int? priorita, int? codice, ItemDto? articoloPromo, ItemDto? articoloOmaggio, ListinoDto? listinoOmaggio, ScontoDto? sconto, @Default([]) List promozioneArticoli, @Default([]) List promozioneListini, @Default([]) List promozioneOmaggio, }) = _SyncPromoDto; factory SyncPromoDto.fromJson(Map json) => _$SyncPromoDtoFromJson(json); } @freezed sealed class SyncPromoArtDto with _$SyncPromoArtDto { const factory SyncPromoArtDto({ PromoArticoloKey? promozioneArticoloKey, ItemDto? articolo, }) = _SyncPromoArtDto; factory SyncPromoArtDto.fromJson(Map json) => _$SyncPromoArtDtoFromJson(json); } @freezed sealed class SyncPromoListiniDto with _$SyncPromoListiniDto { const factory SyncPromoListiniDto({ PromoListinoKey? promozioneListinoKey, }) = _SyncPromoListiniDto; factory SyncPromoListiniDto.fromJson(Map json) => _$SyncPromoListiniDtoFromJson(json); } @freezed sealed class SyncPromoOmaggioDto with _$SyncPromoOmaggioDto { const factory SyncPromoOmaggioDto({ PromoOmaggioKey? promozioneOmaggioKey, ItemDto? articolo, double? quantita, }) = _SyncPromoOmaggioDto; factory SyncPromoOmaggioDto.fromJson(Map json) => _$SyncPromoOmaggioDtoFromJson(json); } @freezed sealed class PromoArticoloKey with _$PromoArticoloKey { const factory PromoArticoloKey({ int? progressivo, int? riga, }) = _PromoArticoloKey; factory PromoArticoloKey.fromJson(Map json) => _$PromoArticoloKeyFromJson(json); } @freezed sealed class PromoListinoKey with _$PromoListinoKey { const factory PromoListinoKey({ int? progressivo, int? idListino, }) = _PromoListinoKey; factory PromoListinoKey.fromJson(Map json) => _$PromoListinoKeyFromJson(json); } @freezed sealed class PromoOmaggioKey with _$PromoOmaggioKey { const factory PromoOmaggioKey({ int? progressivo, int? riga, }) = _PromoOmaggioKey; factory PromoOmaggioKey.fromJson(Map json) => _$PromoOmaggioKeyFromJson(json); } @freezed sealed class ItemDto with _$ItemDto { const factory ItemDto({ int? idArticolo, String? codArticolo, String? descrizione, double? prezzo, String? unitaMisura, String? fileFoto, }) = _ItemDto; factory ItemDto.fromJson(Map json) => _$ItemDtoFromJson(json); } @freezed sealed class ListinoDto with _$ListinoDto { const factory ListinoDto({ int? idListino, String? codListino, String? descrizione, }) = _ListinoDto; factory ListinoDto.fromJson(Map json) => _$ListinoDtoFromJson(json); } @freezed sealed class ScontoDto with _$ScontoDto { const factory ScontoDto({ int? idSconto, String? codSconto, String? descrizione, double? sconto1, double? sconto2, double? sconto3, double? sconto4, double? sconto5, }) = _ScontoDto; factory ScontoDto.fromJson(Map json) => _$ScontoDtoFromJson(json); }