public void ConfirmOrder(Guid id) {
var order = _repo.GetById(id);
if (order.Status != Draft)
throw new Exception();
order.Status = Confirmed;
_repo.Save(order);
}
public class Order {
public OrderStatus Status { get; private set; }
public void Confirm() {
if (Status != Draft)
throw new Exception();
Status = Confirmed;
}
}
/src
/OrderManagement
/Domain
/Application
/Infrastructure
/Api
/PaymentManagement
...