46 lines
1.1 KiB
Dart
46 lines
1.1 KiB
Dart
import 'package:equatable/equatable.dart';
|
|
|
|
class CustomerFileModel extends Equatable {
|
|
final int? id;
|
|
final String customerId; // Riferimento UUID
|
|
final String name;
|
|
final String url;
|
|
final String extension;
|
|
final DateTime? createdAt;
|
|
|
|
const CustomerFileModel({
|
|
this.id,
|
|
required this.customerId,
|
|
required this.name,
|
|
required this.url,
|
|
required this.extension,
|
|
this.createdAt,
|
|
});
|
|
|
|
factory CustomerFileModel.fromJson(Map<String, dynamic> json) {
|
|
return CustomerFileModel(
|
|
id: json['id'],
|
|
customerId: json['customer_id'],
|
|
name: json['name'],
|
|
url: json['url'],
|
|
extension: json['extension'] ?? '',
|
|
createdAt: json['created_at'] != null
|
|
? DateTime.parse(json['created_at'])
|
|
: null,
|
|
);
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
if (id != null) 'id': id,
|
|
'customer_id': customerId,
|
|
'name': name,
|
|
'url': url,
|
|
'extension': extension,
|
|
};
|
|
}
|
|
|
|
@override
|
|
List<Object?> get props => [id, customerId, name, url, extension, createdAt];
|
|
}
|