59 lines
1.5 KiB
C#
59 lines
1.5 KiB
C#
using Pannenkoekenhuis;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Strategy_Kassabon
|
|
{
|
|
/// <summary>
|
|
/// Een simpele pannenkoek klasse.
|
|
/// Een pannenkoek heeft een beschrijving en een prijs, die
|
|
/// beide read-only zijn en tijdens constructie worden vastgelegd.
|
|
///
|
|
/// In deze eerste versie zijn alle pannenkoeken nog van
|
|
/// hetzelfde type, en kunnen er nog geen ingredienten
|
|
/// worden toegevoegd.
|
|
///
|
|
/// In een volgende versie worden met het Decorator design pattern
|
|
/// wrappers voor deze basisklasse gemaakt om ingredienten toe
|
|
/// te kunnen voegen.
|
|
/// </summary>
|
|
public class Pannenkoek
|
|
{
|
|
public enum Status { NULL, VOORBEREIDEN, BAKKEN, SNIJDEN, VERPAKKEN }
|
|
public Status status;
|
|
|
|
public double Prijs { get; set; }
|
|
public string Beschrijving { get; }
|
|
|
|
public Pannenkoek(string beschrijving, double prijs)
|
|
{
|
|
Prijs = prijs;
|
|
Beschrijving = beschrijving;
|
|
this.status = Status.NULL;
|
|
}
|
|
|
|
internal void Verpakken()
|
|
{
|
|
status = Status.VERPAKKEN;
|
|
}
|
|
|
|
internal void Snijden()
|
|
{
|
|
status = Status.SNIJDEN;
|
|
}
|
|
|
|
internal void Bakken()
|
|
{
|
|
status = Status.BAKKEN;
|
|
}
|
|
|
|
internal void Voorbereiden()
|
|
{
|
|
status = Status.VOORBEREIDEN;
|
|
}
|
|
}
|
|
}
|