Order constructor

Order({
  1. required String orderId,
  2. required String customerId,
  3. required List<OrderItem> items,
  4. Subscription? subscription,
  5. required TimeSlot timeSlot,
  6. required DateTime createdAt,
})

Implementation

Order({
  required this.orderId,
  required this.customerId,
  required List<OrderItem> items,
  this.subscription,
  required this.timeSlot,
  required this.createdAt,
}) : items = List.unmodifiable(items),
     _status = OrderStatus.created {
  if (items.isEmpty) {
    throw ArgumentError("Order must contain at least one item");
  }
}