static void Main(string[] args) { var reforma = new Orcamento(500); Console.WriteLine("Init: " + reforma.Valor); reforma.AplicaDescontoExtra(); Console.WriteLine("AplicaDescontoExtra: " + reforma.Valor); reforma.Aprova(); reforma.AplicaDescontoExtra(); Console.WriteLine("AplicaDescontoExtra Aprova: " + reforma.Valor); reforma.Finaliza(); }
public void AplicaDescontoExtra(Orcamento orcamento) { throw new Exception("Orçamentos repovados não recebem descontos"); }
public void Finaliza(Orcamento orcamento) { orcamento.EstadoAtual = new Finalizado(); }
public void Reprova(Orcamento orcamento) { throw new Exception("Orçamento não pode ser repovado agora"); }
public void Finaliza(Orcamento orcamento) { throw new Exception("Orçamento não pode ser finalizado agora"); }
public void Aprova(Orcamento orcamento) { throw new Exception("Orçamente já esta em estado de aprovado"); }
public void Reprova(Orcamento orcamento) { orcamento.EstadoAtual = new Reprovado(); }
public void AplicaDescontoExtra(Orcamento orcamento) { orcamento.Valor -= orcamento.Valor*0.02; }
public void Finaliza(Orcamento orcamento) { throw new Exception("Orçamento em aprovação não pode ir para finalizado direto."); }