k
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:flux/core/utils/extensions.dart';
|
||||
import 'package:flux/features/customers/models/customer_model.dart';
|
||||
import 'package:flux/features/tickets/models/shipment_document_model.dart';
|
||||
|
||||
/// Enum per il tipo di ticket
|
||||
enum TicketType {
|
||||
@@ -111,6 +112,7 @@ class TicketModel extends Equatable {
|
||||
final DateTime? estimatedDeliveryAt;
|
||||
final TicketResult? ticketResult;
|
||||
final String? resolutionNotes;
|
||||
final String? shippingDocumentId;
|
||||
final CustomerModel? customer;
|
||||
final String? targetModelName;
|
||||
final String? sourceModelName;
|
||||
@@ -119,6 +121,8 @@ class TicketModel extends Equatable {
|
||||
final String? assignedToId;
|
||||
final String? assignedToName;
|
||||
final String? includedAccessories;
|
||||
final ShipmentDocumentModel?
|
||||
shippingDocument; // Per tenere in memoria i dati del DDT associato al ticket
|
||||
|
||||
const TicketModel({
|
||||
this.id,
|
||||
@@ -148,6 +152,7 @@ class TicketModel extends Equatable {
|
||||
this.estimatedDeliveryAt,
|
||||
this.ticketResult,
|
||||
this.resolutionNotes,
|
||||
this.shippingDocumentId,
|
||||
this.customer,
|
||||
this.targetModelName,
|
||||
this.sourceModelName,
|
||||
@@ -156,6 +161,7 @@ class TicketModel extends Equatable {
|
||||
this.assignedToId,
|
||||
this.assignedToName,
|
||||
this.includedAccessories,
|
||||
this.shippingDocument,
|
||||
});
|
||||
|
||||
/// Factory per creare un ticket vuoto (utile per i form di creazione)
|
||||
@@ -200,6 +206,7 @@ class TicketModel extends Equatable {
|
||||
DateTime? estimatedDeliveryAt,
|
||||
TicketResult? ticketResult,
|
||||
String? resolutionNotes,
|
||||
String? shippingDocumentId,
|
||||
CustomerModel? customer,
|
||||
String? targetModelName,
|
||||
String? sourceModelName,
|
||||
@@ -208,6 +215,7 @@ class TicketModel extends Equatable {
|
||||
String? assignedToId,
|
||||
String? assignedToName,
|
||||
String? includedAccessories,
|
||||
ShipmentDocumentModel? shippingDocument,
|
||||
}) {
|
||||
return TicketModel(
|
||||
id: id ?? this.id,
|
||||
@@ -238,6 +246,7 @@ class TicketModel extends Equatable {
|
||||
estimatedDeliveryAt: estimatedDeliveryAt ?? this.estimatedDeliveryAt,
|
||||
ticketResult: ticketResult ?? this.ticketResult,
|
||||
resolutionNotes: resolutionNotes ?? this.resolutionNotes,
|
||||
shippingDocumentId: shippingDocumentId ?? this.shippingDocumentId,
|
||||
customer: customer ?? this.customer,
|
||||
targetModelName: targetModelName ?? this.targetModelName,
|
||||
sourceModelName: sourceModelName ?? this.sourceModelName,
|
||||
@@ -246,6 +255,7 @@ class TicketModel extends Equatable {
|
||||
assignedToId: assignedToId ?? this.assignedToId,
|
||||
assignedToName: assignedToName ?? this.assignedToName,
|
||||
includedAccessories: includedAccessories ?? this.includedAccessories,
|
||||
shippingDocument: shippingDocument ?? this.shippingDocument,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -288,6 +298,7 @@ class TicketModel extends Equatable {
|
||||
: null,
|
||||
ticketResult: TicketResult.fromString(map['ticket_result'] as String?),
|
||||
resolutionNotes: map['resolution_notes'] as String?,
|
||||
shippingDocumentId: map['shipping_document_id'] as String?,
|
||||
customer: map['customer'] != null
|
||||
? CustomerModel.fromMap(map['customer'] as Map<String, dynamic>)
|
||||
: null,
|
||||
@@ -300,6 +311,11 @@ class TicketModel extends Equatable {
|
||||
assignedToId: map['assigned_to_id'] as String?,
|
||||
assignedToName: (map['assigned_to']?['name'] as String?)?.myFormat(),
|
||||
includedAccessories: map['included_accessories'] as String?,
|
||||
shippingDocument: map['shipping_document'] != null
|
||||
? ShipmentDocumentModel.fromMap(
|
||||
map['shipping_document'] as Map<String, dynamic>,
|
||||
)
|
||||
: null,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -337,6 +353,7 @@ class TicketModel extends Equatable {
|
||||
if (ticketResult != null) 'ticket_result': ticketResult!.value,
|
||||
'resolution_notes': resolutionNotes,
|
||||
'included_accessories': includedAccessories,
|
||||
'shipping_document_id': shippingDocumentId,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -376,5 +393,7 @@ class TicketModel extends Equatable {
|
||||
createdByName,
|
||||
assignedToId,
|
||||
assignedToName,
|
||||
shippingDocumentId,
|
||||
shippingDocument,
|
||||
];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user