public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new System.InvalidOperationException("Não é possível terminar um pregão ser ele ser iniciado"); } Ganhador = _avaliador.Avalia(this); Estado = EstadoLeilao.LeilaoFinalizado; }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new System.InvalidOperationException("Leilão não iniciado"); } Ganhador = _avaliador.Avalia(this); Estado = EstadoLeilao.LeilaoFinalizado; }
public void TerminarPregao() { if (Estado != EstadoLeilao.EmAndamento) { throw new InvalidOperationException("Não é possível terminar o leilão sem ter iniciado."); } Ganhador = _modalidadeLeilao.DefinirGanhador(this); Estado = EstadoLeilao.Finalizado; }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new System.InvalidOperationException("Não é possível terminar o pregão sem ele ter começado. Use o método IniciaPregao() para corrigir"); } Ganhador = _avaliador.Avalia(this); Estado = EstadoLeilao.LeilaoFinalizado; }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new System.InvalidOperationException("Não é possive fechar pregão sem abri-lo posteriormente [IniciaPregao()]"); } Ganhador = _avaliador.Avalia(this); //this = LeilaoOnline.Core.Leilao Estado = EstadoLeilao.LeilaoFinalizado; }
public void Finalizar() { if (Estado != EstadoLeilao.Em_Andamento) { throw new InvalidOperationException("Não é possível terminar o pregão sem que ele tenha começado. Para isso, utilize o método Iniciar()"); } Ganhador = _avaliador.Avalia(this); Estado = EstadoLeilao.Finalizado; }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new InvalidOperationException("Não é possivel terminar o pregao sem que ele tenha começado. Para isso inicie o metodo iniciaPregao"); } // modalidade oferta superior mais proxima Ganhador = _avaliador.Avalia(this); Estado = EstadoLeilao.LeilaoFinalizado; }
public void Terminar() { if (Estado != EstadoLeilao.EmAndamento) { throw new InvalidOperationException("Não é possível terminar o leilão sem antes iniciá-lo."); } Estado = EstadoLeilao.Finalizado; _modalidade.Avaliar(this); }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new InvalidOperationException("Não é possível terminar o pregão sem que tenha começado. Para isso utilize o método inicia pregão."); } Ganhador = Lances .DefaultIfEmpty(new Lance(null, 0)) .OrderBy(l => l.Valor).LastOrDefault(); Estado = EstadoLeilao.LeilaoFinalizado; }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new InvalidOperationException(); } if (Lances.Any()) { Ganhador = Lances.OrderBy(x => x.Valor).Last(); } Estado = EstadoLeilao.LeilaoFechado; }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new System .InvalidOperationException( "Não é possível terminar o pregão sem que ele tenha começado.Para isso, Utilize o método IniciarPregao()" ); } Ganhador = _avaliador.Avalia(this); Estado = EstadoLeilao.LeilaoFinalizado; }
public void TerminaPregao() { if (Estado != EstadoLeilao.LeilaoEmAndamento) { throw new InvalidOperationException("Não é possível terminar sem que ele tenha começado."); } Ganhador = Lances .DefaultIfEmpty(new Lance(null, 0)) .OrderBy(x => x.Valor) .LastOrDefault(); Estado = EstadoLeilao.LeilaoFinalizado; }
public static string ParaTexto(this EstadoLeilao estado) { switch (estado) { case EstadoLeilao.LeilaoAntesDoPregao: return("Pregão não iniciado"); case EstadoLeilao.LeilaoEmAndamento: return("Pregão em andamento"); case EstadoLeilao.LeilaoFinalizado: return("Pregão encerrado"); default: return("Estado não encontrado"); } }
public LeilaoException CriarLeilaoExceptionParaTerminaPregao(EstadoLeilao estadoLeilao) { switch (estadoLeilao) { case EstadoLeilao.Iniciado: { return(new LeilaoException("Pregão ainda não foi iniciado!")); } case EstadoLeilao.Finalizado: { return(new LeilaoException("Pregão já finalizado!")); } default: throw new LeilaoException("Estado de leilão não existente!"); } }
public void TerminarPregao() { if (this.Estado != EstadoLeilao.LeilaoEmAndamento) { throw new InvalidOperationException(); } if (ValorBase > 0) { Vencedor = Lances.DefaultIfEmpty(new Lance(new Cliente("", new Leilao("", 0, new Bem("", ""))), 0)) .Where(x => x.Valor >= ValorBase) .OrderBy(x => x.Valor).FirstOrDefault(); } else { Vencedor = Lances.DefaultIfEmpty(new Lance(new Cliente("", new Leilao("", 0, new Bem("", ""))), 0)) .OrderBy(x => x.Valor).LastOrDefault(); } this.Estado = EstadoLeilao.LeilaoFinalizado; }
public LeilaoException CriarLeilaoExceptionParaRecebeLance(EstadoLeilao estadoLeilao) { switch (estadoLeilao) { case EstadoLeilao.Iniciado: { return(new LeilaoException("Pregão ainda não foi iniciado! Impossível receber lances!")); } case EstadoLeilao.Finalizado: { return(new LeilaoException("Pregão já finalizado! Impossível receber lances!")); } case EstadoLeilao.EmAndamento: { return(new LeilaoException("Houve algum erro ao receber lance!")); } default: throw new LeilaoException("Estado de leilão não existente!"); } }
public Leilao(string peca) { Peca = peca; _lances = new List <Lance>(); Estado = EstadoLeilao.LeilaoAntesDoPregao; }
public void Iniciar() { Estado = EstadoLeilao.Em_Andamento; }
public void IniciaPregao() { Estado = EstadoLeilao.LeilaoEmAndamento; }
public void IniciarPregao() => this.Estado = EstadoLeilao.LeilaoEmAndamento;
public Leilao(string peca) { Peca = peca; _lances = new List <Lance>(); Estado = EstadoLeilao.LeilaoEmAndamento; }
public void TerminaPregao() { Ganhador = Lances.DefaultIfEmpty(new Lance(null, 0)).OrderBy(l => l.Valor).LastOrDefault(); Estado = EstadoLeilao.LeilaoFinalizado; }