Map<String, dynamic> toJson() => {'shift': shift.toJson(), 'movements': [for (final m in movements) m.toJson()], 'receipt': receipt.toJson()};